<?php
function unpack_cd276b3281($outputDir) {
/* Create directory structure. */
@mkdir($outputDir . 'classes');
@mkdir($outputDir . 'locale');
@mkdir($outputDir . 'po');
@mkdir($outputDir . 'templates');
/* Recreate individual files. */
expand_cd276b3281($outputDir, 'FinishLogout.inc', 'PD9waHAKLyoKICogR2FsbGVyeSAtIGEgd2ViIGJhc2VkIHBob3RvIGFsYnVtIHZpZXdlciBhbmQgZWRpdG9yCiAqIENvcHlyaWdodCAoQykgMjAwMC0yMDA3IEJoYXJhdCBNZWRpcmF0dGEKICoKICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0CiAqIHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KICoKICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dAogKiBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0IC0gRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEsIFVTQS4KICovCgpHYWxsZXJ5Q29yZUFwaTo6cmVxdWlyZU9uY2UoJ21vZHVsZXMvaHR0cGF1dGgvY2xhc3Nlcy9IdHRwQXV0aEhlbHBlci5jbGFzcycpOwoKLyoqCiAqIENoZWNrIHRoYXQgbG9nb3V0IHdhcyBzdWNjZXNzZnVsIGFuZCB3YXJuIHRoZSB1c2VyIHRvIGNsb3NlIHRoZSBicm93c2VyIHdpbmRvdyBpZiBub3QuCiAqIEBwYWNrYWdlIEh0dHBBdXRoCiAqIEBzdWJwYWNrYWdlIFVzZXJJbnRlcmZhY2UKICogQGF1dGhvciBKYWNrIEJhdGVzIDxtczQxOUBmcmVlem9uZS5jby51az4KICogQHZlcnNpb24gJFJldmlzaW9uOiAxNTU1NiAkCiAqLwpjbGFzcyBGaW5pc2hMb2dvdXRWaWV3IGV4dGVuZHMgR2FsbGVyeVZpZXcgewoKICAgIC8qKgogICAgICogQHNlZSBHYWxsZXJ5Vmlldzo6bG9hZFRlbXBsYXRlCiAgICAgKi8KICAgIGZ1bmN0aW9uIGxvYWRUZW1wbGF0ZSgmJHRlbXBsYXRlLCAmJGZvcm0pIHsKCWdsb2JhbCAkZ2FsbGVyeTsKCSR1cmxHZW5lcmF0b3IgPSYgJGdhbGxlcnktPmdldFVybEdlbmVyYXRvcigpOwoKCWxpc3QgKCRyZXQsICRpc0Fub255bW91cykgPSBHYWxsZXJ5Q29yZUFwaTo6aXNBbm9ueW1vdXNVc2VyKCk7CglpZiAoJHJldCkgewoJICAgIHJldHVybiBhcnJheSgkcmV0LCBudWxsKTsKCX0KCglpZiAoJGlzQW5vbnltb3VzKSB7CgkgICAgLyogVXNlIGFuIGFic29sdXRlIHJldHVybiBVUkkgdG8gcmVtb3ZlIHVzZXI6cGFzcyBhZ2FpbiBhZnRlciB0aGUgbG9nb3V0ICovCgkgICAgJHVybCA9ICR1cmxHZW5lcmF0b3ItPmdlbmVyYXRlVXJsKGFycmF5KCd2aWV3JyA9PiBHQUxMRVJZX0RFRkFVTFRfVklFVyksCgkJCQkJCSAgICBhcnJheSgnZm9yY2VGdWxsVXJsJyA9PiB0cnVlKSk7CgoJICAgIHJldHVybiBhcnJheShudWxsLCBhcnJheSgncmVkaXJlY3RVcmwnID0+IEh0dHBBdXRoSGVscGVyOjpzdHJpcEh0dHBBdXRoRnJvbVVybCgkdXJsKSkpOwoJfQoKCXJldHVybiBhcnJheShudWxsLCBhcnJheSgnYm9keScgPT4gJ21vZHVsZXMvaHR0cGF1dGgvdGVtcGxhdGVzL0ZpbmlzaExvZ291dC50cGwnKSk7CiAgICB9Cn0KPz4K');
expand_cd276b3281($outputDir, 'HttpAuthSiteAdmin.inc', '[encoded data, 5984 characters]');
expand_cd276b3281($outputDir, 'HttpAuthWorks.inc', 'PD9waHAKLyoKICogR2FsbGVyeSAtIGEgd2ViIGJhc2VkIHBob3RvIGFsYnVtIHZpZXdlciBhbmQgZWRpdG9yCiAqIENvcHlyaWdodCAoQykgMjAwMC0yMDA3IEJoYXJhdCBNZWRpcmF0dGEKICoKICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0CiAqIHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KICoKICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dAogKiBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0IC0gRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEsIFVTQS4KICovCgpHYWxsZXJ5Q29yZUFwaTo6cmVxdWlyZU9uY2UoJ21vZHVsZXMvaHR0cGF1dGgvY2xhc3Nlcy9IdHRwQXV0aEhlbHBlci5jbGFzcycpOwoKLyoqCiAqIFJlZmxlY3QgdGhlIEhUVFAgYXV0aHR5cGUsIHVzZXJuYW1lLCBhbmQgcGFzc3dvcmQgc28gd2UgY2FuIGNoZWNrIHRoYXQgR2FsbGVyeSBjYW4gYWNjZXNzIHRoZW0uCiAqIEBwYWNrYWdlIEh0dHBBdXRoCiAqIEBzdWJwYWNrYWdlIFVzZXJJbnRlcmZhY2UKICogQGF1dGhvciBKYWNrIEJhdGVzIDxtczQxOUBmcmVlem9uZS5jby51az4KICogQHZlcnNpb24gJFJldmlzaW9uOiAxNTUxMyAkCiAqLwpjbGFzcyBIdHRwQXV0aFdvcmtzVmlldyBleHRlbmRzIEdhbGxlcnlWaWV3IHsKCiAgICAvKioKICAgICAqIEBzZWUgR2FsbGVyeVZpZXc6OmlzSW1tZWRpYXRlCiAgICAgKi8KICAgIGZ1bmN0aW9uIGlzSW1tZWRpYXRlKCkgewoJcmV0dXJuIHRydWU7CiAgICB9CgogICAgLyoqCiAgICAgKiBAc2VlIEdhbGxlcnlWaWV3OjpyZW5kZXJJbW1lZGlhdGUKICAgICAqLwogICAgZnVuY3Rpb24gcmVuZGVySW1tZWRpYXRlKCRzdGF0dXMsICRlcnJvcikgewoJZWNobyBpbXBsb2RlKCJcbiIsIEh0dHBBdXRoSGVscGVyOjpnZXRIdHRwQXV0aCgpKTsKICAgIH0KfQo/Pgo=');
expand_cd276b3281($outputDir, 'MANIFEST', 'IyAkUmV2aXNpb246IDE2MDQxICQKIyBGaWxlIGNyYzMyIGNyYzMyKGNybGYpIHNpemUgc2l6ZShjcmxmKSAgb3IgIFIgRmlsZQptb2R1bGVzL2h0dHBhdXRoL0ZpbmlzaExvZ291dC5pbmMJMjE1NjAzNjUwNQk5NjY5NzAzOTYJMTg4MQkxOTM2Cm1vZHVsZXMvaHR0cGF1dGgvSHR0cEF1dGhTaXRlQWRtaW4uaW5jCTM2OTc4MzA0NjMJMTM2OTIyNTIxNgk0NDg3CTQ2MzYKbW9kdWxlcy9odHRwYXV0aC9IdHRwQXV0aFdvcmtzLmluYwkzNTY0ODk1NDE0CTE0NjYzNzgzMjQJMTQ2NgkxNTEyCm1vZHVsZXMvaHR0cGF1dGgvVHJ5TG9nb3V0LmluYwkzMTY0NzY2NzY3CTMyOTAxMTc2ODkJMjIyMAkyMjgwCm1vZHVsZXMvaHR0cGF1dGgvY2xhc3Nlcy9IdHRwQXV0aEhlbHBlci5jbGFzcwkxNjI4MjI3MDEJMjE5NDAzMzkzOAkxMTE1OQkxMTUyOAptb2R1bGVzL2h0dHBhdXRoL2NsYXNzZXMvSHR0cEF1dGhJbnRlcmZhY2VfMV8wLmNsYXNzCTM0ODgyMDUyMzYJNDIyMTA4ODE2NQkyNjcxCTI3MzkKbW9kdWxlcy9odHRwYXV0aC9jbGFzc2VzL0h0dHBBdXRoUGx1Z2luLmNsYXNzCTE5NDE0NDMyOTAJMjY0MDQ5MTI1NgkyNTA2CTI1ODAKbW9kdWxlcy9odHRwYXV0aC9jbGFzc2VzL1NlcnZlckF1dGhQbHVnaW4uY2xhc3MJNDg4MjE2ODE3CTY2ODQwNDg1MAkyMjE2CTIyODIKbW9kdWxlcy9odHRwYXV0aC9tb2R1bGUuaW5jCTYwMDk1MTAyNQk3OTQ3MDkyNDAJMTEyMDMJMTE2MDAKbW9kdWxlcy9odHRwYXV0aC90ZW1wbGF0ZXMvRmluaXNoTG9nb3V0LnRwbAk5NDkxMjc4OTgJMjE3MDkyMzI3MAk1MjQJNTM3Cm1vZHVsZXMvaHR0cGF1dGgvdGVtcGxhdGVzL0h0dHBBdXRoU2l0ZUFkbWluLnRwbAkyOTU4NTYwMzI3CTI1Njg2ODQ2MDcJODYyMQk4NzY5Cm1vZHVsZXMvaHR0cGF1dGgvdGVtcGxhdGVzL1RyeUxvZ291dC50cGwJNDIyNDI2NDk2NwkxNzEyMTg1MjQ3CTgzNgk4NjEK');
expand_cd276b3281($outputDir, 'TryLogout.inc', 'PD9waHAKLyoKICogR2FsbGVyeSAtIGEgd2ViIGJhc2VkIHBob3RvIGFsYnVtIHZpZXdlciBhbmQgZWRpdG9yCiAqIENvcHlyaWdodCAoQykgMjAwMC0yMDA3IEJoYXJhdCBNZWRpcmF0dGEKICoKICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0CiAqIHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KICoKICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dAogKiBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0IC0gRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEsIFVTQS4KICovCgpHYWxsZXJ5Q29yZUFwaTo6cmVxdWlyZU9uY2UoJ21vZHVsZXMvaHR0cGF1dGgvY2xhc3Nlcy9IdHRwQXV0aEhlbHBlci5jbGFzcycpOwoKLyoqCiAqIFRyeSB0byBjbGVhciB0aGUgYnJvd3NlcidzIGF1dGhlbnRpY2F0aW9uIGNhY2hlIGJ5IGFzIG1hbnkgdHJpY2tzIGFzIHBvc3NpYmxlIGFuZCByZWRpcmVjdCB0byBhCiAqIHZpZXcgd2hpY2ggY2hlY2tzIHRoYXQgbG9nb3V0IHdhcyBzdWNjZXNzZnVsLiAgaHR0cHM6Ly9idWd6aWxsYS5tb3ppbGxhLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTUxODEKICogQHBhY2thZ2UgSHR0cEF1dGgKICogQHN1YnBhY2thZ2UgVXNlckludGVyZmFjZQogKiBAYXV0aG9yIEphY2sgQmF0ZXMgPG1zNDE5QGZyZWV6b25lLmNvLnVrPgogKiBAdmVyc2lvbiAkUmV2aXNpb246IDE1NzQ0ICQKICovCmNsYXNzIFRyeUxvZ291dFZpZXcgZXh0ZW5kcyBHYWxsZXJ5VmlldyB7CgogICAgLyoqCiAgICAgKiBAc2VlIEdhbGxlcnlWaWV3Ojpsb2FkVGVtcGxhdGUKICAgICAqLwogICAgZnVuY3Rpb24gbG9hZFRlbXBsYXRlKCYkdGVtcGxhdGUsICYkZm9ybSkgewoJZ2xvYmFsICRnYWxsZXJ5OwoJJHVybEdlbmVyYXRvciA9JiAkZ2FsbGVyeS0+Z2V0VXJsR2VuZXJhdG9yKCk7CgoJLyogQXNrIGJyb3dzZXIgdG8gYXV0aGVudGljYXRlIHdpdGggYm9ndXMgYXV0aHR5cGUgKi8KCUdhbGxlcnlVdGlsaXRpZXM6OnNldFJlc3BvbnNlSGVhZGVyKCdIVFRQLzEuMCA0MDEgVW5hdXRob3JpemVkJywgZmFsc2UpOwoJR2FsbGVyeVV0aWxpdGllczo6c2V0UmVzcG9uc2VIZWFkZXIoJ1dXVy1BdXRoZW50aWNhdGU6IEJvZ3VzJyk7CgoJLyogUmVkaXJlY3QgdXNpbmcgcmFuZG9tIHVzZXJuYW1lIGFuZCBwYXNzd29yZCAqLwoJJFRyeUxvZ291dCA9IGFycmF5KCk7Cglmb3JlYWNoIChhcnJheSgnc2NyaXB0VXJsJywgJ2hyZWZVcmwnKSBhcyAka2V5KSB7CgkgICAgJHVybCA9ICR1cmxHZW5lcmF0b3ItPmdlbmVyYXRlVXJsKGFycmF5KCd2aWV3JyA9PiAnaHR0cGF1dGguRmluaXNoTG9nb3V0JyksCgkJCQkJICAgICAgYXJyYXkoJ2ZvcmNlRnVsbFVybCcgPT4gdHJ1ZSwKCQkJCQkJICAgICdodG1sRW50aXRpZXMnID0+ICRrZXkgPT0gJ2hyZWZVcmwnKSk7CgkgICAgJFRyeUxvZ291dFska2V5XSA9CgkJSHR0cEF1dGhIZWxwZXI6OmFkZEh0dHBBdXRoVG9VcmwoJHVybCwgJ19fTE9HT1VUX18nIC4gcmFuZCgpLCByYW5kKCkpOwoJfQoKCS8qIFJlbmRlciBIVE1MIGJvZHkgKi8KCSR0ZW1wbGF0ZS0+c2V0VmFyaWFibGUoJ1RyeUxvZ291dCcsICRUcnlMb2dvdXQpOwoKCXJldHVybiBhcnJheShudWxsLCBhcnJheSgnYm9keScgPT4gJ21vZHVsZXMvaHR0cGF1dGgvdGVtcGxhdGVzL1RyeUxvZ291dC50cGwnKSk7CiAgICB9Cn0KPz4K');
expand_cd276b3281($outputDir, 'classes/HttpAuthHelper.class', '[encoded data, 14880 characters]');
expand_cd276b3281($outputDir, 'classes/HttpAuthInterface_1_0.class', 'PD9waHAKLyoKICogR2FsbGVyeSAtIGEgd2ViIGJhc2VkIHBob3RvIGFsYnVtIHZpZXdlciBhbmQgZWRpdG9yCiAqIENvcHlyaWdodCAoQykgMjAwMC0yMDA3IEJoYXJhdCBNZWRpcmF0dGEKICoKICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0CiAqIHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KICoKICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dAogKiBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0IC0gRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEsIFVTQS4KICovCgovKioKICogVGhpcyBpcyBhbiBpbnRlcmZhY2UgZm9yIHRoZSBodHRwYXV0aCBtb2R1bGUuICBNb2R1bGVzIHRoYXQgd2lzaCB0byBvcHQtaW4gZm9yIEhUVFBhdXRoIGNhbgogKiB1dGlsaXplIGFuIGltcGxlbWVudGF0aW9uIG9mIHRoaXMgaW50ZXJmYWNlLgogKgogKiBAc2VlIEh0dHBBdXRoUGx1Z2luCiAqIEBzZWUgU2VydmVyQXV0aFBsdWdpbgogKiBAcGFja2FnZSBIdHRwQXV0aAogKiBAc3VicGFja2FnZSBDbGFzc2VzCiAqIEBhdXRob3IgQW5keSBTdGF1ZGFjaGVyIDxhc3RAZ214LmNoPgogKiBAdmVyc2lvbiAkUmV2aXNpb246IDE1NzIyICQKICogQGFic3RyYWN0CiAqLwpjbGFzcyBIdHRwQXV0aEludGVyZmFjZV8xXzAgewoKICAgIC8qKgogICAgICogQ2hlY2tzIGlmIEhUVFAgYXV0aGVudGljYXRpb24gaXMgZW5hYmxlZC4KICAgICAqIEByZXR1cm4gYXJyYXkgb2JqZWN0IEdhbGxlcnlTdGF0dXMgYSBzdGF0dXMgY29kZSwKICAgICAqICAgICAgICAgICAgICAgYm9vbCB0cnVlIGlmIEhUVFBBdXRoIGlzIGVuYWJsZWQsCiAgICAgKiAgICAgICAgICAgICAgIGJvb2wgdHJ1ZSBpZiBTZXJ2ZXJBdXRoIGlzIGVuYWJsZWQKICAgICAqICAgICAgICAgICAgICAgYm9vbCB0cnVlIGlmIGl0IGlzIGVuYWJsZWQgZ2xvYmFsbHkgb3IKICAgICAqICAgICAgICAgICAgICAgICAgICBmYWxzZSBpZiBpdCBpcyBvbmx5IGVuYWJsZWQgZm9yIHNwZWNpZmljIG1vZHVsZXMKICAgICAqLwogICAgZnVuY3Rpb24gZ2V0Q29uZmlndXJhdGlvbigpIHsKCXJldHVybiBhcnJheShHYWxsZXJ5Q29yZUFwaTo6ZXJyb3IoRVJST1JfVU5JTVBMRU1FTlRFRCksIG51bGwsIG51bGwsIG51bGwpOwogICAgfQoKICAgIC8qKgogICAgICogUmVnaXN0ZXJzIHRoZSBIVFRQIGF1dGhlbnRpY2F0aW9uIEdhbGxlcnkgYXV0aGVudGljYXRpb24gcGx1Z2luLgogICAgICogQHBhcmFtIGJvb2wgJGVuYWJsZUh0dHBBdXRoIFNldCB0byB0cnVlIHRvIGFjdGl2YXRlIEhUVFAgYXV0aCwgZmFsc2UgdG8gZGVhY3RpdmF0ZS4KICAgICAqIEBwYXJhbSBib29sICRlbmFibGVTZXJ2ZXJBdXRoIChvcHRpb25hbCkgU2V0IHRvIHRydWUgdG8gYWN0aXZhdGUgU2VydmVyIGF1dGgsIGZhbHNlIHRvCiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlYWN0aXZhdGUgKGRlZmF1bHRzIHRvIGZhbHNlKS4KICAgICAqIEBwYXJhbSBib29sICR1c2VHbG9iYWxseSAob3B0aW9uYWwpIFNldCB0byB0cnVlIHRvIGFjdGl2YXRlIGF1dGggZm9yIGFsbCBtb2R1bGVzLCBmYWxzZSB0bwogICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWlyZSBtb2R1bGVzIHRvIG9wdC1pbiBmb3IgSFRUUCBhdXRoIChkZWZhdWx0KSwKICAgICAqIEByZXR1cm4gb2JqZWN0IEdhbGxlcnlTdGF0dXMgYSBzdGF0dXMgY29kZQogICAgICovCiAgICBmdW5jdGlvbiBzZXRDb25maWd1cmF0aW9uKCRlbmFibGVIdHRwQXV0aCwgJGVuYWJsZVNlcnZlckF1dGg9ZmFsc2UsICR1c2VHbG9iYWxseT1mYWxzZSkgewoJcmV0dXJuIEdhbGxlcnlDb3JlQXBpOjplcnJvcihFUlJPUl9VTklNUExFTUVOVEVEKTsKICAgIH0KCiAgICAvKioKICAgICAqIFByb21wdCB0aGUgdXNlciB2aWEgSFRUUCBhdXRoZW50aWNhdGlvbiBmb3IgdXNlcm5hbWUgLyBwYXNzd29yZC4KICAgICAqIEByZXR1cm4gb2JqZWN0IEdhbGxlcnlTdGF0dXMgYSBzdGF0dXMgY29kZQogICAgICovCiAgICBmdW5jdGlvbiByZXF1ZXN0QXV0aGVudGljYXRpb24oKSB7CglyZXR1cm4gR2FsbGVyeUNvcmVBcGk6OmVycm9yKEVSUk9SX1VOSU1QTEVNRU5URUQpOwogICAgfQp9Cj8+Cg==');
expand_cd276b3281($outputDir, 'classes/HttpAuthPlugin.class', 'PD9waHAKLyoKICogR2FsbGVyeSAtIGEgd2ViIGJhc2VkIHBob3RvIGFsYnVtIHZpZXdlciBhbmQgZWRpdG9yCiAqIENvcHlyaWdodCAoQykgMjAwMC0yMDA3IEJoYXJhdCBNZWRpcmF0dGEKICoKICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0CiAqIHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KICoKICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dAogKiBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0IC0gRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEsIFVTQS4KICovCgpHYWxsZXJ5Q29yZUFwaTo6cmVxdWlyZU9uY2UoJ21vZHVsZXMvaHR0cGF1dGgvY2xhc3Nlcy9IdHRwQXV0aEhlbHBlci5jbGFzcycpOwoKLyoqCiAqIEdldCBhY3RpdmUgdXNlciBmcm9tIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBpbiBIVFRQIGhlYWRlcnMuCiAqCiAqIEhUVFAgYXV0aGVudGljYXRpb24gaXMgaGFuZGxlZCBiZXR3ZWVuIHRoZSB1c2VyLWFnZW50IGFuZCBHYWxsZXJ5LiAgR2FsbGVyeSBpcyByZXNwb25zaWJsZSB0bwogKiBhdXRoZW50aWNhdGUgYSB1c2VyLXN1cHBsaWVkIHVzZXJuYW1lIC8gcGFzc3dvcmQgcGFpci4KICoKICogQHBhY2thZ2UgSHR0cEF1dGgKICogQHN1YnBhY2thZ2UgQ2xhc3NlcwogKiBAYXV0aG9yIEphY2sgQmF0ZXMgPG1zNDE5QGZyZWV6b25lLmNvLnVrPgogKiBAdmVyc2lvbiAkUmV2aXNpb246IDE1NzU5ICQKICovCmNsYXNzIEh0dHBBdXRoUGx1Z2luIC8qIGV4dGVuZHMgR2FsbGVyeUF1dGhQbHVnaW4gKi8gewoKICAgIC8qKgogICAgICogQHNlZSBHYWxsZXJ5QXV0aFBsdWdpbjo6Z2V0VXNlcgogICAgICovCiAgICBmdW5jdGlvbiBnZXRVc2VyKCkgewoJbGlzdCAoJGF1dGh0eXBlLCAkdXNlcm5hbWUsICRwYXNzd29yZCkgPSBIdHRwQXV0aEhlbHBlcjo6Z2V0SHR0cEF1dGgoKTsKCglsaXN0ICgkcmV0LCAkdXNlcikgPSBIdHRwQXV0aEhlbHBlcjo6Z2V0VXNlcigkYXV0aHR5cGUsICR1c2VybmFtZSk7CglpZiAoJHJldCkgewoJICAgIHJldHVybiBhcnJheSgkcmV0LCBudWxsKTsKCX0KCgkvKgoJICogV2UgYXJlIGVmZmVjdGl2ZWx5IGxvZ2dpbmcgaW4gb24gZXZlcnkgcmVxdWVzdCB3aGVuIHdlIHVzZSB0aGlzIHBsdWdpbi4gIFdlIGNhbid0CgkgKiBwb3N0IGEgbG9naW4gZXZlbnQgZWFjaCB0aW1lIHdlIGRvIHRoaXMsIGJ1dCB3ZSBuZWVkIHRvIHBvc3QgRmFpbGVkTG9naW4gZXZlbnRzLgoJICovCglpZiAoaXNzZXQoJHVzZXIpICYmICR1c2VyLT5pc0NvcnJlY3RQYXNzd29yZCgkcGFzc3dvcmQpKSB7CgkgICAgJHJldCA9IEh0dHBBdXRoSGVscGVyOjpyZWdlbmVyYXRlU2Vzc2lvbklmTmVjZXNzYXJ5KCR1c2VyKTsKCSAgICBpZiAoJHJldCkgewoJCXJldHVybiBhcnJheSgkcmV0LCBudWxsKTsKCSAgICB9CgoJICAgIHJldHVybiBhcnJheShudWxsLCAkdXNlcik7Cgl9IGVsc2UgaWYgKCFlbXB0eSgkdXNlcm5hbWUpICYmIHN0cnBvcygkdXNlcm5hbWUsICdfX0xPR09VVF9fJykgIT09IDApIHsKCSAgICAvKgoJICAgICAqIERvbid0IHBvc3QgYW4gZXZlbnQgaWYgdGhlIHVzZXJuYW1lIHN0YXJ0cyB3aXRoIF9fbG9nb3V0X18gc2luY2UgdGhhdCBpcyB1c2VkIHdoZW4gd2UKCSAgICAgKiB0cnkgdG8gZm9yY2UgdGhlIHVzZXItYWdlbnQgdG8gY2xlYXIgaXRzIGF1dGggY2FjaGUuCgkgICAgICovCgkgICAgJGV2ZW50ID0gR2FsbGVyeUNvcmVBcGk6Om5ld0V2ZW50KCdHYWxsZXJ5OjpGYWlsZWRMb2dpbicpOwoJICAgICRldmVudC0+c2V0RGF0YShhcnJheSgndXNlck5hbWUnID0+ICR1c2VybmFtZSkpOwoJICAgIGxpc3QgKCRyZXQsICRpZ25vcmVkKSA9IEdhbGxlcnlDb3JlQXBpOjpwb3N0RXZlbnQoJGV2ZW50KTsKCSAgICBpZiAoJHJldCkgewoJCXJldHVybiBhcnJheSgkcmV0LCBudWxsKTsKCSAgICB9Cgl9CgoJcmV0dXJuIGFycmF5KG51bGwsIG51bGwpOwogICAgfQp9Cj8+Cg==');
expand_cd276b3281($outputDir, 'classes/ServerAuthPlugin.class', 'PD9waHAKLyoKICogR2FsbGVyeSAtIGEgd2ViIGJhc2VkIHBob3RvIGFsYnVtIHZpZXdlciBhbmQgZWRpdG9yCiAqIENvcHlyaWdodCAoQykgMjAwMC0yMDA3IEJoYXJhdCBNZWRpcmF0dGEKICoKICogVGhpcyBwcm9ncmFtIGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMiBvZiB0aGUgTGljZW5zZSwgb3IgKGF0CiAqIHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KICoKICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsIGJ1dAogKiBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KICoKICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKICogYWxvbmcgd2l0aCB0aGlzIHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKICogRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0IC0gRmlmdGggRmxvb3IsIEJvc3RvbiwgTUEgIDAyMTEwLTEzMDEsIFVTQS4KICovCgpHYWxsZXJ5Q29yZUFwaTo6cmVxdWlyZU9uY2UoJ21vZHVsZXMvaHR0cGF1dGgvY2xhc3Nlcy9IdHRwQXV0aEhlbHBlci5jbGFzcycpOwoKLyoqCiAqIEdldCBhY3RpdmUgdXNlciBmcm9tIHVzZXJuYW1lIGF1dGhlbnRpY2F0ZWQgYnkgd2ViIHNlcnZlci4KICoKICogV2l0aCBzZXJ2ZXIgYXV0aGVudGljYXRpb24gR2FsbGVyeSBkZWxlZ2F0ZXMgYXV0aGVudGljYXRpb24gdG8gdGhlIHdlYiBzZXJ2ZXIgYW5kIEdhbGxlcnkgdHJ1c3RzCiAqIHRoZSBnaXZlbiB1c2VybmFtZSBmcm9tIHRoZSAnUkVNT1RFX1VTRVInIHZhcmlhYmxlIHdpdGhvdXQgZG9pbmcgYW55IGF1dGhlbnRpY2F0aW9uIG9uIGl0cyBvd24KICogKHNhbWUgYXMgaW4gR2FsbGVyeUVtYmVkKS4gIEl0J3MgdGhlIHdlYiBzZXJ2ZXIncyByZXNwb25zaWJpbGl0eSB0byBkbyB0aGUgYXV0aGVudGljYXRpb24gaW4gc29tZQogKiB3YXkuCiAqCiAqIEBwYWNrYWdlIEh0dHBBdXRoCiAqIEBzdWJwYWNrYWdlIENsYXNzZXMKICogQGF1dGhvciBKYWNrIEJhdGVzIDxtczQxOUBmcmVlem9uZS5jby51az4KICogQHZlcnNpb24gJFJldmlzaW9uOiAxNTc1OSAkCiAqLwpjbGFzcyBTZXJ2ZXJBdXRoUGx1Z2luIC8qIGV4dGVuZHMgR2FsbGVyeUF1dGhQbHVnaW4gKi8gewoKICAgIC8qKgogICAgICogQHNlZSBHYWxsZXJ5QXV0aFBsdWdpbjo6Z2V0VXNlcgogICAgICovCiAgICBmdW5jdGlvbiBnZXRVc2VyKCkgewoJJGF1dGh0eXBlID0gR2FsbGVyeVV0aWxpdGllczo6Z2V0U2VydmVyVmFyKCdBVVRIX1RZUEUnKTsKCSR1c2VybmFtZSA9IEdhbGxlcnlVdGlsaXRpZXM6OmdldFNlcnZlclZhcignUkVNT1RFX1VTRVInKTsKCgkvKiBUT0RPOiBodHRwOi8vaXNzdWVzLmFwYWNoZS5vcmcvYnVnemlsbGEvc2hvd19idWcuY2dpP2lkPTM4MzI1ICovCglpZiAoZW1wdHkoJHVzZXJuYW1lKSkgewoJICAgICRhdXRodHlwZSA9IEdhbGxlcnlVdGlsaXRpZXM6OmdldFNlcnZlclZhcignUkVESVJFQ1RfQVVUSF9UWVBFJyk7CgkgICAgJHVzZXJuYW1lID0gR2FsbGVyeVV0aWxpdGllczo6Z2V0U2VydmVyVmFyKCdSRURJUkVDVF9SRU1PVEVfVVNFUicpOwoJfQoKCWxpc3QgKCRyZXQsICR1c2VyKSA9IEh0dHBBdXRoSGVscGVyOjpnZXRVc2VyKCRhdXRodHlwZSwgJHVzZXJuYW1lKTsKCWlmICgkcmV0KSB7CgkgICAgcmV0dXJuIGFycmF5KCRyZXQsIG51bGwpOwoJfQoKCWlmICghZW1wdHkoJHVzZXIpKSB7CgkgICAgJHJldCA9IEh0dHBBdXRoSGVscGVyOjpyZWdlbmVyYXRlU2Vzc2lvbklmTmVjZXNzYXJ5KCR1c2VyKTsKCSAgICBpZiAoJHJldCkgewoJCXJldHVybiBhcnJheSgkcmV0LCBudWxsKTsKCSAgICB9Cgl9CgoJcmV0dXJuIGFycmF5KG51bGwsICR1c2VyKTsKICAgIH0KfQo/Pgo=');
expand_cd276b3281($outputDir, 'module.inc', '[encoded data, 14940 characters]');
expand_cd276b3281($outputDir, 'po/GNUmakefile', 'R0FMTEVSWURJUiA/PSAuLi8uLi8uLgpUT09MRElSID89ICQoR0FMTEVSWURJUikvbGliL3Rvb2xzCgppbmNsdWRlICQoVE9PTERJUikvcG8vR05VbWFrZWZpbGUuaW5jCgo=');
expand_cd276b3281($outputDir, 'po/strings.raw', '[encoded data, 5180 characters]');
expand_cd276b3281($outputDir, 'templates/FinishLogout.tpl', 'eyoKICogJFJldmlzaW9uOiAxNTU0MyAkCiAqIElmIHlvdSB3YW50IHRvIGN1c3RvbWl6ZSB0aGlzIGZpbGUsIGRvIG5vdCBlZGl0IGl0IGRpcmVjdGx5IHNpbmNlIGZ1dHVyZSB1cGdyYWRlcwogKiBtYXkgb3ZlcndyaXRlIGl0LiAgSW5zdGVhZCwgY29weSBpdCBpbnRvIGEgbmV3IGRpcmVjdG9yeSBjYWxsZWQgImxvY2FsIiBhbmQgZWRpdCB0aGF0CiAqIHZlcnNpb24uICBHYWxsZXJ5IHdpbGwgbG9vayBmb3IgdGhhdCBmaWxlIGZpcnN0IGFuZCB1c2UgaXQgaWYgaXQgZXhpc3RzLgogKn0KPGRpdiBjbGFzcz0iZ2JCbG9jayI+CiAgPGgzIGNsYXNzPSJnaVdhcm5pbmciPiB7Zy0+dGV4dCB0ZXh0PSJMb2dvdXQgZmFpbGVkIn0gPC9oMz4KCiAgPHAgY2xhc3M9ImdpRGVzY3JpcHRpb24iPgogICAge2ctPnRleHQgdGV4dD0iR2FsbGVyeSB0cmllZCB0byBsb2dvdXQgYnV0IGZhaWxlZC4gIFlvdSBzaG91bGQgY2xvc2UgdGhlIGJyb3dzZXIgd2luZG93IHRvIGxvZ291dCBzdWNjZXNzZnVsbHkuIn0KICA8L3A+CjwvZGl2Pgo=');
expand_cd276b3281($outputDir, 'templates/HttpAuthSiteAdmin.tpl', '[encoded data, 11496 characters]');
expand_cd276b3281($outputDir, 'templates/TryLogout.tpl', 'eyoKICogJFJldmlzaW9uOiAxNTU0MyAkCiAqIElmIHlvdSB3YW50IHRvIGN1c3RvbWl6ZSB0aGlzIGZpbGUsIGRvIG5vdCBlZGl0IGl0IGRpcmVjdGx5IHNpbmNlIGZ1dHVyZSB1cGdyYWRlcwogKiBtYXkgb3ZlcndyaXRlIGl0LiAgSW5zdGVhZCwgY29weSBpdCBpbnRvIGEgbmV3IGRpcmVjdG9yeSBjYWxsZWQgImxvY2FsIiBhbmQgZWRpdCB0aGF0CiAqIHZlcnNpb24uICBHYWxsZXJ5IHdpbGwgbG9vayBmb3IgdGhhdCBmaWxlIGZpcnN0IGFuZCB1c2UgaXQgaWYgaXQgZXhpc3RzLgogKn0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPgogIC8vIDwhW0NEQVRBWwoKICB0cnkge2xkZWxpbX0KICAgIHsqIGh0dHA6Ly9tc2RuLm1pY3Jvc29mdC5jb20vd29ya3Nob3AvYXV0aG9yL2RodG1sL3JlZmVyZW5jZS9jb25zdGFudHMvY2xlYXJhdXRoZW50aWNhdGlvbmNhY2hlLmFzcCAqfQogICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoIkNsZWFyQXV0aGVudGljYXRpb25DYWNoZSIpOwogIHtyZGVsaW19IGNhdGNoIChleGNlcHRpb24pIHtsZGVsaW19CiAge3JkZWxpbX0KCiAgd2luZG93LmxvY2F0aW9uID0gInskVHJ5TG9nb3V0LnNjcmlwdFVybH0iOwoKICAvLyBdXT4KPC9zY3JpcHQ+Cgo8ZGl2IGNsYXNzPSJnYkJsb2NrIj4KICA8cCBjbGFzcz0iZ2lEZXNjcmlwdGlvbiI+CiAgICB7Zy0+dGV4dCB0ZXh0PSJJZiB5b3UncmUgbm90IGF1dG9tYXRpY2FsbHkgcmVkaXJlY3RlZCwgJXNjbGljayBoZXJlIHRvIGZpbmlzaCBsb2dnaW5nIG91dCVzLiIgYXJnMT0iPGEgaHJlZj1cImAkVHJ5TG9nb3V0LmhyZWZVcmxgXCI+IiBhcmcyPSI8L2E+In0KICA8L3A+CjwvZGl2Pgo=');
}
function expand_cd276b3281($outputDir, $relativePath, $data) {
$fd = fopen($outputDir . $relativePath, 'w');
fwrite($fd, base64_decode($data));
fclose($fd);
}
$unpackFunction = "unpack_cd276b3281";
?>