1789595935
c05b9b66eacc8e11cfd97f370d355f8b-phpdoc%3A29676f0e893164cc9ee15d6c4898fa00-66d5bbc55f56a959831dc6d077726f91
s:8904:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lIjtzOjE1OiJwcm92ZWVkb3Jlcy5waHAiO3M6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAbmFtZXNwYWNlcyI7YTowOnt9czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBpbmNsdWRlcyI7YTowOnt9czo0NDoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBmdW5jdGlvbnMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAY29uc3RhbnRzIjthOjA6e31zOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGNsYXNzZXMiO2E6MDp7fXM6NDU6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaW50ZXJmYWNlcyI7YTowOnt9czo0MToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQB0cmFpdHMiO2E6MDp7fXM6NDA6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZW51bXMiO2E6MDp7fXM6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaGFzaCI7czozMjoiNjZkNWJiYzU1ZjU2YTk1OTgzMWRjNmQwNzc3MjZmOTEiO3M6Mzk6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAcGF0aCI7czozNjoiYmFja2VuZC9hcGkvdjIvcnV0YXMvcHJvdmVlZG9yZXMucGhwIjtzOjQxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHNvdXJjZSI7czo0NTQ0OiI8P3BocA0KZGVjbGFyZShzdHJpY3RfdHlwZXM9MSk7DQoNCi8qKg0KICogUnV0YXMgZGUgUFJPVkVFRE9SRVMg4oCUIGRhdG9zIGRlIHByb3ZlZWRvcmVzIHkgc3VzIG1hdHLDrWN1bGFzLg0KICoNCiAqIEBwYWNrYWdlIHRyYWNraW5nXGJhY2tlbmRcYXBpXHYyXHJ1dGFzDQogKi8NCg0KcmV0dXJuIFsNCg0KICAgIC8vIOKUgOKUgCBDQVTDgUxPR09TIFkgTElTVEFET1Mg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSADQoNCiAgICAnZ2V0X2NhdGFsb2dvc19wcm92ZWVkb3JlcycgPT4gbmV3IFJ1dGEoDQogICAgICAgIGFjY2VzbzogIEFjY2Vzbzo6QVVURU5USUNBRE8sDQogICAgICAgIGFtYml0bzogIEFtYml0bzo6VFJBQ0tJTkcsDQogICAgICAgIGhhbmRsZXI6IHN0YXRpYyBmdW5jdGlvbiAoQ29udGV4dG8gJGN0eCk6IG5ldmVyIHsNCiAgICAgICAgICAgIFJlc3B1ZXN0YTo6ZGVsQ29udHJvbGFkb3IoDQogICAgICAgICAgICAgICAgQ29udHJvbGFkb3JQcm92ZWVkb3I6OmdldENhdGFsb2dvcygkY3R4LT5jb25leGlvbklkcykNCiAgICAgICAgICAgICk7DQogICAgICAgIH0sDQogICAgICAgIHBhZ2luYTogJy9wYWdlcy9wcm92ZWVkb3JlcycNCiAgICApLA0KDQogICAgLy8gRW4gbGEgdjEgZXN0YSBhY2Npw7NuIHkgZ2V0X3Byb3ZlZWRvcmVzIGNvbXBhcnTDrWFuIGVsIG1pc21vIGNhc2UuDQogICAgLy8gU2UgbWFudGllbmVuIHNlcGFyYWRhcyBwb3JxdWUgY2FkYSB1bmEgc2UgY29uc3VtZSBkZXNkZSB1bmEgcMOhZ2luYQ0KICAgIC8vIGRpc3RpbnRhLCBhdW5xdWUgZWwgaGFuZGxlciBzZWEgaWTDqW50aWNvLg0KICAgICdnZXRfcHJvdmVlZG9yZXNfZW50cmFkYXMnID0+IG5ldyBSdXRhKA0KICAgICAgICBhY2Nlc286ICBBY2Nlc286OkFVVEVOVElDQURPLA0KICAgICAgICBhbWJpdG86ICBBbWJpdG86OlRSQUNLSU5HLA0KICAgICAgICBoYW5kbGVyOiBzdGF0aWMgZnVuY3Rpb24gKENvbnRleHRvICRjdHgpOiBuZXZlciB7DQogICAgICAgICAgICBSZXNwdWVzdGE6OmRlbENvbnRyb2xhZG9yKA0KICAgICAgICAgICAgICAgIENvbnRyb2xhZG9yUHJvdmVlZG9yOjpnZXRMaXN0YWRvKCRjdHgtPmNvbmV4aW9uSWRzKQ0KICAgICAgICAgICAgKTsNCiAgICAgICAgfSwNCiAgICAgICAgcGFnaW5hOiAnL3BhZ2VzL2VudHJhZGFzJw0KICAgICksDQoNCiAgICAnZ2V0X3Byb3ZlZWRvcmVzJyA9PiBuZXcgUnV0YSgNCiAgICAgICAgYWNjZXNvOiAgQWNjZXNvOjpBVVRFTlRJQ0FETywNCiAgICAgICAgYW1iaXRvOiAgQW1iaXRvOjpUUkFDS0lORywNCiAgICAgICAgaGFuZGxlcjogc3RhdGljIGZ1bmN0aW9uIChDb250ZXh0byAkY3R4KTogbmV2ZXIgew0KICAgICAgICAgICAgUmVzcHVlc3RhOjpkZWxDb250cm9sYWRvcigNCiAgICAgICAgICAgICAgICBDb250cm9sYWRvclByb3ZlZWRvcjo6Z2V0TGlzdGFkbygkY3R4LT5jb25leGlvbklkcykNCiAgICAgICAgICAgICk7DQogICAgICAgIH0sDQogICAgICAgIHBhZ2luYTogWycvcGFnZXMvcHJvdmVlZG9yZXMnLCAnL3BhZ2VzL2VudHJhZGFzJ10NCiAgICApLA0KDQogICAgLy8g4pSA4pSAIEVTQ1JJVFVSQSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIANCg0KICAgICdjcmVhcl9wcm92ZWVkb3InID0+IG5ldyBSdXRhKA0KICAgICAgICBhY2Nlc286ICBBY2Nlc286OkFVVEVOVElDQURPLA0KICAgICAgICBhbWJpdG86ICBBbWJpdG86OlRSQUNLSU5HLA0KICAgICAgICBoYW5kbGVyOiBzdGF0aWMgZnVuY3Rpb24gKENvbnRleHRvICRjdHgpOiBuZXZlciB7DQogICAgICAgICAgICAkZGF0b3MgPSAkY3R4LT5qc29uKCk7DQogICAgICAgICAgICBpZiAoZW1wdHkoJGRhdG9zKSkgew0KICAgICAgICAgICAgICAgIFJlc3B1ZXN0YTo6ZXJyb3IoJ0RhdG9zIHZhY8Otb3MuJywgNDAwKTsNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgUmVzcHVlc3RhOjpkZWxDb250cm9sYWRvcigNCiAgICAgICAgICAgICAgICBDb250cm9sYWRvclByb3ZlZWRvcjo6Y3JlYXIoJGRhdG9zLCAkY3R4LT5jb25leGlvbklkcykNCiAgICAgICAgICAgICk7DQogICAgICAgIH0sDQogICAgICAgIHBhZ2luYTogJy9wYWdlcy9wcm92ZWVkb3JlcycNCiAgICApLA0KDQogICAgLy8gRW4gbGEgdjEgaWJhIGNvbiByZXF1aXJlQXV0aEFwaSB5IHRvbWFiYSBsYSBjb25leGnDs24gZGUgZGVudHJvIGRlbA0KICAgIC8vIHByb3BpbyBwYXlsb2FkIChkYXRvc1snY29uZXhpb25faWQnXSksIHNpbiB2YWxpZGFyIHBlcm1pc28gc29icmUgZWxsYS4NCiAgICAnYWN0dWFsaXphcl9wcm92ZWVkb3InID0+IG5ldyBSdXRhKA0KICAgICAgICBhY2Nlc286ICBBY2Nlc286OkFVVEVOVElDQURPLA0KICAgICAgICBhbWJpdG86ICBBbWJpdG86OlRSQUNLSU5HLA0KICAgICAgICBoYW5kbGVyOiBzdGF0aWMgZnVuY3Rpb24gKENvbnRleHRvICRjdHgpOiBuZXZlciB7DQogICAgICAgICAgICAkZGF0b3MgPSAkY3R4LT5qc29uKCk7DQogICAgICAgICAgICBpZiAoZW1wdHkoJGRhdG9zWydpZCddKSkgew0KICAgICAgICAgICAgICAgIFJlc3B1ZXN0YTo6ZXJyb3IoJ0ZhbHRhIGVsIGlkIGRlbCBwcm92ZWVkb3IuJywgNDAwKTsNCiAgICAgICAgICAgIH0NCg0KICAgICAgICAgICAgLy8gTGEgY29uZXhpw7NuIHBhc2EgYSBzZXIgbGEgeWEgdmFsaWRhZGEgcG9yIGVsIGd1YXJkLCBubyBsYSBxdWUNCiAgICAgICAgICAgIC8vIHZlbmdhIGVuIGVsIGN1ZXJwbyBkZSBsYSBwZXRpY2nDs24uDQogICAgICAgICAgICAkZGF0b3NbJ2NvbmV4aW9uX2lkJ10gPSAkY3R4LT5jb25leGlvbigpOw0KDQogICAgICAgICAgICBSZXNwdWVzdGE6OmRlbENvbnRyb2xhZG9yKENvbnRyb2xhZG9yUHJvdmVlZG9yOjphY3R1YWxpemFyKCRkYXRvcykpOw0KICAgICAgICB9LA0KICAgICAgICBwYWdpbmE6ICcvcGFnZXMvcHJvdmVlZG9yZXMnDQogICAgKSwNCg0KICAgIC8vIOKUgOKUgCBNQVRSw41DVUxBUyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIANCg0KICAgICdnZXRfbWF0cmljdWxhc19wcm92ZWVkb3InID0+IG5ldyBSdXRhKA0KICAgICAgICBhY2Nlc286ICBBY2Nlc286OkFVVEVOVElDQURPLA0KICAgICAgICBhbWJpdG86ICBBbWJpdG86OlRSQUNLSU5HLA0KICAgICAgICBoYW5kbGVyOiBzdGF0aWMgZnVuY3Rpb24gKENvbnRleHRvICRjdHgpOiBuZXZlciB7DQogICAgICAgICAgICBSZXNwdWVzdGE6OmRlbENvbnRyb2xhZG9yKENvbnRyb2xhZG9yTWF0cmljdWxhUHJvdmVlZG9yOjpnZXRCeVByb3ZlZWRvcigNCiAgICAgICAgICAgICAgICAkY3R4LT5wb3N0SW50KCdpZFByb3ZlZWRvcicpLA0KICAgICAgICAgICAgICAgICRjdHgtPmNvbmV4aW9uSWRzDQogICAgICAgICAgICApKTsNCiAgICAgICAgfSwNCiAgICAgICAgcGFnaW5hOiAnL3BhZ2VzL2VudHJhZGFzJw0KICAgICksDQoNCiAgICAnYWRkX21hdHJpY3VsYV9wcm92ZWVkb3InID0+IG5ldyBSdXRhKA0KICAgICAgICBhY2Nlc286ICBBY2Nlc286OkFVVEVOVElDQURPLA0KICAgICAgICBhbWJpdG86ICBBbWJpdG86OlRSQUNLSU5HLA0KICAgICAgICBoYW5kbGVyOiBzdGF0aWMgZnVuY3Rpb24gKENvbnRleHRvICRjdHgpOiBuZXZlciB7DQogICAgICAgICAgICAkaWRQcm92ZWVkb3IgPSAkY3R4LT5wb3N0SW50KCdpZFByb3ZlZWRvcicpOw0KICAgICAgICAgICAgJG1hdHJpY3VsYSAgID0gdHJpbSgkY3R4LT5wb3N0KCduTWF0cmljdWxhJykpOw0KDQogICAgICAgICAgICBpZiAoJGlkUHJvdmVlZG9yIDw9IDApICBSZXNwdWVzdGE6OmVycm9yKCdGYWx0YSBlbCBwcm92ZWVkb3IuJywgNDAwKTsNCiAgICAgICAgICAgIGlmICgkbWF0cmljdWxhID09PSAnJykgIFJlc3B1ZXN0YTo6ZXJyb3IoJ0xhIG1hdHLDrWN1bGEgZXMgb2JsaWdhdG9yaWEuJywgNDAwKTsNCg0KICAgICAgICAgICAgUmVzcHVlc3RhOjpkZWxDb250cm9sYWRvcihDb250cm9sYWRvck1hdHJpY3VsYVByb3ZlZWRvcjo6aW5zZXJ0KA0KICAgICAgICAgICAgICAgICRpZFByb3ZlZWRvciwNCiAgICAgICAgICAgICAgICAkbWF0cmljdWxhLA0KICAgICAgICAgICAgICAgICRjdHgtPmNvbmV4aW9uSWRzDQogICAgICAgICAgICApKTsNCiAgICAgICAgfSwNCiAgICAgICAgcGFnaW5hOiAnL3BhZ2VzL2VudHJhZGFzJw0KICAgICksDQpdOyI7czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBkb2NCbG9jayI7TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrIjo3OntzOjQyOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHN1bW1hcnkiO3M6NjQ6IlJ1dGFzIGRlIFBST1ZFRURPUkVTIOKAlCBkYXRvcyBkZSBwcm92ZWVkb3JlcyB5IHN1cyBtYXRyw61jdWxhcy4iO3M6NDY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAZGVzY3JpcHRpb24iO086NDU6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbiI6Mjp7czo1OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xEZXNjcmlwdGlvbgBib2R5VGVtcGxhdGUiO3M6MDoiIjtzOjUxOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAHRhZ3MiO2E6MDp7fX1zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAHRhZ3MiO2E6MTp7aTowO086NDY6InBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9ja1xUYWdzXEdlbmVyaWMiOjI6e3M6NzoiACoAbmFtZSI7czo3OiJwYWNrYWdlIjtzOjE0OiIAKgBkZXNjcmlwdGlvbiI7Tzo0NToicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uIjoyOntzOjU5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrXERlc2NyaXB0aW9uAGJvZHlUZW1wbGF0ZSI7czoyOToidHJhY2tpbmdcYmFja2VuZFxhcGlcdjJccnV0YXMiO3M6NTE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2tcRGVzY3JpcHRpb24AdGFncyI7YTowOnt9fX19czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBjb250ZXh0IjtPOjM4OiJwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dCI6Mjp7czo0OToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxUeXBlc1xDb250ZXh0AG5hbWVzcGFjZSI7czowOiIiO3M6NTY6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cVHlwZXNcQ29udGV4dABuYW1lc3BhY2VBbGlhc2VzIjthOjA6e319czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxEb2NCbG9jawBsb2NhdGlvbiI7TjtzOjUwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXERvY0Jsb2NrAGlzVGVtcGxhdGVTdGFydCI7YjowO3M6NDg6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cRG9jQmxvY2sAaXNUZW1wbGF0ZUVuZCI7YjowO31zOjQzOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG1ldGFkYXRhIjthOjA6e319";