1778692629
441d63ebbc39eba359c9061ece8482bd-phpdoc%3Acd129035d05d9b1d3ce469dcad2633fd-c07ef79ad3b41666ace6e02d3aaff1d5
s:5788:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lIjtzOjExOiJleGFtcGxlLnBocCI7czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lc3BhY2VzIjthOjA6e31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGluY2x1ZGVzIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGZ1bmN0aW9ucyI7YTowOnt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjb25zdGFudHMiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAY2xhc3NlcyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBpbnRlcmZhY2VzIjthOjA6e31zOjQxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHRyYWl0cyI7YTowOnt9czo0MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBlbnVtcyI7YTowOnt9czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBoYXNoIjtzOjMyOiJjMDdlZjc5YWQzYjQxNjY2YWNlNmUwMmQzYWFmZjFkNSI7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBwYXRoIjtzOjQzOiJ2ZW5kb3IvcGhwZG9jdW1lbnRvci9yZWZsZWN0aW9uL2V4YW1wbGUucGhwIjtzOjQxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHNvdXJjZSI7czoxODMzOiI8P3BocAovKioKICAgICAqIENyZWF0ZSBhIHByb2plY3QgbWFwIChzaW1pbGFyIHRvIGEgc2l0ZW1hcCkgb2YgcHJvamVjdC4KICAgICAqCiAgICAgKiBUaGUgUmVmbGVjdGlvbiBjb21wb25lbnQgaXMgY2FwYWJsZSBvZiBhbmFseXppbmcgb25lIG9yIG1vcmUgZmlsZXMgaW50byBhIGhpZXJhcmNoeSBvZiBvYmplY3RzIHJlcHJlc2VudGluZyB0aGUKICAgICAqIHN0cnVjdHVyZSBvZiB5b3VyIHByb2plY3QuIEl0IGRvZXMgdGhpcyBieSBhbmFseXppbmcgdGhlIHNvdXJjZSBjb2RlIG9mIGVhY2ggaW5kaXZpZHVhbCBmaWxlIHVzaW5nIHRoZQogICAgICogYGFuYWx5emUoKWAgbWV0aG9kIGluIHRoZSBBbmFseXplciBjbGFzcy4KICAgICAqCiAgICAgKiBCZWNhdXNlIHRoZSBBbmFseXplciBjbGFzcyByZXF1aXJlcyBhIHdob2xlIHNlcmllcyBvZiBvYmplY3RzIHRoYXQgaW50ZXJhY3QgdG9nZXRoZXIgYSBmYWN0b3J5IG1ldGhvZCBgY3JlYXRlKClgCiAgICAgKiBpcyBhdmFpbGFibGUuIFRoaXMgbWV0aG9kIGluc3RhbnRpYXRlcyBhbGwgb2JqZWN0cyBhbmQgcHJvdmlkZXMgYSByZWFzb25hYmxlIGRlZmF1bHQgdG8gc3RhcnQgdXNpbmcgdGhlIEFuYWx5emVyLgogICAgICoKICAgICAqIFRoZXJlIGlzIGFsc28gYSBTZXJ2aWNlIFByb3ZpZGVyIChgXHBocERvY3VtZW50b3JcRGVzY3JpcHRvclxTZXJ2aWNlUHJvdmlkZXJgKSB0aGF0IGNhbiBiZSB1c2VkIHdpdGggZWl0aGVyIFNpbGV4CiAgICAgKiBvciBDaWxleCBpbnN0ZWFkIG9mIHVzaW5nIHRoZSBmYWN0b3J5IG1ldGhvZDsgdGhpcyB3aWxsIG1ha2UgaXQgZWFzaWVyIHRvIHBsdWcgaW4geW91ciBvd24gZmVhdHVyZXMgaWYgeW91IHdhbnQgdG8uCiAgICAgKi8KCi8vIHVzZSBDb21wb3NlcidzIGF1dG9sb2FkZXIgdG8gYWxsb3cgdGhlIGFwcGxpY2F0aW9uIHRvIGF1dG9tYXRpY2FsbHkgbG9hZCBhbGwgY2xhc3NlcyBvbiByZXF1ZXN0Lgp1c2UgcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9qZWN0OwoKaW5jbHVkZSAndmVuZG9yL2F1dG9sb2FkLnBocCc7CgovLyBDcmVhdGUgYSBuZXcgQW5hbHl6ZXIgd2l0aCB3aGljaCB3ZSBjYW4gYW5hbHl6ZSBhIFBIUCBzb3VyY2UgZmlsZQokcHJvamVjdEZhY3RvcnkgPSBccGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxQcm9qZWN0RmFjdG9yeTo6Y3JlYXRlSW5zdGFuY2UoKTsKCi8vIENyZWF0ZSBhbiBhcnJheSBvZiBmaWxlcyB0byBhbmFsaXplLgokZmlsZXMgPSBbIG5ldyBccGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXEZpbGVcTG9jYWxGaWxlKCd0ZXN0cy9leGFtcGxlLmZpbGUucGhwJykgXTsKCi8vY3JlYXRlIGEgbmV3IHByb2plY3QgJ015UHJvamVjdCcgY29udGFpbmluZyBhbGwgZWxlbWVudHMgaW4gdGhlIGZpbGVzLgovKiogQHZhciBQcm9qZWN0ICRwcm9qZWN0ICovCiRwcm9qZWN0ID0gJHByb2plY3RGYWN0b3J5LT5jcmVhdGUoJ015UHJvamVjdCcsICRmaWxlcyk7CgovLyBBcyBhbiBleGFtcGxlIG9mIHdoYXQgeW91IGNhbiBkbywgbGV0J3MgbGlzdCBhbGwgY2xhc3MgbmFtZXMgaW4gdGhlIGZpbGUgJ3Rlc3RzL2V4YW1wbGUuZmlsZS5waHAnLgplY2hvICdMaXN0IGFsbCBjbGFzc2VzIGluIHRoZSBleGFtcGxlIHNvdXJjZSBmaWxlOiAnIC4gUEhQX0VPTDsKCi8qKiBAdmFyIFxwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXENsYXNzXyAkY2xhc3MgKi8KZm9yZWFjaCAoJHByb2plY3QtPmdldEZpbGVzKClbJ3Rlc3RzL2V4YW1wbGUuZmlsZS5waHAnXS0+Z2V0Q2xhc3NlcygpIGFzICRjbGFzcykgewogICAgZWNobyAnLSAnIC4gJGNsYXNzLT5nZXRGcXNlbigpIC4gUEhQX0VPTDsKfQoiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZG9jQmxvY2siO086MzM6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jayI6Nzp7czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBzdW1tYXJ5IjtzOjU1OiJDcmVhdGUgYSBwcm9qZWN0IG1hcCAoc2ltaWxhciB0byBhIHNpdGVtYXApIG9mIHByb2plY3QuIjtzOjQ2OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGRlc2NyaXB0aW9uIjtPOjQ1OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24iOjI6e3M6NTk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AYm9keVRlbXBsYXRlIjtzOjcxNToiVGhlIFJlZmxlY3Rpb24gY29tcG9uZW50IGlzIGNhcGFibGUgb2YgYW5hbHl6aW5nIG9uZSBvciBtb3JlIGZpbGVzIGludG8gYSBoaWVyYXJjaHkgb2Ygb2JqZWN0cyByZXByZXNlbnRpbmcgdGhlCnN0cnVjdHVyZSBvZiB5b3VyIHByb2plY3QuIEl0IGRvZXMgdGhpcyBieSBhbmFseXppbmcgdGhlIHNvdXJjZSBjb2RlIG9mIGVhY2ggaW5kaXZpZHVhbCBmaWxlIHVzaW5nIHRoZQpgYW5hbHl6ZSgpYCBtZXRob2QgaW4gdGhlIEFuYWx5emVyIGNsYXNzLgoKQmVjYXVzZSB0aGUgQW5hbHl6ZXIgY2xhc3MgcmVxdWlyZXMgYSB3aG9sZSBzZXJpZXMgb2Ygb2JqZWN0cyB0aGF0IGludGVyYWN0IHRvZ2V0aGVyIGEgZmFjdG9yeSBtZXRob2QgYGNyZWF0ZSgpYAppcyBhdmFpbGFibGUuIFRoaXMgbWV0aG9kIGluc3RhbnRpYXRlcyBhbGwgb2JqZWN0cyBhbmQgcHJvdmlkZXMgYSByZWFzb25hYmxlIGRlZmF1bHQgdG8gc3RhcnQgdXNpbmcgdGhlIEFuYWx5emVyLgoKVGhlcmUgaXMgYWxzbyBhIFNlcnZpY2UgUHJvdmlkZXIgKGBccGhwRG9jdW1lbnRvclxEZXNjcmlwdG9yXFNlcnZpY2VQcm92aWRlcmApIHRoYXQgY2FuIGJlIHVzZWQgd2l0aCBlaXRoZXIgU2lsZXgKb3IgQ2lsZXggaW5zdGVhZCBvZiB1c2luZyB0aGUgZmFjdG9yeSBtZXRob2Q7IHRoaXMgd2lsbCBtYWtlIGl0IGVhc2llciB0byBwbHVnIGluIHlvdXIgb3duIGZlYXR1cmVzIGlmIHlvdSB3YW50IHRvLiI7czo1MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgB0YWdzIjthOjA6e319czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawB0YWdzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGNvbnRleHQiO086Mzg6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0IjoyOntzOjQ5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFR5cGVzXENvbnRleHQAbmFtZXNwYWNlIjtzOjA6IiI7czo1NjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZUFsaWFzZXMiO2E6MDp7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGxvY2F0aW9uIjtOO3M6NTA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZVN0YXJ0IjtiOjA7czo0ODoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBpc1RlbXBsYXRlRW5kIjtiOjA7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAbWV0YWRhdGEiO2E6MDp7fX0=";