1778692621
441d63ebbc39eba359c9061ece8482bd-phpdoc%3Af48c12f4f29482ad7b26e2e303ee6a95-adefa0cfb2afc12dfd1164be9574760f
s:28684:"TzozMzoicGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlIjoxNDp7czozOToiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBuYW1lIjtzOjI4OiJndWlkZXMtcmVzdHJ1Y3R1cmVkLXRleHQucGhwIjtzOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAG5hbWVzcGFjZXMiO2E6MDp7fXM6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAaW5jbHVkZXMiO2E6MDp7fXM6NDQ6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZnVuY3Rpb25zIjthOjA6e31zOjQ0OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGNvbnN0YW50cyI7YTowOnt9czo0MjoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBjbGFzc2VzIjthOjA6e31zOjQ1OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGludGVyZmFjZXMiO2E6MDp7fXM6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAdHJhaXRzIjthOjA6e31zOjQwOiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGVudW1zIjthOjA6e31zOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAGhhc2giO3M6MzI6ImFkZWZhMGNmYjJhZmMxMmRmZDExNjRiZTk1NzQ3NjBmIjtzOjM5OiIAcGhwRG9jdW1lbnRvclxSZWZsZWN0aW9uXFBocFxGaWxlAHBhdGgiO3M6OTE6InZlbmRvci9waHBkb2N1bWVudG9yL2d1aWRlcy1yZXN0cnVjdHVyZWQtdGV4dC9yZXNvdXJjZXMvY29uZmlnL2d1aWRlcy1yZXN0cnVjdHVyZWQtdGV4dC5waHAiO3M6NDE6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAc291cmNlIjtzOjIwNTIzOiI8P3BocAoKZGVjbGFyZShzdHJpY3RfdHlwZXM9MSk7Cgp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVmZXJlbmNlUmVzb2x2ZXJzXERvY3VtZW50TmFtZVJlc29sdmVySW50ZXJmYWNlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXEFkbW9uaXRpb25EaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcQXR0ZW50aW9uRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXEJhc2VEaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcQnJlYWRjcnVtYkRpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xDYXV0aW9uRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXENsYXNzRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXENvZGVCbG9ja0RpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xDb25maWd1cmF0aW9uQmxvY2tEaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcQ29uZnZhbERpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xDb250YWluZXJEaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcQ29udGVudHNEaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcQ3N2VGFibGVEaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcRGFuZ2VyRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXERlZmF1bHRSb2xlRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXERlcHJlY2F0ZWREaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcRG9jdW1lbnRCbG9ja0RpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xFcGlncmFwaERpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xFcnJvckRpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xGaWd1cmVEaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcR2VuZXJhbERpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xIaWdobGlnaHREaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcSGlnaGxpZ2h0c0RpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xIaW50RGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXEltYWdlRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXEltcG9ydGFudERpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xJbmNsdWRlRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXEluZGV4RGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXExhVGVYTWFpbjsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xMaXN0VGFibGVEaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcTGl0ZXJhbGluY2x1ZGVEaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcTWF0aERpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xNZW51RGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXE1ldGFEaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcTm90ZURpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xPcHRpb25EaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcT3B0aW9uTWFwcGVyXENvZGVOb2RlT3B0aW9uTWFwcGVyOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXE9wdGlvbk1hcHBlclxEZWZhdWx0Q29kZU5vZGVPcHRpb25NYXBwZXI7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcUHVsbFF1b3RlRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXFJhd0RpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xSZXBsYWNlRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXFJvbGVEaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcU2VjdGlvbmF1dGhvckRpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xTZWVBbHNvRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXFNpZGViYXJEaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcU3ViRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXFRhYkRpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xUYWJsZURpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xUYWJzRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXFRlc3RMb2dnZXJEaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcVGlwRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXFRpdGxlRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxEaXJlY3RpdmVzXFRvY3RyZWVEaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcVG9kb0RpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xWZXJzaW9uQWRkZWREaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcVmVyc2lvbkNoYW5nZWREaXJlY3RpdmU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XERpcmVjdGl2ZXNcV2FybmluZ0RpcmVjdGl2ZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcRGlyZWN0aXZlc1xZb3V0dWJlRGlyZWN0aXZlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxNYXJrdXBMYW5ndWFnZVBhcnNlcjsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcUGFyc2VyXERvY3VtZW50UGFyc2VyQ29udGV4dEZhY3Rvcnk7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxJbmxpbmVQYXJzZXI7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxJbnRlcmxpbmtcRGVmYXVsdEludGVybGlua1BhcnNlcjsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcUGFyc2VyXEludGVybGlua1xJbnRlcmxpbmtQYXJzZXI7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xBbm5vdGF0aW9uUnVsZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcUGFyc2VyXFByb2R1Y3Rpb25zXEJsb2NrUXVvdGVSdWxlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcQ29tbWVudFJ1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xEZWZpbml0aW9uTGlzdFJ1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xEaXJlY3RpdmVDb250ZW50UnVsZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcUGFyc2VyXFByb2R1Y3Rpb25zXERpcmVjdGl2ZVJ1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xEb2N1bWVudFJ1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xFbnVtZXJhdGVkTGlzdFJ1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xGaWVsZExpc3RcQWJzdHJhY3RGaWVsZExpc3RJdGVtUnVsZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcUGFyc2VyXFByb2R1Y3Rpb25zXEZpZWxkTGlzdFxBZGRyZXNzRmllbGRMaXN0SXRlbVJ1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xGaWVsZExpc3RcQXV0aG9yRmllbGRMaXN0SXRlbVJ1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xGaWVsZExpc3RcQXV0aG9yc0ZpZWxkTGlzdEl0ZW1SdWxlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcRmllbGRMaXN0XENvbnRhY3RGaWVsZExpc3RJdGVtUnVsZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcUGFyc2VyXFByb2R1Y3Rpb25zXEZpZWxkTGlzdFxDb3B5cmlnaHRGaWVsZExpc3RJdGVtUnVsZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcUGFyc2VyXFByb2R1Y3Rpb25zXEZpZWxkTGlzdFxEYXRlRmllbGRMaXN0SXRlbVJ1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xGaWVsZExpc3RcRGVkaWNhdGlvbkZpZWxkTGlzdEl0ZW1SdWxlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcRmllbGRMaXN0XEZpZWxkTGlzdEl0ZW1SdWxlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcRmllbGRMaXN0XE5hdmlnYXRpb25UaXRsZUZpZWxkTGlzdEl0ZW1SdWxlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcRmllbGRMaXN0XE5vY29tbWVudHNGaWVsZExpc3RJdGVtUnVsZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcUGFyc2VyXFByb2R1Y3Rpb25zXEZpZWxkTGlzdFxOb3NlYXJjaEZpZWxkTGlzdEl0ZW1SdWxlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcRmllbGRMaXN0XE9yZ2FuaXphdGlvbkZpZWxkTGlzdEl0ZW1SdWxlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcRmllbGRMaXN0XE9ycGhhbkZpZWxkTGlzdEl0ZW1SdWxlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcRmllbGRMaXN0XFByb2plY3RGaWVsZExpc3RJdGVtUnVsZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcUGFyc2VyXFByb2R1Y3Rpb25zXEZpZWxkTGlzdFxSZXZpc2lvbkZpZWxkTGlzdEl0ZW1SdWxlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcRmllbGRMaXN0XFRvY0RlcHRoRmllbGRMaXN0SXRlbVJ1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xGaWVsZExpc3RcVmVyc2lvbkZpZWxkTGlzdEl0ZW1SdWxlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcRmllbGRMaXN0UnVsZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcUGFyc2VyXFByb2R1Y3Rpb25zXEdyaWRUYWJsZVJ1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xJbmxpbmVNYXJrdXBSdWxlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcSW5saW5lUnVsZXNcSW5saW5lUnVsZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcUGFyc2VyXFByb2R1Y3Rpb25zXExpbmVCbG9ja1J1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xMaW5rUnVsZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcUGFyc2VyXFByb2R1Y3Rpb25zXExpc3RSdWxlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcTGl0ZXJhbEJsb2NrUnVsZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcUGFyc2VyXFByb2R1Y3Rpb25zXFBhcmFncmFwaFJ1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xSdWxlQ29udGFpbmVyOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcU2VjdGlvblJ1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xTaW1wbGVUYWJsZVJ1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFBhcnNlclxQcm9kdWN0aW9uc1xUYWJsZVxHcmlkVGFibGVCdWlsZGVyOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcVGl0bGVSdWxlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxQYXJzZXJcUHJvZHVjdGlvbnNcVHJhbnNpdGlvblJ1bGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFRleHRSb2xlc1xBYmJyZXZpYXRpb25UZXh0Um9sZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcVGV4dFJvbGVzXEFwaUNsYXNzVGV4dFJvbGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFRleHRSb2xlc1xEZWZhdWx0VGV4dFJvbGVGYWN0b3J5Owp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxUZXh0Um9sZXNcRG9jUmVmZXJlbmNlVGV4dFJvbGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFRleHRSb2xlc1xHZW5lcmljTGlua1Byb3ZpZGVyOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxUZXh0Um9sZXNcR2VuZXJpY1JlZmVyZW5jZVRleHRSb2xlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxUZXh0Um9sZXNcR2VuZXJpY1RleHRSb2xlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxUZXh0Um9sZXNcTGl0ZXJhbFRleHRSb2xlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxUZXh0Um9sZXNcTWF0aFRleHRSb2xlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxUZXh0Um9sZXNcTmJzcFRleHRSb2xlOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcUmVzdHJ1Y3R1cmVkVGV4dFxUZXh0Um9sZXNcUmVmZXJlbmNlVGV4dFJvbGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFRleHRSb2xlc1xTcGFuVGV4dFJvbGU7CnVzZSBwaHBEb2N1bWVudG9yXEd1aWRlc1xSZXN0cnVjdHVyZWRUZXh0XFRleHRSb2xlc1xUZXh0Um9sZTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcVGV4dFJvbGVzXFRleHRSb2xlRmFjdG9yeTsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcVG9jXEdsb2JTZWFyY2hlcjsKdXNlIHBocERvY3VtZW50b3JcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcVG9jXFRvY3RyZWVCdWlsZGVyOwp1c2UgcGhwRG9jdW1lbnRvclxHdWlkZXNcU2V0dGluZ3NcU2V0dGluZ3NNYW5hZ2VyOwp1c2UgUHNyXExvZ1xMb2dnZXJJbnRlcmZhY2U7CnVzZSBTeW1mb255XENvbXBvbmVudFxEZXBlbmRlbmN5SW5qZWN0aW9uXExvYWRlclxDb25maWd1cmF0b3JcQ29udGFpbmVyQ29uZmlndXJhdG9yOwoKdXNlIGZ1bmN0aW9uIFN5bWZvbnlcQ29tcG9uZW50XERlcGVuZGVuY3lJbmplY3Rpb25cTG9hZGVyXENvbmZpZ3VyYXRvclxpbmxpbmVfc2VydmljZTsKdXNlIGZ1bmN0aW9uIFN5bWZvbnlcQ29tcG9uZW50XERlcGVuZGVuY3lJbmplY3Rpb25cTG9hZGVyXENvbmZpZ3VyYXRvclxwYXJhbTsKdXNlIGZ1bmN0aW9uIFN5bWZvbnlcQ29tcG9uZW50XERlcGVuZGVuY3lJbmplY3Rpb25cTG9hZGVyXENvbmZpZ3VyYXRvclxzZXJ2aWNlOwp1c2UgZnVuY3Rpb24gU3ltZm9ueVxDb21wb25lbnRcRGVwZW5kZW5jeUluamVjdGlvblxMb2FkZXJcQ29uZmlndXJhdG9yXHRhZ2dlZF9pdGVyYXRvcjsKCnJldHVybiBzdGF0aWMgZnVuY3Rpb24gKENvbnRhaW5lckNvbmZpZ3VyYXRvciAkY29udGFpbmVyKTogdm9pZCB7CiAgICAkY29udGFpbmVyLT5zZXJ2aWNlcygpCiAgICAgICAgLT5kZWZhdWx0cygpCiAgICAgICAgLT5hdXRvd2lyZSgpCiAgICAgICAgLT5hdXRvY29uZmlndXJlKCkKICAgICAgICAtPmJpbmQoJyRib2R5RWxlbWVudHMnLCBzZXJ2aWNlKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuYm9keV9lbGVtZW50cycpKQogICAgICAgIC0+YmluZCgnJHN0cnVjdHVyYWxFbGVtZW50cycsIHNlcnZpY2UoJ3BocGRvYy5ndWlkZXMucGFyc2VyLnJzdC5zdHJ1Y3R1cmFsX2VsZW1lbnRzJykpCiAgICAgICAgLT5pbnN0YW5jZW9mKEJhc2VEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLmRpcmVjdGl2ZScpCiAgICAgICAgLT5pbnN0YW5jZW9mKEZpZWxkTGlzdEl0ZW1SdWxlOjpjbGFzcykKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LmZpZWxkbGlzdCcpCiAgICAgICAgLT5pbnN0YW5jZW9mKElubGluZVJ1bGU6OmNsYXNzKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuaW5saW5lX3J1bGUnKQogICAgICAgIC0+aW5zdGFuY2VvZihUZXh0Um9sZTo6Y2xhc3MpCiAgICAgICAgLT50YWcoJ3BocGRvYy5ndWlkZXMucGFyc2VyLnJzdC50ZXh0X3JvbGUnKQogICAgICAgIC0+aW5zdGFuY2VvZihTdWJEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+YmluZCgnJHN0YXJ0aW5nUnVsZScsIHNlcnZpY2UoRGlyZWN0aXZlQ29udGVudFJ1bGU6OmNsYXNzKSkKCiAgICAgICAgLT5sb2FkKAogICAgICAgICAgICAncGhwRG9jdW1lbnRvclxcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcXFBhcnNlclxcUHJvZHVjdGlvbnNcXElubGluZVJ1bGVzXFwnLAogICAgICAgICAgICAnLi4vLi4vc3JjL1Jlc3RydWN0dXJlZFRleHQvUGFyc2VyL1Byb2R1Y3Rpb25zL0lubGluZVJ1bGVzJywKICAgICAgICApCiAgICAgICAgLT5sb2FkKAogICAgICAgICAgICAncGhwRG9jdW1lbnRvclxcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcXE5vZGVSZW5kZXJlcnNcXEh0bWxcXCcsCiAgICAgICAgICAgICcuLi8uLi9zcmMvUmVzdHJ1Y3R1cmVkVGV4dC9Ob2RlUmVuZGVyZXJzL0h0bWwnLAogICAgICAgICkKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5ub2RlcmVuZGVyZXIuaHRtbCcpCiAgICAgICAgLT5sb2FkKAogICAgICAgICAgICAncGhwRG9jdW1lbnRvclxcR3VpZGVzXFJlc3RydWN0dXJlZFRleHRcXE5vZGVSZW5kZXJlcnNcXExhVGVYXFwnLAogICAgICAgICAgICAnLi4vLi4vc3JjL1Jlc3RydWN0dXJlZFRleHQvTm9kZVJlbmRlcmVycy9MYVRlWCcsCiAgICAgICAgKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLm5vZGVyZW5kZXJlci50ZXgnKQoKICAgICAgICAtPnNldChHZW5lcmljTGlua1Byb3ZpZGVyOjpjbGFzcykKCiAgICAgICAgLT5zZXQoRGlyZWN0aXZlQ29udGVudFJ1bGU6OmNsYXNzKQogICAgICAgIC0+c2V0KERvY1JlZmVyZW5jZVRleHRSb2xlOjpjbGFzcykKICAgICAgICAtPnNldChHZW5lcmljUmVmZXJlbmNlVGV4dFJvbGU6OmNsYXNzKQogICAgICAgIC0+c2V0KFJlZmVyZW5jZVRleHRSb2xlOjpjbGFzcykKICAgICAgICAtPnNldChBYmJyZXZpYXRpb25UZXh0Um9sZTo6Y2xhc3MpCiAgICAgICAgLT5zZXQoQXBpQ2xhc3NUZXh0Um9sZTo6Y2xhc3MpCiAgICAgICAgLT5zZXQoTWF0aFRleHRSb2xlOjpjbGFzcykKICAgICAgICAtPnNldChMaXRlcmFsVGV4dFJvbGU6OmNsYXNzKQogICAgICAgIC0+c2V0KE5ic3BUZXh0Um9sZTo6Y2xhc3MpCiAgICAgICAgLT5zZXQoU3BhblRleHRSb2xlOjpjbGFzcykKCiAgICAgICAgLT5zZXQoR2VuZXJhbERpcmVjdGl2ZTo6Y2xhc3MpCiAgICAgICAgLT5zZXQoQWRtb25pdGlvbkRpcmVjdGl2ZTo6Y2xhc3MpCiAgICAgICAgLT5zZXQoQXR0ZW50aW9uRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChCcmVhZGNydW1iRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChDYXV0aW9uRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChDbGFzc0RpcmVjdGl2ZTo6Y2xhc3MpCiAgICAgICAgLT5zZXQoQ29kZUJsb2NrRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPmFyZ3MoWwogICAgICAgICAgICAnJGNvZGVOb2RlT3B0aW9uTWFwcGVyJyA9PiBzZXJ2aWNlKENvZGVOb2RlT3B0aW9uTWFwcGVyOjpjbGFzcyksCiAgICAgICAgXSkKICAgICAgICAtPnNldChDb25mdmFsRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChDb25maWd1cmF0aW9uQmxvY2tEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+YXJncyhbCiAgICAgICAgICAgICckbGFuZ3VhZ2VMYWJlbHMnID0+IHBhcmFtKCdwaHBkb2MucnN0LmNvZGVfbGFuZ3VhZ2VfbGFiZWxzJyksCiAgICAgICAgXSkKICAgICAgICAtPnNldChDb250YWluZXJEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KENvbnRlbnRzRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPmFyZygnJGRvY3VtZW50TmFtZVJlc29sdmVyJywgc2VydmljZShEb2N1bWVudE5hbWVSZXNvbHZlckludGVyZmFjZTo6Y2xhc3MpKQogICAgICAgIC0+c2V0KENzdlRhYmxlRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPmFyZygnJHByb2R1Y3Rpb25zJywgc2VydmljZSgncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LmJvZHlfZWxlbWVudHMnKSkKICAgICAgICAtPnNldChEYW5nZXJEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KERlZmF1bHRSb2xlRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChEZXByZWNhdGVkRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChEb2N1bWVudEJsb2NrRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChFcGlncmFwaERpcmVjdGl2ZTo6Y2xhc3MpCiAgICAgICAgLT5zZXQoRXJyb3JEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KEZpZ3VyZURpcmVjdGl2ZTo6Y2xhc3MpCiAgICAgICAgLT5zZXQoSGlnaGxpZ2h0RGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChIaWdobGlnaHRzRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChIaW50RGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChJbWFnZURpcmVjdGl2ZTo6Y2xhc3MpCiAgICAgICAgLT5zZXQoSW1wb3J0YW50RGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChJbmNsdWRlRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPmFyZygnJHN0YXJ0aW5nUnVsZScsIHNlcnZpY2UoRG9jdW1lbnRSdWxlOjpjbGFzcykpCiAgICAgICAgLT5zZXQoSW5kZXhEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KExhVGVYTWFpbjo6Y2xhc3MpCiAgICAgICAgLT5zZXQoTGlzdFRhYmxlRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChMaXRlcmFsaW5jbHVkZURpcmVjdGl2ZTo6Y2xhc3MpCiAgICAgICAgLT5hcmdzKFsKICAgICAgICAgICAgJyRjb2RlTm9kZU9wdGlvbk1hcHBlcicgPT4gc2VydmljZSgKICAgICAgICAgICAgICAgIENvZGVOb2RlT3B0aW9uTWFwcGVyOjpjbGFzcywKICAgICAgICAgICAgKSwKICAgICAgICBdKQogICAgICAgIC0+c2V0KE1hdGhEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KE1ldGFEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KE5vdGVEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KE9wdGlvbkRpcmVjdGl2ZTo6Y2xhc3MpCiAgICAgICAgLT5zZXQoUHVsbFF1b3RlRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChSYXdEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KFJlcGxhY2VEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KFJvbGVEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KFNlY3Rpb25hdXRob3JEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KFNlZUFsc29EaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KFNpZGViYXJEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KFRhYmxlRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChUZXN0TG9nZ2VyRGlyZWN0aXZlOjpjbGFzcykKICAgICAgICAtPnNldChUaXBEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KFRhYkRpcmVjdGl2ZTo6Y2xhc3MpCiAgICAgICAgLT5zZXQoVGFic0RpcmVjdGl2ZTo6Y2xhc3MpCiAgICAgICAgLT5zZXQoVGl0bGVEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KFRvY3RyZWVEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+YmluZCgnJHN0YXJ0aW5nUnVsZScsIHNlcnZpY2UoSW5saW5lTWFya3VwUnVsZTo6Y2xhc3MpKQogICAgICAgIC0+c2V0KE1lbnVEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KFRvZG9EaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KFZlcnNpb25BZGRlZERpcmVjdGl2ZTo6Y2xhc3MpCiAgICAgICAgLT5zZXQoVmVyc2lvbkNoYW5nZWREaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KFdhcm5pbmdEaXJlY3RpdmU6OmNsYXNzKQogICAgICAgIC0+c2V0KFlvdXR1YmVEaXJlY3RpdmU6OmNsYXNzKQoKICAgICAgICAtPnNldChHZW5lcmljVGV4dFJvbGU6OmNsYXNzLCBHZW5lcmljVGV4dFJvbGU6OmNsYXNzKQogICAgICAgIC0+YXJnKCckc2V0dGluZ3NNYW5hZ2VyJywgaW5saW5lX3NlcnZpY2UoU2V0dGluZ3NNYW5hZ2VyOjpjbGFzcykpCiAgICAgICAgLT5zZXQoRGVmYXVsdFRleHRSb2xlRmFjdG9yeTo6Y2xhc3MsIERlZmF1bHRUZXh0Um9sZUZhY3Rvcnk6OmNsYXNzKQogICAgICAgIC0+YXJnKCckZ2VuZXJpY1RleHRSb2xlJywgc2VydmljZShHZW5lcmljVGV4dFJvbGU6OmNsYXNzKSkKCiAgICAgICAgLT5hcmcoJyRkZWZhdWx0VGV4dFJvbGUnLCBpbmxpbmVfc2VydmljZShMaXRlcmFsVGV4dFJvbGU6OmNsYXNzKSkKICAgICAgICAtPmFyZygnJHRleHRSb2xlcycsIHRhZ2dlZF9pdGVyYXRvcigncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LnRleHRfcm9sZScpKQogICAgICAgIC0+YWxpYXMoVGV4dFJvbGVGYWN0b3J5OjpjbGFzcywgRGVmYXVsdFRleHRSb2xlRmFjdG9yeTo6Y2xhc3MpCgogICAgICAgIC0+c2V0KCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuYm9keV9lbGVtZW50cycsIFJ1bGVDb250YWluZXI6OmNsYXNzKQogICAgICAgIC0+c2V0KCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3Quc3RydWN0dXJhbF9lbGVtZW50cycsIFJ1bGVDb250YWluZXI6OmNsYXNzKQoKICAgICAgICAtPnNldChJbnRlcmxpbmtQYXJzZXI6OmNsYXNzLCBEZWZhdWx0SW50ZXJsaW5rUGFyc2VyOjpjbGFzcykKCiAgICAgICAgLT5zZXQoQW5ub3RhdGlvblJ1bGU6OmNsYXNzKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuYm9keV9lbGVtZW50JywgWydwcmlvcml0eScgPT4gQW5ub3RhdGlvblJ1bGU6OlBSSU9SSVRZXSkKICAgICAgICAtPnNldChMaW5rUnVsZTo6Y2xhc3MpCiAgICAgICAgLT50YWcoJ3BocGRvYy5ndWlkZXMucGFyc2VyLnJzdC5ib2R5X2VsZW1lbnQnLCBbJ3ByaW9yaXR5JyA9PiBMaW5rUnVsZTo6UFJJT1JJVFldKQogICAgICAgIC0+c2V0KExpdGVyYWxCbG9ja1J1bGU6OmNsYXNzKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuYm9keV9lbGVtZW50JywgWydwcmlvcml0eScgPT4gTGl0ZXJhbEJsb2NrUnVsZTo6UFJJT1JJVFldKQogICAgICAgIC0+c2V0KEJsb2NrUXVvdGVSdWxlOjpjbGFzcykKICAgICAgICAtPmFyZygnJHN0YXJ0aW5nUnVsZScsIHNlcnZpY2UoRGlyZWN0aXZlQ29udGVudFJ1bGU6OmNsYXNzKSkKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LmJvZHlfZWxlbWVudCcsIFsncHJpb3JpdHknID0+IEJsb2NrUXVvdGVSdWxlOjpQUklPUklUWV0pCiAgICAgICAgLT5zZXQoTGlzdFJ1bGU6OmNsYXNzKQogICAgICAgIC0+YXJnKCckcHJvZHVjdGlvbnMnLCBzZXJ2aWNlKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuYm9keV9lbGVtZW50cycpKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuYm9keV9lbGVtZW50JywgWydwcmlvcml0eScgPT4gTGlzdFJ1bGU6OlBSSU9SSVRZXSkKICAgICAgICAtPnNldChFbnVtZXJhdGVkTGlzdFJ1bGU6OmNsYXNzKQogICAgICAgIC0+YXJnKCckcHJvZHVjdGlvbnMnLCBzZXJ2aWNlKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuYm9keV9lbGVtZW50cycpKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuYm9keV9lbGVtZW50JywgWydwcmlvcml0eScgPT4gRW51bWVyYXRlZExpc3RSdWxlOjpQUklPUklUWV0pCiAgICAgICAgLT5zZXQoTGluZUJsb2NrUnVsZTo6Y2xhc3MpCiAgICAgICAgLT50YWcoJ3BocGRvYy5ndWlkZXMucGFyc2VyLnJzdC5ib2R5X2VsZW1lbnQnLCBbJ3ByaW9yaXR5JyA9PiBQYXJhZ3JhcGhSdWxlOjpQUklPUklUWSArIDFdKQogICAgICAgIC0+c2V0KERpcmVjdGl2ZVJ1bGU6OmNsYXNzKQogICAgICAgIC0+YXJnKCckZGlyZWN0aXZlcycsIHRhZ2dlZF9pdGVyYXRvcigncGhwZG9jLmd1aWRlcy5kaXJlY3RpdmUnKSkKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LmJvZHlfZWxlbWVudCcsIFsncHJpb3JpdHknID0+IERpcmVjdGl2ZVJ1bGU6OlBSSU9SSVRZXSkKICAgICAgICAtPnNldChDb21tZW50UnVsZTo6Y2xhc3MpCiAgICAgICAgLT50YWcoJ3BocGRvYy5ndWlkZXMucGFyc2VyLnJzdC5ib2R5X2VsZW1lbnQnLCBbJ3ByaW9yaXR5JyA9PiBDb21tZW50UnVsZTo6UFJJT1JJVFldKQogICAgICAgIC0+c2V0KEdyaWRUYWJsZVJ1bGU6OmNsYXNzKQogICAgICAgIC0+YXJnKCckcHJvZHVjdGlvbnMnLCBzZXJ2aWNlKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuYm9keV9lbGVtZW50cycpKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuYm9keV9lbGVtZW50JywgWydwcmlvcml0eScgPT4gR3JpZFRhYmxlUnVsZTo6UFJJT1JJVFldKQogICAgICAgIC0+c2V0KEdyaWRUYWJsZUJ1aWxkZXI6OmNsYXNzKQogICAgICAgIC0+c2V0KFNpbXBsZVRhYmxlUnVsZTo6Y2xhc3MpCiAgICAgICAgLT5hcmcoJyRwcm9kdWN0aW9ucycsIHNlcnZpY2UoJ3BocGRvYy5ndWlkZXMucGFyc2VyLnJzdC5ib2R5X2VsZW1lbnRzJykpCiAgICAgICAgLT50YWcoJ3BocGRvYy5ndWlkZXMucGFyc2VyLnJzdC5ib2R5X2VsZW1lbnQnLCBbJ3ByaW9yaXR5JyA9PiBTaW1wbGVUYWJsZVJ1bGU6OlBSSU9SSVRZXSkKICAgICAgICAtPnNldChEZWZpbml0aW9uTGlzdFJ1bGU6OmNsYXNzKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuYm9keV9lbGVtZW50JywgWydwcmlvcml0eScgPT4gRGVmaW5pdGlvbkxpc3RSdWxlOjpQUklPUklUWV0pCiAgICAgICAgLT5zZXQoRmllbGRMaXN0UnVsZTo6Y2xhc3MpCiAgICAgICAgLT5hcmcoJyRwcm9kdWN0aW9ucycsIHNlcnZpY2UoJ3BocGRvYy5ndWlkZXMucGFyc2VyLnJzdC5ib2R5X2VsZW1lbnRzJykpCiAgICAgICAgLT5hcmcoJyRmaWVsZExpc3RJdGVtUnVsZXMnLCB0YWdnZWRfaXRlcmF0b3IoJ3BocGRvYy5ndWlkZXMucGFyc2VyLnJzdC5maWVsZGxpc3QnKSkKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LmJvZHlfZWxlbWVudCcsIFsncHJpb3JpdHknID0+IEZpZWxkTGlzdFJ1bGU6OlBSSU9SSVRZXSkKICAgICAgICAtPnNldChQYXJhZ3JhcGhSdWxlOjpjbGFzcykKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LmJvZHlfZWxlbWVudCcsIFsncHJpb3JpdHknID0+IFBhcmFncmFwaFJ1bGU6OlBSSU9SSVRZXSkKICAgICAgICAtPnNldChUcmFuc2l0aW9uUnVsZTo6Y2xhc3MpCiAgICAgICAgLT50YWcoJ3BocGRvYy5ndWlkZXMucGFyc2VyLnJzdC5ib2R5X2VsZW1lbnQnLCBbJ3ByaW9yaXR5JyA9PiBUcmFuc2l0aW9uUnVsZTo6UFJJT1JJVFldKQogICAgICAgIC0+c2V0KElubGluZU1hcmt1cFJ1bGU6OmNsYXNzKQogICAgICAgIC0+c2V0KFRpdGxlUnVsZTo6Y2xhc3MpCgoKICAgICAgICAtPnNldChBYnN0cmFjdEZpZWxkTGlzdEl0ZW1SdWxlOjpjbGFzcykKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LmZpZWxkbGlzdCcpCgogICAgICAgIC0+c2V0KEFkZHJlc3NGaWVsZExpc3RJdGVtUnVsZTo6Y2xhc3MpCiAgICAgICAgLT50YWcoJ3BocGRvYy5ndWlkZXMucGFyc2VyLnJzdC5maWVsZGxpc3QnKQoKICAgICAgICAtPnNldChBdXRob3JGaWVsZExpc3RJdGVtUnVsZTo6Y2xhc3MpCiAgICAgICAgLT50YWcoJ3BocGRvYy5ndWlkZXMucGFyc2VyLnJzdC5maWVsZGxpc3QnKQoKICAgICAgICAtPnNldChBdXRob3JzRmllbGRMaXN0SXRlbVJ1bGU6OmNsYXNzKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuZmllbGRsaXN0JykKCiAgICAgICAgLT5zZXQoQ29udGFjdEZpZWxkTGlzdEl0ZW1SdWxlOjpjbGFzcykKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LmZpZWxkbGlzdCcpCgogICAgICAgIC0+c2V0KENvcHlyaWdodEZpZWxkTGlzdEl0ZW1SdWxlOjpjbGFzcykKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LmZpZWxkbGlzdCcpCgogICAgICAgIC0+c2V0KERhdGVGaWVsZExpc3RJdGVtUnVsZTo6Y2xhc3MpCiAgICAgICAgLT50YWcoJ3BocGRvYy5ndWlkZXMucGFyc2VyLnJzdC5maWVsZGxpc3QnKQoKICAgICAgICAtPnNldChEZWRpY2F0aW9uRmllbGRMaXN0SXRlbVJ1bGU6OmNsYXNzKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuZmllbGRsaXN0JykKCiAgICAgICAgLT5zZXQoTmF2aWdhdGlvblRpdGxlRmllbGRMaXN0SXRlbVJ1bGU6OmNsYXNzKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuZmllbGRsaXN0JykKCiAgICAgICAgLT5zZXQoTm9jb21tZW50c0ZpZWxkTGlzdEl0ZW1SdWxlOjpjbGFzcykKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LmZpZWxkbGlzdCcpCgogICAgICAgIC0+c2V0KE5vc2VhcmNoRmllbGRMaXN0SXRlbVJ1bGU6OmNsYXNzKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuZmllbGRsaXN0JykKCiAgICAgICAgLT5zZXQoT3JnYW5pemF0aW9uRmllbGRMaXN0SXRlbVJ1bGU6OmNsYXNzKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuZmllbGRsaXN0JykKCiAgICAgICAgLT5zZXQoT3JwaGFuRmllbGRMaXN0SXRlbVJ1bGU6OmNsYXNzKQogICAgICAgIC0+dGFnKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuZmllbGRsaXN0JykKCiAgICAgICAgLT5zZXQoUHJvamVjdEZpZWxkTGlzdEl0ZW1SdWxlOjpjbGFzcykKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LmZpZWxkbGlzdCcpCiAgICAgICAgLT5hcmdzKFsKICAgICAgICAgICAgJyRsb2dnZXInID0+IHNlcnZpY2UoTG9nZ2VySW50ZXJmYWNlOjpjbGFzcyksCiAgICAgICAgXSkKCiAgICAgICAgLT5zZXQoUmV2aXNpb25GaWVsZExpc3RJdGVtUnVsZTo6Y2xhc3MpCiAgICAgICAgLT50YWcoJ3BocGRvYy5ndWlkZXMucGFyc2VyLnJzdC5maWVsZGxpc3QnKQoKICAgICAgICAtPnNldChUb2NEZXB0aEZpZWxkTGlzdEl0ZW1SdWxlOjpjbGFzcykKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LmZpZWxkbGlzdCcpCgogICAgICAgIC0+c2V0KFZlcnNpb25GaWVsZExpc3RJdGVtUnVsZTo6Y2xhc3MpCiAgICAgICAgLT5hcmdzKFsKICAgICAgICAgICAgJyRsb2dnZXInID0+IHNlcnZpY2UoTG9nZ2VySW50ZXJmYWNlOjpjbGFzcyksCiAgICAgICAgXSkKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LmZpZWxkbGlzdCcpCgogICAgICAgIC0+c2V0KFNlY3Rpb25SdWxlOjpjbGFzcykKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5wYXJzZXIucnN0LnN0cnVjdHVyYWxfZWxlbWVudCcsIFsncHJpb3JpdHknID0+IFNlY3Rpb25SdWxlOjpQUklPUklUWV0pCgogICAgICAgIC0+c2V0KERvY3VtZW50UGFyc2VyQ29udGV4dEZhY3Rvcnk6OmNsYXNzKQoKICAgICAgICAtPnNldChNYXJrdXBMYW5ndWFnZVBhcnNlcjo6Y2xhc3MpCiAgICAgICAgLT5hcmdzKFsKICAgICAgICAgICAgJyRzdGFydGluZ1J1bGUnID0+IHNlcnZpY2UoRG9jdW1lbnRSdWxlOjpjbGFzcyksCiAgICAgICAgXSkKICAgICAgICAtPnRhZygncGhwZG9jLmd1aWRlcy5wYXJzZXIubWFya3VwTGFuZ3VhZ2VQYXJzZXInKQogICAgICAgIC0+c2V0KERvY3VtZW50UnVsZTo6Y2xhc3MpCiAgICAgICAgLT5zZXQoSW5saW5lUGFyc2VyOjpjbGFzcykKICAgICAgICAtPmFyZygnJGlubGluZVJ1bGVzJywgdGFnZ2VkX2l0ZXJhdG9yKCdwaHBkb2MuZ3VpZGVzLnBhcnNlci5yc3QuaW5saW5lX3J1bGUnKSkKICAgICAgICAtPmFyZygnJGRpc2FibGVMZWdhY3lUaWxkZScsIGZhbHNlKQogICAgICAgIC0+c2V0KEdsb2JTZWFyY2hlcjo6Y2xhc3MpCiAgICAgICAgLT5zZXQoVG9jdHJlZUJ1aWxkZXI6OmNsYXNzKQogICAgICAgIC0+c2V0KElubGluZU1hcmt1cFJ1bGU6OmNsYXNzKQogICAgICAgIC0+c2V0KERlZmF1bHRDb2RlTm9kZU9wdGlvbk1hcHBlcjo6Y2xhc3MpCiAgICAgICAgLT5hbGlhcyhDb2RlTm9kZU9wdGlvbk1hcHBlcjo6Y2xhc3MsIERlZmF1bHRDb2RlTm9kZU9wdGlvbk1hcHBlcjo6Y2xhc3MpOwp9OwoiO3M6NDM6IgBwaHBEb2N1bWVudG9yXFJlZmxlY3Rpb25cUGhwXEZpbGUAZG9jQmxvY2siO047czo0MzoiAHBocERvY3VtZW50b3JcUmVmbGVjdGlvblxQaHBcRmlsZQBtZXRhZGF0YSI7YTowOnt9fQ==";