<?php

// scoper-autoload.php @generated by PhpScoper

$loader = (static function () {
    // Backup the autoloaded Composer files
    $existingComposerAutoloadFiles = isset($GLOBALS['__composer_autoload_files']) ? $GLOBALS['__composer_autoload_files'] : [];

    $loader = require_once __DIR__.'/autoload.php';
    // Ensure InstalledVersions is available
    $installedVersionsPath = __DIR__.'/composer/InstalledVersions.php';
    if (file_exists($installedVersionsPath)) require_once $installedVersionsPath;

    // Restore the backup and ensure the excluded files are properly marked as loaded
    $GLOBALS['__composer_autoload_files'] = \array_merge(
        $existingComposerAutoloadFiles,
        \array_fill_keys([], true)
    );

    return $loader;
})();

// Class aliases. For more information see:
// https://github.com/humbug/php-scoper/blob/master/docs/further-reading.md#class-aliases
if (!function_exists('humbug_phpscoper_expose_class')) {
    function humbug_phpscoper_expose_class($exposed, $prefixed) {
        if (!class_exists($exposed, false) && !interface_exists($exposed, false) && !trait_exists($exposed, false)) {
            spl_autoload_call($prefixed);
        }
    }
}
humbug_phpscoper_expose_class('JsonException', 'CheckoutWC\JsonException');
humbug_phpscoper_expose_class('PhpToken', 'CheckoutWC\PhpToken');
humbug_phpscoper_expose_class('ValueError', 'CheckoutWC\ValueError');
humbug_phpscoper_expose_class('Attribute', 'CheckoutWC\Attribute');
humbug_phpscoper_expose_class('UnhandledMatchError', 'CheckoutWC\UnhandledMatchError');
humbug_phpscoper_expose_class('Stringable', 'CheckoutWC\Stringable');

// Function aliases. For more information see:
// https://github.com/humbug/php-scoper/blob/master/docs/further-reading.md#function-aliases
if (!function_exists('array_key_first')) { function array_key_first() { return \CheckoutWC\array_key_first(...func_get_args()); } }
if (!function_exists('array_key_last')) { function array_key_last() { return \CheckoutWC\array_key_last(...func_get_args()); } }
if (!function_exists('fdiv')) { function fdiv() { return \CheckoutWC\fdiv(...func_get_args()); } }
if (!function_exists('get_debug_type')) { function get_debug_type() { return \CheckoutWC\get_debug_type(...func_get_args()); } }
if (!function_exists('get_resource_id')) { function get_resource_id() { return \CheckoutWC\get_resource_id(...func_get_args()); } }
if (!function_exists('hrtime')) { function hrtime() { return \CheckoutWC\hrtime(...func_get_args()); } }
if (!function_exists('is_countable')) { function is_countable() { return \CheckoutWC\is_countable(...func_get_args()); } }
if (!function_exists('preg_last_error_msg')) { function preg_last_error_msg() { return \CheckoutWC\preg_last_error_msg(...func_get_args()); } }
if (!function_exists('str_contains')) { function str_contains() { return \CheckoutWC\str_contains(...func_get_args()); } }
if (!function_exists('str_ends_with')) { function str_ends_with() { return \CheckoutWC\str_ends_with(...func_get_args()); } }
if (!function_exists('str_starts_with')) { function str_starts_with() { return \CheckoutWC\str_starts_with(...func_get_args()); } }

return $loader;
