﻿<?xml version="1.0" encoding="UTF-8"?>
<GMA3 DataVersion="1.9.7.0">
    <UserPlugin Name="Renumbering Plugin v2" Guid="8D 42 53 B1 CE 08 10 00 5F 53 7C 2E 0F 30 96 2E" Version="2.0.0.0">
        <ComponentLua Guid="8D 42 53 B1 2E 4B 10 00 F5 5D 2F 24 58 76 03 2F">
            <FileContent Size="19">
                <Block Base64="bG9jYWwgZnVuY3Rpb24gbXlfZ2V0X29iamVjdChhZGRyZXNzKQ0KICAgIGlmIEdldE9iamVjdCB0aGVuDQogICAgICAgIHJldHVybiBHZXRPYmplY3QoYWRkcmVzcykNCiAgICBlbHNlDQogICAgICAgIHJldHVybiBPYmplY3RMaXN0KGFkZHJlc3MpWzFdDQogICAgZW5kDQplbmQNCg0KbG9jYWwgZnVuY3Rpb24gY29sbGVjdF9taWJfYW5kX3RyYWNraW5nX3RhcmdldHMoc2VxdWVuY2Vfbm8pDQogICAgbG9jYWwgc2VxdWVuY2UgPSAnU2VxdWVuY2UgJy4uc2VxdWVuY2Vfbm8NCiAgICBsb2NhbCBkYXRhID0ge30NCiAgICBsb2NhbCBwYXJ0cyA9IE9iamVjdExpc3Qoc2VxdWVuY2UgLi4gJyBjdWUgKiBwYXJ0IConKQ0KICAgIGZvciBfLHBhcnQgaW4gaXBhaXJzKHBhcnRzKSBkbw0KICAgICAgICBkYXRhW3BhcnRdID0ge30NCiAgICAgICAgaWYgcGFydC5taWJ0YXJnZXQgYW5kIHBhcnQubWlidGFyZ2V0IH49ICcnIHRoZW4NCiAgICAgICAgICAgIGRhdGFbcGFydF0ubWlidGFyZ2V0ID0gbXlfZ2V0X29iamVjdChzZXF1ZW5jZSAuLiAnIGN1ZSAnLi5wYXJ0Lm1pYnRhcmdldCkNCiAgICAgICAgZW5kDQogICAgICAgIGlmIHBhcnQudHJhY2tpbmdkaXN0YW5jZSBhbmQgcGFydC50cmFja2luZ2Rpc3RhbmNlIH49ICcnIGFuZCBub3QgcGFydC50cmFja2luZ2Rpc3RhbmNlOmZpbmQoJyUrJykgdGhlbg0KICAgICAgICAgICAgZGF0YVtwYXJ0XS50cmFja2luZ2Rpc3RhbmNlID0gbXlfZ2V0X29iamVjdChzZXF1ZW5jZSAuLiAnIGN1ZSAnLi5wYXJ0LnRyYWNraW5nZGlzdGFuY2UpDQogICAgICAgIGVuZA0KICAgIGVuZA0KICAgIHJldHVybiBkYXRhDQplbmQNCg0KbG9jYWwgZnVuY3Rpb24gcmVzdG9yZV9taWJfYW5kX3RyYWNraW5nX3RhcmdldHMoZGF0YSkNCiAgICBmb3IgcGFydCxwYXJ0X2RhdGEgaW4gcGFpcnMoZGF0YSkgZG8NCiAgICAgICAgaWYgcGFydF9kYXRhLm1pYnRhcmdldCB0aGVuDQogICAgICAgICAgICBwYXJ0OlNldCgnbWlidGFyZ2V0JyxwYXJ0X2RhdGEubWlidGFyZ2V0OkdldCgnbm8nLA==" />
                <Block Base64="RW51bXMuUm9sZXMuRGlzcGxheSk6Z3N1YignJXMrJywnJykgb3IgJycpDQogICAgICAgIGVuZA0KICAgICAgICBpZiBwYXJ0X2RhdGEudHJhY2tpbmdkaXN0YW5jZSB0aGVuDQogICAgICAgICAgICBwYXJ0OlNldCgndHJhY2tpbmdkaXN0YW5jZScscGFydF9kYXRhLnRyYWNraW5nZGlzdGFuY2U6R2V0KCdubycsRW51bXMuUm9sZXMuRGlzcGxheSk6Z3N1YignJXMrJywnJykgb3IgJycpDQogICAgICAgIGVuZA0KICAgIGVuZA0KZW5kDQoNCmxvY2FsIGZ1bmN0aW9uIHNoaWZ0KHNlbGVjdGVkX3NlcXVlbmNlKQ0KICAgIGxvY2FsIHNlcV9udW1iZXIgPSBzZWxlY3RlZF9zZXF1ZW5jZTpJbmRleCgpDQogICAgbG9jYWwgY3VlcyA9IHNlbGVjdGVkX3NlcXVlbmNlOkNoaWxkcmVuKCkNCiAgICBsb2NhbCBzdGVwDQogICAgbG9jYWwgZmlyc3RfaW5kZXgNCiAgICBsb2NhbCBsYXN0X2luZGV4DQogICAgbG9jYWwgc3VnZ2VzdGVkX2ZpcnN0DQogICAgbG9jYWwgc3VnZ2VzdGVkX2xhc3QNCiAgICBsb2NhbCBzdWdnZXN0ZWRfc3RlcA0KICAgIGxvY2FsIGVzdGltYXRlZF9maXJzdF9yZW51bWJlcmVkX2N1ZV9udW1iZXINCiAgICBsb2NhbCByZXN1bHRUYWJsZQ0KICAgIGxvY2FsIHJlc3VsdCA9IHRydWUNCiAgICBsb2NhbCBtYl9pbnB1dHMNCiAgICBzdWdnZXN0ZWRfZmlyc3QgPSBzZWxlY3RlZF9zZXF1ZW5jZVszXTpHZXQoJ25vJyxFbnVtcy5Sb2xlcy5EaXNwbGF5KTpnc3ViKCclcysnLCcnKQ0KICAgIHN1Z2dlc3RlZF9sYXN0ID0gc2VsZWN0ZWRfc2VxdWVuY2VbI2N1ZXNdOkdldCgnbm8nLEVudW1zLlJvbGVzLkRpc3BsYXkpOmdzdWIoJyVzKycsJycpDQogICAgc3VnZ2VzdGVkX3N0ZXAgPSAxDQogICAgcmVwZWF0DQogICAgICAgIHJlc3VsdCA9IHRydWUNCiAgICAgICAgbG9jYWwgZXJyb3JzID0ge30NCiAgICAgICAgbWJfaW5wdXRzID0gew0KICAgICAgICAgICAge25hbWUgPSAnIEZyb20gQ3VlICcsIHZhbHVlID0gc3VnZ2VzdGVkX2ZpcnN0LCB3aGl0ZUZpbHRlciA9ICcwMTIzNDU2Nzg5Licsdg==" />
                <Block Base64="a1BsdWdpbj0nQ3VlTnVtYmVySW5wdXQnLCBtYXhUZXh0TGVuZ3RoID0gN30sDQogICAgICAgICAgICB7bmFtZSA9ICcgVG8gQ3VlICcsIHZhbHVlID0gc3VnZ2VzdGVkX2xhc3QsIHdoaXRlRmlsdGVyID0gJzAxMjM0NTY3ODkuJyx2a1BsdWdpbj0nQ3VlTnVtYmVySW5wdXQnLCBtYXhUZXh0TGVuZ3RoID0gN30sDQogICAgICAgICAgICB7bmFtZSA9ICdTaGlmdCBieScsIHZhbHVlID0gc3VnZ2VzdGVkX3N0ZXAsIHdoaXRlRmlsdGVyID0gJy0wMTIzNDU2Nzg5LicsdmtQbHVnaW49J051bWVyaWNJbnB1dCcsIG1heFRleHRMZW5ndGggPSA3fQ0KICAgICAgICB9DQogICAgICAgIC0tIG9wZW4gbWVzc2FnZWJveDoNCiAgICAgICAgcmVzdWx0VGFibGUgPQ0KICAgICAgICAgICAgTWVzc2FnZUJveCgNCiAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICB0aXRsZSA9ICdSZW51bWJlciBDdWVzJywNCiAgICAgICAgICAgICAgICBtZXNzYWdlID0gJ1NwZWNpZnkgd2hpY2ggQ3VlcyBvZiBTZXF1ZW5jZSAnLi5zZXFfbnVtYmVyLi4nICInLi5zZWxlY3RlZF9zZXF1ZW5jZS5uYW1lLi4nIiB5b3Ugd2FudCB0byByZW51bWJlclxuYW5kIGhvdyB5b3Ugd2FudCB0aGVzZSBDdWVzIHRvIGJlIHJlbnVtYmVyZWQnLA0KICAgICAgICAgICAgICAgIG1lc3NhZ2VfYWxpZ25faCA9IEVudW1zLkFsaWdubWVudEguQ2VudGVyLA0KICAgICAgICAgICAgICAgIG1lc3NhZ2VfYWxpZ25fdiA9IEVudW1zLkFsaWdubWVudFYuVG9wLA0KICAgICAgICAgICAgICAgIGNvbW1hbmRzID0ge3t2YWx1ZSA9IDEsIG5hbWUgPSAnUmVudW1iZXInfSwge3ZhbHVlID0gMCwgbmFtZSA9ICdDYW5jZWwnfX0sDQogICAgICAgICAgICAgICAgaW5wdXRzID0gbWJfaW5wdXRzLA0KICAgICAgICAgICAgICAgIGJhY2tDb2xvciA9ICdHbG9iYWwuRGVmYXVsdCcsDQogICAgICAgICAgICAgICAgdGl0bGVUZXh0Q29sb3IgPSAnR2xvYmFsLlRleHQnLA0KICAgICAgICAgICAgICAgIG1lc3NhZ2VUZXh0Q29sb3IgPSAnR2xvYmFsLlRleHQnLA0KIA==" />
                <Block Base64="ICAgICAgICAgICAgICAgYXV0b0Nsb3NlT25JbnB1dCA9IGZhbHNlDQogICAgICAgICAgICB9DQogICAgICAgICkNCiAgICAgICAgc3VnZ2VzdGVkX2ZpcnN0ID0gdG9udW1iZXIocmVzdWx0VGFibGUuaW5wdXRzWycgRnJvbSBDdWUgJ10pDQogICAgICAgIHN1Z2dlc3RlZF9sYXN0ID0gdG9udW1iZXIocmVzdWx0VGFibGUuaW5wdXRzWycgVG8gQ3VlICddKQ0KICAgICAgICBzdWdnZXN0ZWRfc3RlcCA9IHRvbnVtYmVyKHJlc3VsdFRhYmxlLmlucHV0c1snU2hpZnQgYnknXSkNCiAgICAgICAgaWYgc3VnZ2VzdGVkX2ZpcnN0IGFuZCBzdWdnZXN0ZWRfbGFzdCBhbmQgc3VnZ2VzdGVkX3N0ZXAgYW5kIHJlc3VsdFRhYmxlLnJlc3VsdCB+PSAwIHRoZW4NCiAgICAgICAgICAgIHN0ZXAgPSB0b251bWJlcihyZXN1bHRUYWJsZS5pbnB1dHNbJ1NoaWZ0IGJ5J10pDQogICAgICAgICAgICAtLSBDaGVjayBpZiAiRnJvbSIgaXMgbG93ZXIgdGhhbiAiVG8iDQogICAgICAgICAgICBpZiBzdWdnZXN0ZWRfbGFzdCA8IHN1Z2dlc3RlZF9maXJzdCB0aGVuDQogICAgICAgICAgICAgICAgc3VnZ2VzdGVkX2xhc3QgPSBzZWxlY3RlZF9zZXF1ZW5jZVsjY3Vlc106R2V0KCdubycsRW51bXMuUm9sZXMuRGlzcGxheSk6Z3N1YignJXMrJywnJykNCiAgICAgICAgICAgICAgICB0YWJsZS5pbnNlcnQoZXJyb3JzLCciRnJvbSBDdWUiIG11c3QgYmUgbG93ZXIgdGhhbiAiVG8gQ3VlIlxuJykNCiAgICAgICAgICAgICAgICByZXN1bHQgPSBmYWxzZQ0KICAgICAgICAgICAgZW5kDQogICAgICAgICAgICAtLSBDaGVjayBpZiAiRnJvbSIgZXhpc3RzDQogICAgICAgICAgICBpZiBub3QgbXlfZ2V0X29iamVjdCgnc2VxdWVuY2UgJy4uc2VxX251bWJlci4uJyBjdWUgJy4ucmVzdWx0VGFibGUuaW5wdXRzWycgRnJvbSBDdWUgJ10pIHRoZW4NCiAgICAgICAgICAgICAgICBzdWdnZXN0ZWRfZmlyc3QgPSBzZWxlY3RlZF9zZXF1ZW5jZVszXTpHZXQoJ25vJyxFbnVtcy5Sb2xlcy5EaXNwbGF5KTpnc3ViKCclcysnLCcnKQ0KICAgICAgIA==" />
                <Block Base64="ICAgICAgICAgdGFibGUuaW5zZXJ0KGVycm9ycywnQ3VlICcuLnJlc3VsdFRhYmxlLmlucHV0c1snIEZyb20gQ3VlICddLi4nIGRvZXNuXCd0IGV4aXN0IGluIFNlcXVlbmNlICcuLnNlcV9udW1iZXIuLidcbicpDQogICAgICAgICAgICAgICAgcmVzdWx0ID0gZmFsc2UNCiAgICAgICAgICAgIGVuZA0KICAgICAgICAgICAgLS0gQ2hlY2sgaWYgIlRvIiBleGlzdHMNCiAgICAgICAgICAgIGlmIG5vdCBteV9nZXRfb2JqZWN0KCdzZXF1ZW5jZSAnLi5zZXFfbnVtYmVyLi4nIGN1ZSAnLi5yZXN1bHRUYWJsZS5pbnB1dHNbJyBUbyBDdWUgJ10pIHRoZW4NCiAgICAgICAgICAgICAgICBzdWdnZXN0ZWRfbGFzdCA9IHNlbGVjdGVkX3NlcXVlbmNlWyNjdWVzXTpHZXQoJ25vJyxFbnVtcy5Sb2xlcy5EaXNwbGF5KTpnc3ViKCclcysnLCcnKQ0KICAgICAgICAgICAgICAgIHRhYmxlLmluc2VydChlcnJvcnMsJ0N1ZSAnLi5yZXN1bHRUYWJsZS5pbnB1dHNbJyBUbyBDdWUgJ10uLicgZG9lc25cJ3QgZXhpc3QgaW4gU2VxdWVuY2UgJy4uc2VxX251bWJlci4uJ1xuJykNCiAgICAgICAgICAgICAgICByZXN1bHQgPSBmYWxzZQ0KICAgICAgICAgICAgZW5kDQogICAgICAgICAgICBpZiByZXN1bHQgdGhlbg0KICAgICAgICAgICAgICAgIGZpcnN0X2luZGV4ID0gbXlfZ2V0X29iamVjdCgnc2VxdWVuY2UgJy4uc2VxX251bWJlci4uJyBjdWUgJy4ucmVzdWx0VGFibGUuaW5wdXRzWycgRnJvbSBDdWUgJ10pOkluZGV4KCkNCiAgICAgICAgICAgICAgICBsYXN0X2luZGV4ID0gbXlfZ2V0X29iamVjdCgnc2VxdWVuY2UgJy4uc2VxX251bWJlci4uJyBjdWUgJy4ucmVzdWx0VGFibGUuaW5wdXRzWycgVG8gQ3VlICddKTpJbmRleCgpDQogICAgICAgICAgICBlbmQNCiAgICAgICAgICAgIGlmIHJlc3VsdCBhbmQgbGFzdF9pbmRleCBhbmQgZmlyc3RfaW5kZXggdGhlbg0KICAgICAgICAgICAgICAgIGxvY2FsIGVzdGltYXRlZF9sYXN0X3JlbnVtYmVyZWRfY3VlX251bWJlciA9IHRvbnVtYmVyKGN1ZXNbbGFzdF9pbmRleF06Rw==" />
                <Block Base64="ZXQoJ25vJyxFbnVtcy5Sb2xlcy5EaXNwbGF5KSkgKyBzdGVwDQogICAgICAgICAgICAgICAgZXN0aW1hdGVkX2ZpcnN0X3JlbnVtYmVyZWRfY3VlX251bWJlciA9IHRvbnVtYmVyKHJlc3VsdFRhYmxlLmlucHV0c1snIEZyb20gQ3VlICddKSArIHN0ZXANCiAgICAgICAgICAgICAgICAtLSBDaGVjayBpZiB0aGUgZmlyc3QgcmVudW1iZXJlZCBDdWUgaXMgaGlnaGVyLCB0aGFuIHRoZSBudW1iZXIgb2YgdGhlIHByZXZpb3VzIEN1ZQ0KICAgICAgICAgICAgICAgIGlmIGZpcnN0X2luZGV4ID4gMyBhbmQgZXN0aW1hdGVkX2ZpcnN0X3JlbnVtYmVyZWRfY3VlX251bWJlciA8PSB0b251bWJlcihzZWxlY3RlZF9zZXF1ZW5jZVtmaXJzdF9pbmRleC0xXTpHZXQoJ25vJyxFbnVtcy5Sb2xlcy5EaXNwbGF5KSkgdGhlbg0KICAgICAgICAgICAgICAgICAgICB0YWJsZS5pbnNlcnQoZXJyb3JzLCdOdW1iZXIgb2YgdGhlIGZpcnN0IHJlbnVtYmVyZWQgQ3VlIG11c3QgYmUgaGlnaGVyLCB0aGFuIHRoZSBudW1iZXIgb2YgdGhlIHByZXZpb3VzIEN1ZSFcbicpDQogICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IGZhbHNlDQogICAgICAgICAgICAgICAgZW5kDQogICAgICAgICAgICAgICAgLS0gQ2hlY2sgaWYgdGhlIGxhc3QgcmVudW1iZXJlZCBDdWUgaXMgbG93ZXIsIHRoYW4gdGhlIG51bWJlciBvZiB0aGUgQ3VlIGFmdGVyIGl0DQogICAgICAgICAgICAgICAgaWYgc2VsZWN0ZWRfc2VxdWVuY2VbbGFzdF9pbmRleCsxXSBhbmQgZXN0aW1hdGVkX2xhc3RfcmVudW1iZXJlZF9jdWVfbnVtYmVyID49IHRvbnVtYmVyKHNlbGVjdGVkX3NlcXVlbmNlW2xhc3RfaW5kZXgrMV06R2V0KCdubycsRW51bXMuUm9sZXMuRGlzcGxheSkpIHRoZW4NCiAgICAgICAgICAgICAgICAgICAgdGFibGUuaW5zZXJ0KGVycm9ycywnTnVtYmVyIG9mIHRoZSBsYXN0IHJlbnVtYmVyZWQgQ3VlIG11c3QgYmUgbG93ZXIsIHRoYW4gdGhlIG51bWJlciBvZiB0aGUgQ3VlIGFmdGVyIGl0IVxuJykNCiAgICAgICAgICAgICAgICAgICAgc3VnZw==" />
                <Block Base64="ZXN0ZWRfc3RlcCA9ICcnDQogICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IGZhbHNlDQogICAgICAgICAgICAgICAgZW5kDQogICAgICAgICAgICAgICAgLS0gQ2hlY2sgaWYgdGhlIG51bWJlciBvZiB0aGUgZmlyc3QgcmVudW1iZXJlZCBDdWUgaXMgaGlnaGVyIHRoYW4gMA0KICAgICAgICAgICAgICAgIGlmIHRvbnVtYmVyKHNlbGVjdGVkX3NlcXVlbmNlW2ZpcnN0X2luZGV4XTpHZXQoJ25vJyxFbnVtcy5Sb2xlcy5EaXNwbGF5KSkgKyBzdGVwIDw9IDAgdGhlbg0KICAgICAgICAgICAgICAgICAgICB0YWJsZS5pbnNlcnQoZXJyb3JzLCdOdW1iZXIgb2YgdGhlIGZpcnN0IHJlbnVtYmVyZWQgQ3VlIG11c3QgYmUgaGlnaGVyIHRoYW4gMCFcbicpDQogICAgICAgICAgICAgICAgICAgIHN1Z2dlc3RlZF9zdGVwID0gJycNCiAgICAgICAgICAgICAgICAgICAgcmVzdWx0ID0gZmFsc2UNCiAgICAgICAgICAgICAgICBlbmQNCiAgICAgICAgICAgICAgICAtLSBDaGVjayBoaWdoZXN0IGN1ZSBudW1iZXINCiAgICAgICAgICAgICAgICBpZiBlc3RpbWF0ZWRfbGFzdF9yZW51bWJlcmVkX2N1ZV9udW1iZXIgPiA5OTk5Ljk5OSB0aGVuDQogICAgICAgICAgICAgICAgICAgIHRhYmxlLmluc2VydChlcnJvcnMsJ0hpZ2hlc3QgbnVtYmVyIGZvciB0aGUgY3VlIHJlYWNoZWQhXG4nKQ0KICAgICAgICAgICAgICAgICAgICBzdWdnZXN0ZWRfc3RlcCA9ICcnDQogICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IGZhbHNlDQogICAgICAgICAgICAgICAgZW5kDQogICAgICAgICAgICBlbmQNCiAgICAgICAgICAgIGlmIG5vdCByZXN1bHQgdGhlbg0KICAgICAgICAgICAgICAgIGxvY2FsIGVycm9yX3N0cmluZyA9ICcnDQogICAgICAgICAgICAgICAgZm9yIF8sZXJyb3IgaW4gaXBhaXJzKGVycm9ycykgZG8NCiAgICAgICAgICAgICAgICAgICAgZXJyb3Jfc3RyaW5nID0gZXJyb3Jfc3RyaW5nLi5lcnJvcg0KICAgICAgICAgICAgICAgIGVuZA0KICAgICAgICAgICAgICAgIENvbmZpcm0oJ0luY29ycmVjdCBpbnB1dA==" />
                <Block Base64="IScsZXJyb3Jfc3RyaW5nKQ0KICAgICAgICAgICAgZW5kDQogICAgICAgIGVsc2UNCiAgICAgICAgICAgIHJlc3VsdCA9IGZhbHNlDQogICAgICAgIGVuZA0KICAgIHVudGlsIChyZXN1bHQgYW5kIHJlc3VsdFRhYmxlLnJlc3VsdCA9PSAxKSBvciByZXN1bHRUYWJsZS5yZXN1bHQgPT0gMA0KICAgIGlmIHJlc3VsdFRhYmxlLnJlc3VsdCA9PSAxIHRoZW4NCiAgICAgICAgRWNobygnLS0tLS0tLS0tLS0tLS0tLS0tLS0tLScpDQogICAgICAgIEVjaG8oJ0ZpcnN0IHJlbnVtYmVyZWQgY3VlOiAnIC4uIHRvbnVtYmVyKHJlc3VsdFRhYmxlLmlucHV0c1snIEZyb20gQ3VlICddKSkNCiAgICAgICAgRWNobygnTGFzdCByZW51bWJlcmVkIGN1ZTogJyAuLiB0b251bWJlcihyZXN1bHRUYWJsZS5pbnB1dHNbJyBUbyBDdWUgJ10pKQ0KICAgICAgICBFY2hvKCdTaGlmdCBieTogJyAuLiB0b251bWJlcihyZXN1bHRUYWJsZS5pbnB1dHNbJ1NoaWZ0IGJ5J10pKQ0KICAgICAgICBFY2hvKCctLS0tLS0tLS0tLS0tLS0tLS0tLS0tJykNCiAgICAgICAgbG9jYWwgY3VlX2lkeA0KICAgICAgICBsb2NhbCBwYXJ0c193aXRoX3RhcmdldHMgPSBjb2xsZWN0X21pYl9hbmRfdHJhY2tpbmdfdGFyZ2V0cyhzZXFfbnVtYmVyKQ0KICAgICAgICBpZiBzdGVwID4gMCB0aGVuDQogICAgICAgICAgICBjdWVfaWR4ID0gbGFzdF9pbmRleA0KICAgICAgICAgICAgd2hpbGUgY3VlX2lkeCA+PSBmaXJzdF9pbmRleCBkbw0KICAgICAgICAgICAgICAgIGxvY2FsIGN1ZSA9IHNlbGVjdGVkX3NlcXVlbmNlW2N1ZV9pZHhdDQogICAgICAgICAgICAgICAgY3VlOlNldCgnbm8nLHRvbnVtYmVyKGN1ZTpHZXQoJ25vJyxFbnVtcy5Sb2xlcy5EaXNwbGF5KSkrc3RlcCkNCiAgICAgICAgICAgICAgICBjdWVfaWR4ID0gY3VlX2lkeCAtIDENCiAgICAgICAgICAgIGVuZA0KICAgICAgICBlbHNlDQogICAgICAgICAgICBjdWVfaWR4ID0gZmlyc3RfaW5kZXgNCiAgICAgICAgICAgIHdoaWxlIGN1ZV9pZHggPD0gbGFzdF9pbmRleCBkbw0KICAgICAgIA==" />
                <Block Base64="ICAgICAgICAgbG9jYWwgY3VlID0gc2VsZWN0ZWRfc2VxdWVuY2VbY3VlX2lkeF0NCiAgICAgICAgICAgICAgICBjdWU6U2V0KCdubycsdG9udW1iZXIoY3VlOkdldCgnbm8nLEVudW1zLlJvbGVzLkRpc3BsYXkpKStzdGVwKQ0KICAgICAgICAgICAgICAgIGN1ZV9pZHggPSBjdWVfaWR4ICsgMQ0KICAgICAgICAgICAgZW5kDQogICAgICAgIGVuZA0KICAgICAgICByZXN0b3JlX21pYl9hbmRfdHJhY2tpbmdfdGFyZ2V0cyhwYXJ0c193aXRoX3RhcmdldHMpDQogICAgICAgIEVjaG8oJy0tLSBDdWVzIHJlbnVtYmVyZWQgLS0tJykNCiAgICBlbHNlDQogICAgICAgIEVjaG8oJy0tLSBSZW51bWJlcmluZyBDYW5jZWxsZWQgLS0tJykNCiAgICBlbmQNCmVuZA0KDQpsb2NhbCBmdW5jdGlvbiByZW51bWJlcihzZWxlY3RlZF9zZXF1ZW5jZSkNCiAgICBsb2NhbCBzZXFfbnVtYmVyID0gc2VsZWN0ZWRfc2VxdWVuY2U6SW5kZXgoKQ0KICAgIGxvY2FsIGxhc3QNCiAgICBsb2NhbCBzdGVwDQogICAgbG9jYWwgZmlyc3RfaW5kZXgNCiAgICBsb2NhbCBsYXN0X2luZGV4DQogICAgbG9jYWwgY3VlcyA9IHNlbGVjdGVkX3NlcXVlbmNlOkNoaWxkcmVuKCkNCiAgICBsb2NhbCBzdWdnZXN0ZWRfZmlyc3QNCiAgICBsb2NhbCBzdWdnZXN0ZWRfbGFzdA0KICAgIGxvY2FsIHN1Z2dlc3RlZF9udW1iZXINCiAgICBsb2NhbCBzdWdnZXN0ZWRfc3RlcA0KICAgIGxvY2FsIGN1ZV9udW1iZXINCiAgICBsb2NhbCBlc3RpbWF0ZWRfZmlyc3RfcmVudW1iZXJlZF9jdWVfbnVtYmVyDQogICAgbG9jYWwgcmVzdWx0VGFibGUNCiAgICBsb2NhbCByZXN1bHQgPSB0cnVlDQogICAgbG9jYWwgaW5wdXRzDQogICAgc3VnZ2VzdGVkX2ZpcnN0ID0gdG9udW1iZXIoc2VsZWN0ZWRfc2VxdWVuY2VbM10ubm8pLzEwMDANCiAgICBpZiBzdWdnZXN0ZWRfZmlyc3QvbWF0aC5mbG9vcihzdWdnZXN0ZWRfZmlyc3QpID09IDEgdGhlbg0KICAgICAgICBzdWdnZXN0ZWRfZmlyc3QgPSBtYXRoLmZsb29yKHN1Z2dlc3RlZF9maXJzdCkNCiAgICBlbmQNCg==" />
                <Block Base64="ICAgIHN1Z2dlc3RlZF9sYXN0ID0gdG9udW1iZXIoc2VsZWN0ZWRfc2VxdWVuY2VbI2N1ZXNdLm5vKS8xMDAwDQogICAgaWYgc3VnZ2VzdGVkX2xhc3QvbWF0aC5mbG9vcihzdWdnZXN0ZWRfbGFzdCkgPT0gMSB0aGVuDQogICAgICAgIHN1Z2dlc3RlZF9sYXN0ID0gbWF0aC5mbG9vcihzdWdnZXN0ZWRfbGFzdCkNCiAgICBlbmQNCiAgICBzdWdnZXN0ZWRfbnVtYmVyID0gMQ0KICAgIHN1Z2dlc3RlZF9zdGVwID0gMQ0KICAgIHJlcGVhdA0KICAgICAgICByZXN1bHQgPSB0cnVlDQogICAgICAgIGxvY2FsIGVycm9ycyA9IHt9DQogICAgICAgIC0tIGNyZWF0ZSBpbnB1dHM6DQogICAgICAgIGlucHV0cyA9IHsNCiAgICAgICAgICAgIHtuYW1lID0gJyBGcm9tIEN1ZSAnLCB2YWx1ZSA9IHN1Z2dlc3RlZF9maXJzdCwgd2hpdGVGaWx0ZXIgPSAnMDEyMzQ1Njc4OS4nLHZrUGx1Z2luPSdDdWVOdW1iZXJJbnB1dCcsIG1heFRleHRMZW5ndGggPSA3fSwNCiAgICAgICAgICAgIHtuYW1lID0gJyBUbyBDdWUgJywgdmFsdWUgPSBzdWdnZXN0ZWRfbGFzdCwgd2hpdGVGaWx0ZXIgPSAnMDEyMzQ1Njc4OS4nLHZrUGx1Z2luPSdDdWVOdW1iZXJJbnB1dCcsIG1heFRleHRMZW5ndGggPSA3fSwNCiAgICAgICAgICAgIHtuYW1lID0gJ05ldyBOdW1iZXInLCB2YWx1ZSA9IHN1Z2dlc3RlZF9udW1iZXIsIHdoaXRlRmlsdGVyID0gJzAxMjM0NTY3ODkuJyx2a1BsdWdpbj0nQ3VlTnVtYmVySW5wdXQnLCBtYXhUZXh0TGVuZ3RoID0gN30sDQogICAgICAgICAgICB7bmFtZSA9ICdTdGVwIFdpZHRoJywgdmFsdWUgPSBzdWdnZXN0ZWRfc3RlcCwgd2hpdGVGaWx0ZXIgPSAnMDEyMzQ1Njc4OS4nLHZrUGx1Z2luPSdOdW1lcmljSW5wdXQnLCBtYXhUZXh0TGVuZ3RoID0gN30NCiAgICAgICAgfQ0KICAgICAgICAtLSBvcGVuIG1lc3NhZ2Vib3g6DQogICAgICAgIHJlc3VsdFRhYmxlID0NCiAgICAgICAgICAgIE1lc3NhZ2VCb3goDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgdGl0bGUgPSAnUmVudW1iZXIgQ3VlcycsDQ==" />
                <Block Base64="CiAgICAgICAgICAgICAgICBtZXNzYWdlID0gJ1NwZWNpZnkgd2hpY2ggQ3VlcyBvZiBTZXF1ZW5jZSAnLi5zZXFfbnVtYmVyLi4nICInLi5zZWxlY3RlZF9zZXF1ZW5jZS5uYW1lLi4nIiB5b3Ugd2FudCB0byByZW51bWJlclxuYW5kIGhvdyB5b3Ugd2FudCB0aGVzZSBDdWVzIHRvIGJlIHJlbnVtYmVyZWQnLA0KICAgICAgICAgICAgICAgIG1lc3NhZ2VfYWxpZ25faCA9IEVudW1zLkFsaWdubWVudEguQ2VudGVyLA0KICAgICAgICAgICAgICAgIG1lc3NhZ2VfYWxpZ25fdiA9IEVudW1zLkFsaWdubWVudFYuVG9wLA0KICAgICAgICAgICAgICAgIGNvbW1hbmRzID0ge3t2YWx1ZSA9IDEsIG5hbWUgPSAnUmVudW1iZXInfSwge3ZhbHVlID0gMCwgbmFtZSA9ICdDYW5jZWwnfX0sDQogICAgICAgICAgICAgICAgaW5wdXRzID0gaW5wdXRzLA0KICAgICAgICAgICAgICAgIGJhY2tDb2xvciA9ICdHbG9iYWwuRGVmYXVsdCcsDQogICAgICAgICAgICAgICAgLS0gaWNvbiA9ICdsb2dvX3NtYWxsJywNCiAgICAgICAgICAgICAgICB0aXRsZVRleHRDb2xvciA9ICdHbG9iYWwuVGV4dCcsDQogICAgICAgICAgICAgICAgbWVzc2FnZVRleHRDb2xvciA9ICdHbG9iYWwuVGV4dCcsDQogICAgICAgICAgICAgICAgYXV0b0Nsb3NlT25JbnB1dCA9IGZhbHNlDQogICAgICAgICAgICB9DQogICAgICAgICkNCiAgICAgICAgbGFzdCA9IHRvbnVtYmVyKHJlc3VsdFRhYmxlLmlucHV0c1snIFRvIEN1ZSAnXSkNCiAgICAgICAgaWYgbGFzdCBhbmQgbGFzdCA+ICh0b251bWJlcihjdWVzWyNjdWVzXS5ubykvMTAwMCkgdGhlbg0KICAgICAgICAgICAgbGFzdCA9IHRvbnVtYmVyKGN1ZXNbI2N1ZXNdLm5vKS8xMDAwDQogICAgICAgIGVuZA0KICAgICAgICBzdWdnZXN0ZWRfZmlyc3QgPSB0b251bWJlcihyZXN1bHRUYWJsZS5pbnB1dHNbJyBGcm9tIEN1ZSAnXSkNCiAgICAgICAgc3VnZ2VzdGVkX2xhc3QgPSB0b251bWJlcihyZXN1bHRUYWJsZS5pbnB1dHNbJyBUbyBDdWUgJ10pDQogICAgICAgIHN1Z2dlc3RlZF9udW1iZXIgPQ==" />
                <Block Base64="IHRvbnVtYmVyKHJlc3VsdFRhYmxlLmlucHV0c1snTmV3IE51bWJlciddKQ0KICAgICAgICBzdWdnZXN0ZWRfc3RlcCA9IHRvbnVtYmVyKHJlc3VsdFRhYmxlLmlucHV0c1snU3RlcCBXaWR0aCddKQ0KICAgICAgICBpZiBzdWdnZXN0ZWRfZmlyc3QgYW5kIHN1Z2dlc3RlZF9sYXN0IGFuZCBzdWdnZXN0ZWRfbnVtYmVyIGFuZCBzdWdnZXN0ZWRfc3RlcCBhbmQgcmVzdWx0VGFibGUucmVzdWx0IH49IDAgdGhlbg0KICAgICAgICAgICAgLS0gc3RlcCA9IHRvbnVtYmVyKHJlc3VsdFRhYmxlLmlucHV0c1snU2hpZnQgYnknXSkNCiAgICAgICAgICAgICAtLSBDaGVjayBpZiB0aGUgbnVtYmVyIG9mIHRoZSBmaXJzdCByZW51bWJlcmVkIEN1ZSBpcyBoaWdoZXIgdGhhbiAwDQogICAgICAgICAgICAgaWYgc3VnZ2VzdGVkX251bWJlciA8PSAwIHRoZW4NCiAgICAgICAgICAgICAgICB0YWJsZS5pbnNlcnQoZXJyb3JzLCdOdW1iZXIgb2YgdGhlIGZpcnN0IHJlbnVtYmVyZWQgQ3VlIG11c3QgYmUgaGlnaGVyIHRoYW4gMCFcbicpDQogICAgICAgICAgICAgICAgcmVzdWx0ID0gZmFsc2UNCiAgICAgICAgICAgIGVuZA0KICAgICAgICAgICAgLS0gQ2hlY2sgaWYgc3RlcCBpcyBiaWdnZXIgdGhhbiAwDQogICAgICAgICAgICBpZiBzdWdnZXN0ZWRfc3RlcCA8PSAwIHRoZW4NCiAgICAgICAgICAgICAgICB0YWJsZS5pbnNlcnQoZXJyb3JzLCdTdGVwIG11c3QgYmUgYmlnZ2VyIHRoYW4gMFxuJykNCiAgICAgICAgICAgICAgICByZXN1bHQgPSBmYWxzZQ0KICAgICAgICAgICAgZW5kDQogICAgICAgICAgICAtLSBDaGVjayBpZiAiRnJvbSIgaXMgbG93ZXIgdGhhbiAiVG8iDQogICAgICAgICAgICBpZiBzdWdnZXN0ZWRfbGFzdCA8IHN1Z2dlc3RlZF9maXJzdCB0aGVuDQogICAgICAgICAgICAgICAgc3VnZ2VzdGVkX2xhc3QgPSBzZWxlY3RlZF9zZXF1ZW5jZVsjY3Vlc106R2V0KCdubycsRW51bXMuUm9sZXMuRGlzcGxheSk6Z3N1YignJXMrJywnJykNCiAgICAgICAgICAgICAgICB0YWJsZS5pbnNlcnQoZXJyb3JzLA==" />
                <Block Base64="JyJGcm9tIEN1ZSIgbXVzdCBiZSBsb3dlciB0aGFuICJUbyBDdWUiXG4nKQ0KICAgICAgICAgICAgICAgIHJlc3VsdCA9IGZhbHNlDQogICAgICAgICAgICBlbmQNCiAgICAgICAgICAgIC0tIENoZWNrIGlmICJGcm9tIiBleGlzdHMNCiAgICAgICAgICAgIGlmIG5vdCBteV9nZXRfb2JqZWN0KCdzZXF1ZW5jZSAnLi5zZXFfbnVtYmVyLi4nIGN1ZSAnLi5yZXN1bHRUYWJsZS5pbnB1dHNbJyBGcm9tIEN1ZSAnXSkgdGhlbg0KICAgICAgICAgICAgICAgIHN1Z2dlc3RlZF9maXJzdCA9IHNlbGVjdGVkX3NlcXVlbmNlWzNdOkdldCgnbm8nLEVudW1zLlJvbGVzLkRpc3BsYXkpOmdzdWIoJyVzKycsJycpDQogICAgICAgICAgICAgICAgdGFibGUuaW5zZXJ0KGVycm9ycywnQ3VlICcuLnJlc3VsdFRhYmxlLmlucHV0c1snIEZyb20gQ3VlICddLi4nIGRvZXNuXCd0IGV4aXN0IGluIFNlcXVlbmNlICcuLnNlcV9udW1iZXIuLidcbicpDQogICAgICAgICAgICAgICAgcmVzdWx0ID0gZmFsc2UNCiAgICAgICAgICAgIGVuZA0KICAgICAgICAgICAgLS0gQ2hlY2sgaWYgIlRvIiBleGlzdHMNCiAgICAgICAgICAgIGlmIG5vdCBteV9nZXRfb2JqZWN0KCdzZXF1ZW5jZSAnLi5zZXFfbnVtYmVyLi4nIGN1ZSAnLi5yZXN1bHRUYWJsZS5pbnB1dHNbJyBUbyBDdWUgJ10pIHRoZW4NCiAgICAgICAgICAgICAgICBzdWdnZXN0ZWRfbGFzdCA9IHNlbGVjdGVkX3NlcXVlbmNlWyNjdWVzXTpHZXQoJ25vJyxFbnVtcy5Sb2xlcy5EaXNwbGF5KTpnc3ViKCclcysnLCcnKQ0KICAgICAgICAgICAgICAgIHRhYmxlLmluc2VydChlcnJvcnMsJ0N1ZSAnLi5yZXN1bHRUYWJsZS5pbnB1dHNbJyBUbyBDdWUgJ10uLicgZG9lc25cJ3QgZXhpc3QgaW4gU2VxdWVuY2UgJy4uc2VxX251bWJlci4uJ1xuJykNCiAgICAgICAgICAgICAgICByZXN1bHQgPSBmYWxzZQ0KICAgICAgICAgICAgZW5kDQogICAgICAgICAgICBpZiByZXN1bHQgdGhlbg0KICAgICAgICAgICAgICAgIGZpcnN0X2luZGV4ID0gbXlfZ2V0X29iamVjdCgnc2VxdWVuY2UgJw==" />
                <Block Base64="Li5zZXFfbnVtYmVyLi4nIGN1ZSAnLi5yZXN1bHRUYWJsZS5pbnB1dHNbJyBGcm9tIEN1ZSAnXSk6SW5kZXgoKQ0KICAgICAgICAgICAgICAgIGxhc3RfaW5kZXggPSBteV9nZXRfb2JqZWN0KCdzZXF1ZW5jZSAnLi5zZXFfbnVtYmVyLi4nIGN1ZSAnLi5yZXN1bHRUYWJsZS5pbnB1dHNbJyBUbyBDdWUgJ10pOkluZGV4KCkNCiAgICAgICAgICAgIGVuZA0KICAgICAgICAgICAgaWYgcmVzdWx0IGFuZCBsYXN0X2luZGV4IGFuZCBmaXJzdF9pbmRleCB0aGVuDQogICAgICAgICAgICAgICAgbG9jYWwgYW1vdW50X29mX2NoYW5nZWRfY3VlcyA9IGxhc3RfaW5kZXggLSBmaXJzdF9pbmRleCArIDENCiAgICAgICAgICAgICAgICBlc3RpbWF0ZWRfZmlyc3RfcmVudW1iZXJlZF9jdWVfbnVtYmVyID0gdG9udW1iZXIocmVzdWx0VGFibGUuaW5wdXRzWydOZXcgTnVtYmVyJ10pDQogICAgICAgICAgICAgICAgbG9jYWwgZXN0aW1hdGVkX2xhc3RfcmVudW1iZXJlZF9jdWVfbnVtYmVyID0gZXN0aW1hdGVkX2ZpcnN0X3JlbnVtYmVyZWRfY3VlX251bWJlciArIHN1Z2dlc3RlZF9zdGVwKihhbW91bnRfb2ZfY2hhbmdlZF9jdWVzIC0gMSkNCiAgICAgICAgICAgICAgICAtLSBDaGVjayBpZiB0aGUgZmlyc3QgcmVudW1iZXJlZCBDdWUgaXMgaGlnaGVyLCB0aGFuIHRoZSBudW1iZXIgb2YgdGhlIHByZXZpb3VzIEN1ZQ0KICAgICAgICAgICAgICAgIGlmIGZpcnN0X2luZGV4ID4gMyBhbmQgZXN0aW1hdGVkX2ZpcnN0X3JlbnVtYmVyZWRfY3VlX251bWJlciA8PSB0b251bWJlcihzZWxlY3RlZF9zZXF1ZW5jZVtmaXJzdF9pbmRleC0xXTpHZXQoJ25vJyxFbnVtcy5Sb2xlcy5EaXNwbGF5KSkgdGhlbg0KICAgICAgICAgICAgICAgICAgICB0YWJsZS5pbnNlcnQoZXJyb3JzLCdOdW1iZXIgb2YgdGhlIGZpcnN0IHJlbnVtYmVyZWQgQ3VlIG11c3QgYmUgaGlnaGVyLCB0aGFuIHRoZSBudW1iZXIgb2YgdGhlIHByZXZpb3VzIEN1ZSFcbicpDQogICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IGZhbHNlDQogICAgICAgICAgIA==" />
                <Block Base64="ICAgICBlbmQNCiAgICAgICAgICAgICAgICAtLSBDaGVjayBpZiB0aGUgbGFzdCByZW51bWJlcmVkIEN1ZSBpcyBsb3dlciwgdGhhbiB0aGUgbnVtYmVyIG9mIHRoZSBDdWUgYWZ0ZXIgaXQNCiAgICAgICAgICAgICAgICBpZiBzZWxlY3RlZF9zZXF1ZW5jZVtsYXN0X2luZGV4KzFdIGFuZCBlc3RpbWF0ZWRfbGFzdF9yZW51bWJlcmVkX2N1ZV9udW1iZXIgPj0gdG9udW1iZXIoc2VsZWN0ZWRfc2VxdWVuY2VbbGFzdF9pbmRleCsxXTpHZXQoJ25vJyxFbnVtcy5Sb2xlcy5EaXNwbGF5KSkgdGhlbg0KICAgICAgICAgICAgICAgICAgICB0YWJsZS5pbnNlcnQoZXJyb3JzLCdOdW1iZXIgb2YgdGhlIGxhc3QgcmVudW1iZXJlZCBDdWUgbXVzdCBiZSBsb3dlciwgdGhhbiB0aGUgbnVtYmVyIG9mIHRoZSBDdWUgYWZ0ZXIgaXQhXG4nKQ0KICAgICAgICAgICAgICAgICAgICBzdWdnZXN0ZWRfc3RlcCA9ICcnDQogICAgICAgICAgICAgICAgICAgIHJlc3VsdCA9IGZhbHNlDQogICAgICAgICAgICAgICAgZW5kICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgLS0gQ2hlY2sgaGlnaGVzdCBjdWUgbnVtYmVyDQogICAgICAgICAgICAgICAgaWYgZXN0aW1hdGVkX2xhc3RfcmVudW1iZXJlZF9jdWVfbnVtYmVyID4gOTk5OS45OTkgdGhlbg0KICAgICAgICAgICAgICAgICAgICB0YWJsZS5pbnNlcnQoZXJyb3JzLCdIaWdoZXN0IG51bWJlciBmb3IgdGhlIGN1ZSByZWFjaGVkIVxuJykNCiAgICAgICAgICAgICAgICAgICAgc3VnZ2VzdGVkX3N0ZXAgPSAnJw0KICAgICAgICAgICAgICAgICAgICByZXN1bHQgPSBmYWxzZQ0KICAgICAgICAgICAgICAgIGVuZA0KICAgICAgICAgICAgZW5kDQogICAgICAgICAgICBpZiBub3QgcmVzdWx0IHRoZW4NCiAgICAgICAgICAgICAgICBsb2NhbCBlcnJvcl9zdHJpbmcgPSAnJw0KICAgICAgICAgICAgICAgIGZvciBfLGVycm9yIGluIGlwYWlycyhlcnJvcnMpIGRvDQogICAgICAgICAgICAgICAgICAgIGVycm9yX3N0cmluZyA9IGVycm9yX3N0cmluZy4uZXJyb3INCiAgIA==" />
                <Block Base64="ICAgICAgICAgICAgIGVuZA0KICAgICAgICAgICAgICAgIENvbmZpcm0oJ0luY29ycmVjdCBpbnB1dCEnLGVycm9yX3N0cmluZykNCiAgICAgICAgICAgIGVuZA0KICAgICAgICBlbHNlDQogICAgICAgICAgICAtLSBFY2hvKCdoZXJlJykNCiAgICAgICAgICAgIHJlc3VsdCA9IGZhbHNlDQogICAgICAgIGVuZA0KICAgIHVudGlsIChyZXN1bHQgYW5kIHJlc3VsdFRhYmxlLnJlc3VsdCA9PSAxKSBvciByZXN1bHRUYWJsZS5yZXN1bHQgPT0gMA0KICAgIGlmIHJlc3VsdFRhYmxlLnJlc3VsdCA9PSAxIHRoZW4NCiAgICAgICAgbG9jYWwgcGFydHNfd2l0aF90YXJnZXRzID0gY29sbGVjdF9taWJfYW5kX3RyYWNraW5nX3RhcmdldHMoc2VxX251bWJlcikNCiAgICAgICAgRWNobygnLS0tLS0tLS0tLS0tLS0tLS0tLS0tLScpDQogICAgICAgIEVjaG8oJ0ZpcnN0IHJlbnVtYmVyZWQgY3VlOiAnIC4uIHRvbnVtYmVyKHJlc3VsdFRhYmxlLmlucHV0c1snIEZyb20gQ3VlICddKSkNCiAgICAgICAgRWNobygnTGFzdCByZW51bWJlcmVkIGN1ZTogJyAuLiBsYXN0KQ0KICAgICAgICBFY2hvKCdGaXJzdCBuZXcgQ3VlIG51bWJlcjogJyAuLiB0b251bWJlcihyZXN1bHRUYWJsZS5pbnB1dHNbJ05ldyBOdW1iZXInXSkpDQogICAgICAgIEVjaG8oJ1N0ZXAgV2lkdGg6ICcgLi4gdG9udW1iZXIocmVzdWx0VGFibGUuaW5wdXRzWydTdGVwIFdpZHRoJ10pKQ0KICAgICAgICBFY2hvKCctLS0tLS0tLS0tLS0tLS0tLS0tLS0tJykNCiAgICAgICAgbG9jYWwgY3VlX2lkeCA9IGZpcnN0X2luZGV4DQogICAgICAgIGN1ZV9udW1iZXIgPSB0b251bWJlcihyZXN1bHRUYWJsZS5pbnB1dHNbJ05ldyBOdW1iZXInXSkNCiAgICAgICAgc3RlcCA9IHRvbnVtYmVyKHJlc3VsdFRhYmxlLmlucHV0c1snU3RlcCBXaWR0aCddKQ0KICAgICAgICB3aGlsZSBjdWVfaWR4IDw9IGxhc3RfaW5kZXggZG8NCiAgICAgICAgICAgIHNlbGVjdGVkX3NlcXVlbmNlW2N1ZV9pZHhdOlNldCgnbm8nLGN1ZV9udW1iZXIpDQogICAgICAgICAgICBjdWVfaQ==" />
                <Block Base64="ZHggPSBjdWVfaWR4ICsgMQ0KICAgICAgICAgICAgY3VlX251bWJlciA9IGN1ZV9udW1iZXIgKyBzdGVwDQogICAgICAgIGVuZA0KICAgICAgICByZXN0b3JlX21pYl9hbmRfdHJhY2tpbmdfdGFyZ2V0cyhwYXJ0c193aXRoX3RhcmdldHMpDQogICAgICAgIEVjaG8oJy0tLSBDdWVzIHJlbnVtYmVyZWQgLS0tJykNCiAgICBlbHNlDQogICAgICAgIEVjaG8oJy0tLSBSZW51bWJlcmluZyBDYW5jZWxsZWQgLS0tJykNCiAgICBlbmQNCmVuZA0KDQpsb2NhbCBmdW5jdGlvbiBtYWluKCkNCiAgICAtLSByZXF1aXJlICdnbWEzX2RlYnVnJygpDQogICAgbG9jYWwgc2VsZWN0ZWRfc2VxdWVuY2UNCiAgICBsb2NhbCBzZXF1ZW5jZXMgPSBEYXRhUG9vbCgpLlNlcXVlbmNlcw0KICAgIGxvY2FsIHNlcV9udW1iZXINCiAgICBsb2NhbCByZXN1bHQNCiAgICBsb2NhbCByZXN1bHRUYWJsZQ0KICAgIC0tIGNyZWF0ZSBpbnB1dHM6DQogICAgbG9jYWwgaW5wdXRzID0gew0KICAgICAgICB7bmFtZSA9ICdTZXF1ZW5jZSBudW1iZXInLHZhbHVlID0gKFNlbGVjdGVkU2VxdWVuY2UoKTpJbmRleCgpIG9yICcnKSwgd2hpdGVGaWx0ZXIgPSAnMDEyMzQ1Njc4OScsIG1heFRleHRMZW5ndGggPSAxMCwgdmtQbHVnaW49J051bWVyaWNJbnB1dCd9DQogICAgfQ0KICAgIGxvY2FsIHNlbGVjdG9ycyA9IHsNCiAgICAgICAgeyBuYW1lPSdXaGF0IGRvIHlvdSB3YW50IHRvIGRvPycsIHNlbGVjdGVkVmFsdWU9MSwgdmFsdWVzPXtbJ1JlbnVtYmVyJ109MSxbJ1NoaWZ0J109Mn0sIHR5cGU9MX0NCiAgICB9DQogICAgcmVwZWF0DQogICAgICAgIHJlc3VsdCA9IHRydWUNCiAgICAtLSBvcGVuIG1lc3NhZ2Vib3g6DQogICAgICAgIHJlc3VsdFRhYmxlID0NCiAgICAgICAgICAgIE1lc3NhZ2VCb3goDQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgdGl0bGUgPSAnUmVudW1iZXIgQ3VlcycsDQogICAgICAgICAgICAgICAgbWVzc2FnZSA9ICdTcGVjaWZ5IHRoZSBTZXF1ZW5jZSBhbmQgdGhlIGFjdGlvbicsDQogICAgICAgICAgIA==" />
                <Block Base64="ICAgICBtZXNzYWdlX2FsaWduX2ggPSBFbnVtcy5BbGlnbm1lbnRILkxlZnQsDQogICAgICAgICAgICAgICAgbWVzc2FnZV9hbGlnbl92ID0gRW51bXMuQWxpZ25tZW50Vi5Ub3AsDQogICAgICAgICAgICAgICAgY29tbWFuZHMgPSB7e3ZhbHVlID0gMSwgbmFtZSA9ICdPayd9LCB7dmFsdWUgPSAwLCBuYW1lID0gJ0NhbmNlbCd9fSwNCiAgICAgICAgICAgICAgICBpbnB1dHMgPSBpbnB1dHMsDQogICAgICAgICAgICAgICAgc2VsZWN0b3JzID0gc2VsZWN0b3JzLA0KICAgICAgICAgICAgICAgIGJhY2tDb2xvciA9ICdHbG9iYWwuRGVmYXVsdCcsDQogICAgICAgICAgICAgICAgLS0gaWNvbiA9ICdsb2dvX3NtYWxsJywNCiAgICAgICAgICAgICAgICB0aXRsZVRleHRDb2xvciA9ICdHbG9iYWwuVGV4dCcsDQogICAgICAgICAgICAgICAgbWVzc2FnZVRleHRDb2xvciA9ICdHbG9iYWwuVGV4dCcsDQogICAgICAgICAgICAgICAgYXV0b0Nsb3NlT25JbnB1dCA9IGZhbHNlDQogICAgICAgICAgICB9DQogICAgICAgICkNCiAgICAgICAgc2VxX251bWJlciA9IHRvbnVtYmVyKHJlc3VsdFRhYmxlLmlucHV0c1snU2VxdWVuY2UgbnVtYmVyJ10pDQogICAgICAgIHNlbGVjdGVkX3NlcXVlbmNlID0gc2VxdWVuY2VzW3NlcV9udW1iZXJdDQogICAgICAgIGlmIG5vdCBzZWxlY3RlZF9zZXF1ZW5jZSB0aGVuDQogICAgICAgICAgICBDb25maXJtKCdTZXF1ZW5jZSBkb2VzblwndCBleGlzdCcpDQogICAgICAgICAgICByZXN1bHQgPSBmYWxzZQ0KICAgICAgICBlbmQNCiAgICB1bnRpbCAocmVzdWx0IGFuZCByZXN1bHRUYWJsZS5yZXN1bHQgPT0gMSkgb3IgcmVzdWx0VGFibGUucmVzdWx0ID09IDANCiAgICBpZiByZXN1bHRUYWJsZS5yZXN1bHQgPT0gMSBhbmQgcmVzdWx0VGFibGUuc2VsZWN0b3JzWydXaGF0IGRvIHlvdSB3YW50IHRvIGRvPyddID09IDIgdGhlbg0KICAgICAgICBFY2hvKCctLS0gU2hpZnQgc2VsZWN0ZWQgLS0tJykNCiAgICAgICAgc2hpZnQoc2VsZWN0ZWRfc2VxdWVuY2UpDQogICAgZWxzZWlmIA==" />
                <Block Base64="cmVzdWx0VGFibGUucmVzdWx0ID09IDEgYW5kIHJlc3VsdFRhYmxlLnNlbGVjdG9yc1snV2hhdCBkbyB5b3Ugd2FudCB0byBkbz8nXSA9PSAxIHRoZW4NCiAgICAgICAgRWNobygnLS0tIFJlbnVtYmVyIHNlbGVjdGVkIC0tLScpDQogICAgICAgIHJlbnVtYmVyKHNlbGVjdGVkX3NlcXVlbmNlKQ0KICAgIGVsc2VpZiByZXN1bHRUYWJsZS5yZXN1bHQgPT0gMCB0aGVuDQogICAgICAgIEVjaG8oJy0tLSBSZW51bWJlcmluZyBDYW5jZWxsZWQgLS0tJykNCiAgICBlbmQNCmVuZA0KDQpyZXR1cm4gbWFpbg==" />
            </FileContent>
        </ComponentLua>
    </UserPlugin>
</GMA3>
