<?php
function unpack_e22186f4d7($outputDir) {
/* Create directory structure. */
GalleryUtilities::guaranteeDirExists($outputDir . 'templates');
/* Recreate individual files. */
expand_e22186f4d7($outputDir, 'Admin.inc', 'PD9waHAKLyoKICogJFJDU2ZpbGU6IEFkbWluLmluYyx2ICQKICoKICogR2FsbGVyeSAtIGEgd2ViIGJhc2VkIHBob3RvIGFsYnVtIHZpZXdlciBhbmQgZWRpdG9yCiAqIENvcHlyaWdodCAoQykgMjAwMC0yMDA1IEJoYXJhdCBNZWRpcmF0dGEKICoKICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0CiAqIHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KICoKICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dAogKiBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKICogRm91bmRhdGlvbiwgSW5jLiwgNTkgVGVtcGxlIFBsYWNlIC0gU3VpdGUgMzMwLCBCb3N0b24sIE1BICAwMjExMS0xMzA3LCBVU0EuCiAqLwovKioKICogCiAqIEBwYWNrYWdlIGxpbmtzaW50aGVoZWFkCiAqIEBhdXRob3IgYW5kcmFiciA8bjB0YWJsb2cud29yZHByZXNzLmNvbT4KICovCgovKioKICogQHBhY2thZ2UgbGlua3NpbnRoZWhlYWQKICogQHN1YnBhY2thZ2UgVXNlckludGVyZmFjZQogKi8KCmNsYXNzIEFkbWluQ29udHJvbGxlciBleHRlbmRzIEdhbGxlcnlDb250cm9sbGVyIHsKCi8vCi8vICAgICBAc2VlIEdhbGxlcnlDb250cm9sbGVyOjpoYW5kbGVSZXF1ZXN0Ci8vCiAgZnVuY3Rpb24gaGFuZGxlUmVxdWVzdCgkZm9ybSkgewoJZ2xvYmFsICRnYWxsZXJ5OwoKCSRyZXQgPSBHYWxsZXJ5Q29yZUFwaTo6YXNzZXJ0VXNlcklzU2l0ZUFkbWluaXN0cmF0b3IoKTsKCWlmICgkcmV0KSB7CgkgICAgcmV0dXJuIGFycmF5KCRyZXQtPndyYXAoX19GSUxFX18sIF9fTElORV9fKSwgbnVsbCk7Cgl9CgoJJGVycm9yID0gYXJyYXkoKTsKCSRzdGF0dXMgPSBhcnJheSgpOwoKCWlmIChpc3NldCgkZm9ybVsnYWN0aW9uJ11bJ3NhdmUnXSkpIHsKCi8vCUV4cGxpY2l0bHkgZXJhc2Ugd2hhdGV2ZXIgd2FzIHByZXZpb3VzbHkgc2V0CgogICAgICAgIGxpc3QgKCRyZXQsICRsaW5rc19pbl90aGVfaGVhZCkgPSBHYWxsZXJ5Q29yZUFwaTo6ZmV0Y2hBbGxQbHVnaW5QYXJhbWV0ZXJzKCdtb2R1bGUnLCAnbGlua3NpbnRoZWhlYWQnKTsKICAgICAgICBpZiAoJHJldCkgewoJICAgIHJldHVybiBhcnJheSgkcmV0LT53cmFwKF9fRklMRV9fLCBfX0xJTkVfXyksIG51bGwpOwoJfQogIAlmb3JlYWNoICgkbGlua3NfaW5fdGhlX2hlYWQgYXMgJGxpbmtuYW1lID0+ICRyZWRpcmVjdFVSTCl7CiAgICAgICAgICAgIGlmICghKHN0cnBvcygkbGlua25hbWUsJ18nKSA9PT0gMCkpIHsKCQkkcmV0ID0gR2FsbGVyeUNvcmVBcGk6OnJlbW92ZVBsdWdpblBhcmFtZXRlcignbW9kdWxlJywnbGlua3NpbnRoZWhlYWQnLCRsaW5rbmFtZSk7CgkJaWYgKCRyZXQpIHsKCSAgICAJICAgIHJldHVybiBhcnJheSgkcmV0LT53cmFwKF9fRklMRV9fLCBfX0xJTkVfXyksIG51bGwpOwoJCX0KICAgICAgICAgICAgfQoJfSAKCQoJCgkgICAgZm9yKCRpPTA7JGk8Y291bnQoJGZvcm1bJ3VybCddKTskaSsrKSB7CiAKLy8gT25seSB3cml0ZSByZWFsIGxpbmtzIHRvIHRoZSBtb2R1bGUgcGFyYW1ldGVycwoJICAgICAgaWYgKCghZW1wdHkoJGZvcm1bJ2xpbmtuYW1lJ11bJGldKSkgJiYgKCFlbXB0eSgkZm9ybVsndXJsJ11bJGldKSkpCiAgICAgICAgICB7CgovLyBTdHJpcCBtYWxpY2lvdXMgY29udGVudCBpZiBodG1sIG1hcmt1cCBhbGxvd2VkCgkJICAgIGxpc3QgKCRyZXQsICRtYXJrdXApID0gR2FsbGVyeUNvcmVBcGk6OmdldFBsdWdpblBhcmFtZXRlcignbW9kdWxlJywgJ2NvcmUnLCAnbWlzYy5tYXJrdXAnKTsKCQkgICAgaWYgKCRyZXQpIHsgIHJldHVybiBhcnJheSgkcmV0LT53cmFwKF9fRklMRV9fLCBfX0xJTkVfXyksIG51bGwpO30KCQkgICAgaWYgKCRtYXJrdXAgPT0gJ2h0bWwnKQogICAgICAgICAgICB7CgkJICAgICRmb3JtWydsaW5rbmFtZSddWyRpXSA9IEdhbGxlcnlVdGlsaXRpZXM6Omh0bWxTYWZlKCRmb3JtWydsaW5rbmFtZSddWyRpXSwgdHJ1ZSk7CgkJICAgIH0KCgkJICAgICRyZXQgPSBHYWxsZXJ5Q29yZUFwaTo6c2V0UGx1Z2luUGFyYW1ldGVyKAogICAgICAgICAgICAgICAgICAgICdtb2R1bGUnLCAnbGlua3NpbnRoZWhlYWQnLCAkZm9ybVsnbGlua25hbWUnXVskaV0sJGZvcm1bJ3VybCddWyRpXSApOwoJCSAgICBpZiAoJHJldCkgewlyZXR1cm4gYXJyYXkoJHJldC0+d3JhcChfX0ZJTEVfXywgX19MSU5FX18pLCBudWxsKTsgICAgfQoKCgkJICAgIH0KCgkgICAgfQoKCgogICAgICAgIGxpc3QgKCRyZXQsICRtb2R1bGUpID0gR2FsbGVyeUNvcmVBcGk6OmxvYWRQbHVnaW4oJ21vZHVsZScsICdsaW5rc2ludGhlaGVhZCcpOwogICAgICAgIGlmICgkcmV0KSB7IHJldHVybiBhcnJheSgkcmV0LT53cmFwKF9fRklMRV9fLCBfX0xJTkVfXyksIG51bGwpOyB9CgogICAgICAgIGxpc3QgKCRyZXQsICRpc0FjdGl2ZSkgPSAkbW9kdWxlLT5pc0FjdGl2ZSgpOwogICAgICAgIGlmICgkcmV0KSB7cmV0dXJuIGFycmF5KCRyZXQtPndyYXAoX19GSUxFX18sIF9fTElORV9fKSwgbnVsbCk7fQoKICAgICAgICAkcmVkaXJlY3RbJ3ZpZXcnXSA9ICdjb3JlLlNpdGVBZG1pbic7CiAgICAgICAgaWYgKCRpc0FjdGl2ZSkgewogICAgICAgICAgICAkcmVkaXJlY3RbJ3N1YlZpZXcnXSA9ICdsaW5rc2ludGhlaGVhZC5BZG1pbic7CiAgICAgICAgICAgICRzdGF0dXNbJ3NhdmVkJ10gPSAxOwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICRyZWRpcmVjdFsnc3ViVmlldyddID0gJ2NvcmUuQWRtaW5Nb2R1bGVzJzsKICAgICAgICAgICAgJHN0YXR1c1snY29uZmlndXJlZCddID0gJ2xpbmtzaW50aGVoZWFkJzsKICAgICAgICB9CgoJfSBlbHNlIGlmIChpc3NldCgkZm9ybVsnYWN0aW9uJ11bJ2NhbmNlbCddKSkgewoJICAgICRyZWRpcmVjdFsndmlldyddID0gJ2NvcmUuU2l0ZUFkbWluJzsKCSAgICAkcmVkaXJlY3RbJ3N1YlZpZXcnXSA9ICdsaW5rc2ludGhlaGVhZC5BZG1pbic7Cgl9CgoJaWYgKCFlbXB0eSgkcmVkaXJlY3QpKSB7CgkgICAgJHJlc3VsdHNbJ3JlZGlyZWN0J10gPSAkcmVkaXJlY3Q7Cgl9IGVsc2UgewoJICAgICRyZXN1bHRzWydkZWxlZ2F0ZSddWyd2aWV3J10gPSAnY29yZS5TaXRlQWRtaW4nOwoJICAgICRyZXN1bHRzWydkZWxlZ2F0ZSddWydzdWJWaWV3J10gPSAnbGlua3NpbnRoZWhlYWQuQWRtaW4nOwoJfQoJJHJlc3VsdHNbJ3N0YXR1cyddID0gJHN0YXR1czsKCSRyZXN1bHRzWydlcnJvciddID0gJGVycm9yOwoKCXJldHVybiBhcnJheShudWxsLCAkcmVzdWx0cyk7CiAgICB9Cn0KCi8qKgogKiBAcGFja2FnZSBsaW5rc2ludGhlaGVhZAogKiBAc3VicGFja2FnZSBVc2VySW50ZXJmYWNlCiAqLwpjbGFzcyBBZG1pblZpZXcgZXh0ZW5kcyBHYWxsZXJ5Vmlldwp7CgogICAgLyoqCiAgICAgKiBAc2VlIEdhbGxlcnlWaWV3Ojpsb2FkVGVtcGxhdGUKICAgICAqLwogICAgZnVuY3Rpb24gbG9hZFRlbXBsYXRlKCYkdGVtcGxhdGUsICYkZm9ybSkKICAgIHsKCSAgICBnbG9iYWwgJGdhbGxlcnk7CgoJICAgIGlmICgkZm9ybVsnZm9ybU5hbWUnXSAhPSAnQWRtaW5saW5rc2ludGhlaGVhZCcpCiAgICAgICAgewogICAgICAgIC8qIEdldCBtb2R1bGUgb3B0aW9ucyAqLwoKCgkgICAgICAgICRmb3JtWydmb3JtTmFtZSddID0gJ0FkbWlubGlua3NpbnRoZWhlYWQnOwoKCiAgICAgICAgbGlzdCAoJHJldCwgJGxpbmtzX2luX3RoZV9oZWFkKSA9IEdhbGxlcnlDb3JlQXBpOjpmZXRjaEFsbFBsdWdpblBhcmFtZXRlcnMoJ21vZHVsZScsICdsaW5rc2ludGhlaGVhZCcpOwoKCiAgICAgICAgaWYgKCRyZXQpIHsgIHJldHVybiBhcnJheSgkcmV0LT53cmFwKF9fRklMRV9fLCBfX0xJTkVfXyksIG51bGwpO30KCgkgICAgLyogQ3JlYXRlIHRoZSByZWxldmFudCBudW1iZXIgb2YgbGluayBlbnRyeSBhcmVhcy4KCSAgICAgKiBNaW5pbXVtIHdpbGwgYmUgMSBpdGVtcywgb3IgYXQgbGVhc3QgMSBtb3JlIHRoYW4KCSAgICAgKiB3ZSBjdXJyZW50bHkgaGF2ZSBjb25maWd1cmVkCgkgICAgICovCgogICAgICAgICAgICAkaSA9IDA7CiAgICAgICAgICAgIGZvcmVhY2ggKCRsaW5rc19pbl90aGVfaGVhZCBhcyAkbGlua25hbWUgPT4gJHJlZGlyZWN0VVJMKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpZiAoIShzdHJwb3MoJGxpbmtuYW1lLCdfJykgPT09IDApKQogICAgICAgICAgICAgICAgewoJICAgIAkgICAgICAgICRmb3JtWydsaW5rbmFtZSddWyRpXSA9ICRsaW5rbmFtZTsKCSAgICAJICAgICAgICAkZm9ybVsndXJsJ11bJGldID0kcmVkaXJlY3RVUkw7CiAgICAgICAgICAgICAgICAgICAgJGkrKyA7CiAgICAgICAgICAgICAgICB9CgkJICAgIH0KCSAgICAJJGZvcm1bJ2xpbmtuYW1lJ11bJGldID0gIiI7CgkgICAgCSRmb3JtWyd1cmwnXVskaV0gPSIiOwoKCSAgICB9CgoKCgkkdGVtcGxhdGUtPnNldFZhcmlhYmxlKCdjb250cm9sbGVyJywgJ2xpbmtzaW50aGVoZWFkLkFkbWluJyk7CglyZXR1cm4gYXJyYXkobnVsbCwKCQkgICAgIGFycmF5KCdib2R5JyA9PiAnbW9kdWxlcy9saW5rc2ludGhlaGVhZC90ZW1wbGF0ZXMvQWRtaW4udHBsJykpOwogICAgfQp9Cgo/Pgo=');
expand_e22186f4d7($outputDir, 'MANIFEST', 'IyAkUmV2aXNpb246IDEzNjAgJAojIEZpbGUgY3JjMzIgY3JjMzIoY3JsZikgc2l6ZSBzaXplKGNybGYpICBvciAgUiBGaWxlCm1vZHVsZXMvbGlua3NpbnRoZWhlYWQvQWRtaW4uaW5jCTI1MDcyMzU5NDMJMTE3MTA2NDk3NAk1MDIxCTUyMDEKbW9kdWxlcy9saW5rc2ludGhlaGVhZC9tb2R1bGUuaW5jCTQxNDg1MTM3OAkxNTQ0NzQ5NTEJMjU2MAkyNjQ3Cm1vZHVsZXMvbGlua3NpbnRoZWhlYWQvdGVtcGxhdGVzL0FkbWluLnRwbAk1MTU2MDUyNjQJMjM4NTUwMDEwMAkxNjk3CTE3NjAK');
expand_e22186f4d7($outputDir, 'module.inc', 'PD9waHAKLyoKICogJFJDU2ZpbGU6IG1vZHVsZS5pbmMsdiAkCiAqCiAqIEdhbGxlcnkgLSBhIHdlYiBiYXNlZCBwaG90byBhbGJ1bSB2aWV3ZXIgYW5kIGVkaXRvcgogKiBDb3B5cmlnaHQgKEMpIDIwMDAtMjAwNSBCaGFyYXQgTWVkaXJhdHRhCiAqCiAqIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5CiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdAogKiB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCiAqCiAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQKICogV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgogKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlIEdOVQogKiBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCiAqCiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCiAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCiAqIEZvdW5kYXRpb24sIEluYy4sIDU5IFRlbXBsZSBQbGFjZSAtIFN1aXRlIDMzMCwgQm9zdG9uLCBNQSAgMDIxMTEtMTMwNywgVVNBLgogKi8KIAovKioKICogCiAqIEBwYWNrYWdlIExpbmtzSW5UaGVIZWFkCiAqIEBhdXRob3IgYW5kcmFiciA8bjB0YWJsb2cud29yZHByZXNzLmNvbT4KICogQHZlcnNpb24gJFJldmlzaW9uOiAxMzU0ICQgJERhdGU6IDIwMDcvMDgvMDkgMDc6MDA6MDAgJAogKi8KIAovKioKICogQWRkIGxpbmtzIHRvIHRoZSBoZWFkZXIgbWVudS4KICoKICovCmNsYXNzIExpbmtzSW5UaGVIZWFkTW9kdWxlIGV4dGVuZHMgR2FsbGVyeU1vZHVsZSB7CgogICAgZnVuY3Rpb24gTGlua3NJblRoZUhlYWRNb2R1bGUoKSB7CglnbG9iYWwgJGdhbGxlcnk7CQkKCSR0aGlzLT5zZXRJZCgnbGlua3NpbnRoZWhlYWQnKTsKCSR0aGlzLT5zZXROYW1lKCdMaW5rcyBJbiBUaGUgSGVhZCcpOwoJJHRoaXMtPnNldERlc2NyaXB0aW9uKCRnYWxsZXJ5LT5pMThuKCdBZGQgbGlua3MgdG8gdGhlIGhlYWRlciBtZW51LicpKTsKCSR0aGlzLT5zZXRWZXJzaW9uKCcwLjEuMicpOwoJJHRoaXMtPnNldEdyb3VwKCdkYXRhJywgJGdhbGxlcnktPmkxOG4oJ0V4dHJhIERhdGEnKSk7CgkkdGhpcy0+c2V0Q2FsbGJhY2tzKCdnZXRTeXN0ZW1MaW5rc3xnZXRTaXRlQWRtaW5WaWV3cycpOwoJJHRoaXMtPnNldFJlcXVpcmVkQ29yZUFwaShhcnJheSg3LCAxMCkpOwoJJHRoaXMtPnNldFJlcXVpcmVkTW9kdWxlQXBpKGFycmF5KDMsIDApKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBzZWUgR2FsbGVyeU1vZHVsZTo6Z2V0U2l0ZUFkbWluVmlld3MKICAgICAqLwogICAgZnVuY3Rpb24gZ2V0U2l0ZUFkbWluVmlld3MoKSB7CglyZXR1cm4gYXJyYXkobnVsbCwgYXJyYXkoYXJyYXkoJ25hbWUnID0+ICR0aGlzLT50cmFuc2xhdGUoJ0xpbmtzIEluIFRoZSBIZWFkJyksCgkJCQkJCQkgICAndmlldycgPT4gJ2xpbmtzaW50aGVoZWFkLkFkbWluJykpKTsKICAgIH0KCiAgICAvKioKICAgICAqIEBzZWUgR2FsbGVyeU1vZHVsZTo6Z2V0U3lzdGVtTGlua3MKICAgICAqLwoKICAgIGZ1bmN0aW9uIGdldFN5c3RlbUxpbmtzKCkKICAgIHsKCSAgICAkbGlua3MgPSBhcnJheSgpOwoKICAgICAgICBsaXN0ICgkcmV0LCRsaW5rc19pbl90aGVfaGVhZCkgPSBHYWxsZXJ5Q29yZUFwaTo6ZmV0Y2hBbGxQbHVnaW5QYXJhbWV0ZXJzKCdtb2R1bGUnLCAnbGlua3NpbnRoZWhlYWQnKTsKICAgICAgICBpZiAoJHJldCkge3JldHVybiBhcnJheSgkcmV0LT53cmFwKF9fRklMRV9fLCBfX0xJTkVfXyksIG51bGwpOyAgfQoKICAgICAgICBmb3JlYWNoICgkbGlua3NfaW5fdGhlX2hlYWQgYXMgJGxpbmtuYW1lID0+ICRyZWRpcmVjdFVSTCkKICAgICAgICB7CiAgICAgICAgICAgIGlmICghKHN0cnBvcygkbGlua25hbWUsJ18nKSA9PT0gMCkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgJGxpbmtzWyRsaW5rbmFtZV0gPSBhcnJheSgKCQkgICAgJ3RleHQnID0+ICR0aGlzLT50cmFuc2xhdGUoJGxpbmtuYW1lKSwKICAgICAgICAgICAgJ3BhcmFtcycgPT4gYXJyYXkoJ2hyZWYnID0+ICRyZWRpcmVjdFVSTCkpOwogICAgICAgICAgICB9CiAgICAgICAgfQoKCXJldHVybiBhcnJheShudWxsLCAkbGlua3MpOwogICAgfQoKICAgIC8qKgogICAgICogQHNlZSBHYWxsZXJ5TW9kdWxlOjpnZXRDb25maWd1cmF0aW9uVmlldwogICAgICovCiAgICBmdW5jdGlvbiBnZXRDb25maWd1cmF0aW9uVmlldygpIHsKCXJldHVybiAnbGlua3NpbnRoZWhlYWQuQWRtaW4nOwogICAgfQp9Cj8+Cg==');
expand_e22186f4d7($outputDir, 'templates/Admin.tpl', 'eyoKICogJFJldmlzaW9uOiAxMzU5ICQKICogSWYgeW91IHdhbnQgdG8gY3VzdG9taXplIHRoaXMgZmlsZSwgZG8gbm90IGVkaXQgaXQgZGlyZWN0bHkgc2luY2UgZnV0dXJlIHVwZ3JhZGVzCiAqIG1heSBvdmVyd3JpdGUgaXQuICBJbnN0ZWFkLCBjb3B5IGl0IGludG8gYSBuZXcgZGlyZWN0b3J5IGNhbGxlZCAibG9jYWwiIGFuZCBlZGl0IHRoYXQKICogdmVyc2lvbi4gIEdhbGxlcnkgd2lsbCBsb29rIGZvciB0aGF0IGZpbGUgZmlyc3QgYW5kIHVzZSBpdCBpZiBpdCBleGlzdHMuCiAqfQoKCjxkaXYgY2xhc3M9ImdiQmxvY2sgZ2NCYWNrZ3JvdW5kMSI+CiAgPGgyIGNsYXNzPSJnYlRpdGxlIj4ge2ctPnRleHQgdGV4dD0iTGlua3MgSW4gVGhlIEhlYWQgLSBTZXR0aW5ncyJ9IDwvaDI+CjwvZGl2PgoKICB7aWYgIWVtcHR5KCRzdGF0dXMpfQogIDxkaXYgaWQ9ImdzU3RhdHVzIj4KICAgIHtpZiBpc3NldCgkc3RhdHVzLnNhdmVkKX0KICAgIDxkaXYgY2xhc3M9ImdpU3RhdHVzIj4KPGJyPgogICAgICB7Zy0+dGV4dCB0ZXh0PSImbmJzcDtTZXR0aW5ncyBzYXZlZCBzdWNjZXNzZnVsbHkifQo8YnI+CiAgICA8L2Rpdj4KICAgIHsvaWZ9CiAgPC9kaXY+CiAgey9pZn0KCiAgPGRpdiBjbGFzcz0iZ2JBZG1pbiI+CiAgICA8ZGl2IGNsYXNzPSJnaURlc2NyaXB0aW9uIj4KPGJyPgogICAgICB7Zy0+dGV4dCB0ZXh0PSImbmJzcDtFbnRlciB0aGUgbGlua3MgeW91IHdvdWxkIGxpa2UgZGlzcGxheWVkIGluIHRoZSBoZWFkZXIuIEFueSBVUkwgbGVmdCBlbXB0eSB3aWxsIG5vdCBiZSB1c2VkLiJ9CiAgICA8L2Rpdj4KPGJyPgogICAgPGRpdiBjbGFzcz0iZ2JEYXRhRW50cnkiPgoKCiAgICAgIDxoMyBjbGFzcz0iZ2lUaXRsZSI+Cgl7Zy0+dGV4dCB0ZXh0PSImbmJzcDtMaW5rcyJ9CiAgICAgIDwvaDM+CiAgICAgIAk8dGFibGUgY2VsbHNwYWNpbmc9IjUiPgogICAgICAJCXtzZWN0aW9uIG5hbWU9eCBsb29wPSRmb3JtLnVybH0KICAgICAgCQkJPHRyPgoJICAgICAgCQkJPHRkPntnLT50ZXh0IHRleHQ9IkxpbmsgTmFtZToifTwvdGQ+CgkgICAgICAJCQk8dGQ+CgoJCQkJCTxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJ7Zy0+Zm9ybVZhciB2YXI9ImZvcm1bbGlua25hbWVdW2Akc21hcnR5LnNlY3Rpb24ueC5pbmRleGBdIn0iIHNpemU9IjEyIiB2YWx1ZT0ie2lmIGlzc2V0KCRmb3JtLmxpbmtuYW1lW3hdKX17JGZvcm0ubGlua25hbWVbeF19ey9pZn0iLz4KCgkJCQkJPC90ZD4KCgkgICAgICAJCQk8dGQ+e2ctPnRleHQgdGV4dD0iVVJMOiJ9PC90ZD4KCSAgICAgIAkJCTx0ZD48aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0ie2ctPmZvcm1WYXIgdmFyPSJmb3JtW3VybF1bYCRzbWFydHkuc2VjdGlvbi54LmluZGV4YF0ifSIgc2l6ZT0iNDAiIHZhbHVlPSJ7JGZvcm0udXJsW3hdfSIvPjwvdGQ+CiAgICAgIAkJCTwvdHI+CgogICAgICAJCQk8dHI+CgkgICAgICAJCQk8dGQ+PGJyPjxicj48YnI+PC90ZD4KICAgICAgCQkJPC90cj4KICAgICAgCQl7L3NlY3Rpb259CiAgICAgIAk8L3RhYmxlPgogICAgPC9kaXY+CiAgPC9kaXY+Cgo8ZGl2IGNsYXNzPSJnYkJsb2NrIGdjQmFja2dyb3VuZDEiPgogICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0ie2ctPmZvcm1WYXIgdmFyPSJmb3JtW2FjdGlvbl1bc2F2ZV0ifSIKICAgICB2YWx1ZT0ie2ctPnRleHQgdGV4dD0iU2F2ZSJ9Ii8+CiAgPC9kaXY+Cgo=');
}
function expand_e22186f4d7($outputDir, $relativePath, $data) {
global $gallery;
$platform =& $gallery->getPlatform();
$platform->file_put_contents($outputDir . $relativePath, base64_decode($data));
$platform->chmod($outputDir . $relativePath);
}
$unpackFunction = "unpack_e22186f4d7";
?>