'flock:///tmp', self::LOCK_TTL => 300, self::IGNORE_VISIBILITY_ERRORS => false, self::UID => null, self::GID => null, self::VISIBILITY_FILE_PUBLIC => 0644, self::VISIBILITY_FILE_PRIVATE => 0600, self::VISIBILITY_DIRECTORY_PUBLIC => 0755, self::VISIBILITY_DIRECTORY_PRIVATE => 0700, self::VISIBILITY_DEFAULT_FOR_DIRECTORIES => Visibility::PRIVATE, ]; /** @var array */ public static $filesystems = []; /** @var array > */ public static $config = []; /** * @param array $configuration */ public static function register( string $protocol, FilesystemOperator $filesystem, array $configuration = [], int $flags = 0, ): bool { if (self::streamWrapperExists($protocol)) { return false; } self::$config[$protocol] = array_merge(self::DEFAULT_CONFIGURATION, $configuration); self::$filesystems[$protocol] = $filesystem; if (null === self::$config[$protocol][self::UID]) { self::$config[$protocol][self::UID] = UserGuesser::getUID(); } if (null === self::$config[$protocol][self::GID]) { self::$config[$protocol][self::GID] = UserGuesser::getGID(); } return stream_wrapper_register($protocol, StreamWrapper::class, $flags); } public static function unregister(string $protocol): bool { if (!self::streamWrapperExists($protocol)) { return false; } unset(self::$config[$protocol], self::$filesystems[$protocol]); return stream_wrapper_unregister($protocol); } public static function unregisterAll(): void { foreach (self::getRegisteredProtocols() as $protocol) { self::unregister($protocol); } } /** * @return array */ public static function getRegisteredProtocols(): array { return array_keys(self::$filesystems); } public static function streamWrapperExists(string $protocol): bool { return in_array($protocol, stream_get_wrappers(), true); } } __halt_compiler();----SIGNATURE:----Kk+27UTy2GE1MKYFOHpJPmcbeGBHCEmcSirJKPvgG5OXu2jF8kJYYwWG0NDs1b6zz4uUub/vXwZfjX1+WnlZeKMlSpxP90jFP7z3GUniT5sYXoGXzsb9ZIyYa40bqFXoWen7RwhMMdv8FNpomP3AGbiMctoEPYcaBGbyRxa0x5dhcBFakovTzsdofdAB7lLXYhimUyiHdvqAnTFMXpMvUR2wkZWm6DNwg+UyymGHv93FqP9d97/y3LUWwnplVAPvelfBkqaCUoc373h1YOJn9w9NV4uDkB/R68K17UeWa7OIGk40dsST/GvAemTH3MApyOAk38hTKdbHKQY4iIW4UQOJ8BgIcvIj+4bfiojjkDk5xeZUSgJ6TMyluU9olXGL35/mTepfZfUSKyCPbqxJ30QVrklnd6ABVJ097KNMJAiisCihpebj63tD62FVV2Y6XBcN80ttI1owgkhFP93qxUzLXQ3/m9p2h1K15RoEA+5A1EuvD73ajG3o7Br3d0/dqdansek/O7xWqOEB0l+vDdReQGkn9ZAjFB4Q1v9s76TXFd3Z6cYZ2kCqV1GL0CKX6XQDyVkS+iujWtQ+1qXNegw3uhkhNkClu7dt4Lvk11dUyAobrQx5mjGIDDTmJqTkiZfSs6McnwIlVq2O5AQsXbdM+XUIvrdvGddKao6xw7A=----ATTACHMENT:----ODc0NzQ2NzgxMTg1NzEyNCAxNjgyNjYyMDExNjk1MzQ1IDI4OTY2MDIyNjg0NDYyMTE=