1778987833
441d63ebbc39eba359c9061ece8482bd-phpdoc%3Ab2bf864b90391fc386b65a23c9421b72-9050048b8be0ba6673f4e6a22273bf8a
s:4000:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lIjtzOjEwOiJFdmVudHMucGhwIjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWVzcGFjZXMiO2E6MTp7czo3OiJcQ29uZmlnIjtPOjMwOiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4iOjI6e3M6Mzc6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRnFzZW4AZnFzZW4iO3M6NzoiXENvbmZpZyI7czozNjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxGcXNlbgBuYW1lIjtzOjY6IkNvbmZpZyI7fX1zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGluY2x1ZGVzIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGZ1bmN0aW9ucyI7YTowOnt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjb25zdGFudHMiO2E6MDp7fXM6NDI6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAY2xhc3NlcyI7YTowOnt9czo0NToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBpbnRlcmZhY2VzIjthOjA6e31zOjQxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHRyYWl0cyI7YTowOnt9czo0MDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBlbnVtcyI7YTowOnt9czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBoYXNoIjtzOjMyOiI5MDUwMDQ4YjhiZTBiYTY2NzNmNGU2YTIyMjczYmY4YSI7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBwYXRoIjtzOjIxOiJhcHAvQ29uZmlnL0V2ZW50cy5waHAiO3M6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAc291cmNlIjtzOjE5Mjg6Ijw/cGhwDQoNCm5hbWVzcGFjZSBDb25maWc7DQoNCnVzZSBDb2RlSWduaXRlclxFdmVudHNcRXZlbnRzOw0KdXNlIENvZGVJZ25pdGVyXEV4Y2VwdGlvbnNcRnJhbWV3b3JrRXhjZXB0aW9uOw0KdXNlIENvZGVJZ25pdGVyXEhvdFJlbG9hZGVyXEhvdFJlbG9hZGVyOw0KDQovKg0KICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiAqIEFwcGxpY2F0aW9uIEV2ZW50cw0KICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCiAqIEV2ZW50cyBhbGxvdyB5b3UgdG8gdGFwIGludG8gdGhlIGV4ZWN1dGlvbiBvZiB0aGUgcHJvZ3JhbSB3aXRob3V0DQogKiBtb2RpZnlpbmcgb3IgZXh0ZW5kaW5nIGNvcmUgZmlsZXMuIFRoaXMgZmlsZSBwcm92aWRlcyBhIGNlbnRyYWwNCiAqIGxvY2F0aW9uIHRvIGRlZmluZSB5b3VyIGV2ZW50cywgdGhvdWdoIHRoZXkgY2FuIGFsd2F5cyBiZSBhZGRlZA0KICogYXQgcnVuLXRpbWUsIGFsc28sIGlmIG5lZWRlZC4NCiAqDQogKiBZb3UgY3JlYXRlIGNvZGUgdGhhdCBjYW4gZXhlY3V0ZSBieSBzdWJzY3JpYmluZyB0byBldmVudHMgd2l0aA0KICogdGhlICdvbigpJyBtZXRob2QuIFRoaXMgYWNjZXB0cyBhbnkgZm9ybSBvZiBjYWxsYWJsZSwgaW5jbHVkaW5nDQogKiBDbG9zdXJlcywgdGhhdCB3aWxsIGJlIGV4ZWN1dGVkIHdoZW4gdGhlIGV2ZW50IGlzIHRyaWdnZXJlZC4NCiAqDQogKiBFeGFtcGxlOg0KICogICAgICBFdmVudHM6Om9uKCdjcmVhdGUnLCBbJG15SW5zdGFuY2UsICdteU1ldGhvZCddKTsNCiAqLw0KDQpFdmVudHM6Om9uKCdwcmVfc3lzdGVtJywgc3RhdGljIGZ1bmN0aW9uICgpOiB2b2lkIHsNCiAgICBpZiAoRU5WSVJPTk1FTlQgIT09ICd0ZXN0aW5nJykgew0KICAgICAgICBpZiAoaW5pX2dldCgnemxpYi5vdXRwdXRfY29tcHJlc3Npb24nKSkgew0KICAgICAgICAgICAgdGhyb3cgRnJhbWV3b3JrRXhjZXB0aW9uOjpmb3JFbmFibGVkWmxpYk91dHB1dENvbXByZXNzaW9uKCk7DQogICAgICAgIH0NCg0KICAgICAgICB3aGlsZSAob2JfZ2V0X2xldmVsKCkgPiAwKSB7DQogICAgICAgICAgICBvYl9lbmRfZmx1c2goKTsNCiAgICAgICAgfQ0KDQogICAgICAgIG9iX3N0YXJ0KHN0YXRpYyBmbiAoJGJ1ZmZlcikgPT4gJGJ1ZmZlcik7DQogICAgfQ0KDQogICAgLyoNCiAgICAgKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KICAgICAqIERlYnVnIFRvb2xiYXIgTGlzdGVuZXJzLg0KICAgICAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQogICAgICogSWYgeW91IGRlbGV0ZSwgdGhleSB3aWxsIG5vIGxvbmdlciBiZSBjb2xsZWN0ZWQuDQogICAgICovDQogICAgaWYgKENJX0RFQlVHICYmICEgaXNfY2xpKCkpIHsNCiAgICAgICAgRXZlbnRzOjpvbignREJRdWVyeScsICdDb2RlSWduaXRlclxEZWJ1Z1xUb29sYmFyXENvbGxlY3RvcnNcRGF0YWJhc2U6OmNvbGxlY3QnKTsNCiAgICAgICAgc2VydmljZSgndG9vbGJhcicpLT5yZXNwb25kKCk7DQogICAgICAgIC8vIEhvdCBSZWxvYWQgcm91dGUgLSBmb3IgZnJhbWV3b3JrIHVzZSBvbiB0aGUgaG90IHJlbG9hZGVyLg0KICAgICAgICBpZiAoRU5WSVJPTk1FTlQgPT09ICdkZXZlbG9wbWVudCcpIHsNCiAgICAgICAgICAgIHNlcnZpY2UoJ3JvdXRlcycpLT5nZXQoJ19faG90LXJlbG9hZCcsIHN0YXRpYyBmdW5jdGlvbiAoKTogdm9pZCB7DQogICAgICAgICAgICAgICAgKG5ldyBIb3RSZWxvYWRlcigpKS0+cnVuKCk7DQogICAgICAgICAgICB9KTsNCiAgICAgICAgfQ0KICAgIH0NCn0pOw0KIjtzOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGRvY0Jsb2NrIjtOO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAbWV0YWRhdGEiO2E6MDp7fX0=";