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CHIafANyFHQAgwB9AW4GdAGDAH0BfABkAWsJcj50AnwAdAN0BHQFZgODAgwAcj50A3wAgwF9BW4EfAB9BXwCcmp8BXBMZAJ9BXQCfAV0A4MCcmJ8BWQDNwB9BW4IfAVkBDcAfQV8BXN6fAFqBoMAAQBkAVMAdAJ8BXQEdAVmAoMCcrh0B3wBgwF9BnwGZAFrCXL2fAFqBoMAAQB8BmoIfAWDAQEAfAZqBoMAAQBkAVMAbj50CXwEgwF9BHQKfAF8BIMCctR0C3wFgwF9BW4idAxy9nQNZAFrCXLqdA18AYMBfQFuDHwEc/Z0C3wFgwF9BXwBagh8BYMBAQB8AWoGgwABAGQBUwApBWERBgAAUHJpbnQgYSBtZXNzYWdlIGFuZCBuZXdsaW5lIHRvIHN0ZG91dCBvciBhIGZpbGUuIFRoaXMgc2hvdWxkIGJlCiAgICB1c2VkIGluc3RlYWQgb2YgOmZ1bmM6YHByaW50YCBiZWNhdXNlIGl0IHByb3ZpZGVzIGJldHRlciBzdXBwb3J0CiAgICBmb3IgZGlmZmVyZW50IGRhdGEsIGZpbGVzLCBhbmQgZW52aXJvbm1lbnRzLgoKICAgIENvbXBhcmVkIHRvIDpmdW5jOmBwcmludGAsIHRoaXMgZG9lcyB0aGUgZm9sbG93aW5nOgoKICAgIC0gICBFbnN1cmVzIHRoYXQgdGhlIG91dHB1dCBlbmNvZGluZyBpcyBub3QgbWlzY29uZmlndXJlZCBvbiBMaW51eC4KICAgIC0gICBTdXBwb3J0cyBVbmljb2RlIGluIHRoZSBXaW5kb3dzIGNvbnNvbGUuCiAgICAtICAgU3VwcG9ydHMgd3JpdGluZyB0byBiaW5hcnkgb3V0cHV0cywgYW5kIHN1cHBvcnRzIHdyaXRpbmcgYnl0ZXMKICAgICAgICB0byB0ZXh0IG91dHB1dHMuCiAgICAtICAgU3VwcG9ydHMgY29sb3JzIGFuZCBzdHlsZXMgb24gV2luZG93cy4KICAgIC0gICBSZW1vdmVzIEFOU0kgY29sb3IgYW5kIHN0eWxlIGNvZGVzIGlmIHRoZSBvdXRwdXQgZG9lcyBub3QgbG9vawogICAgICAgIGxpa2UgYW4gaW50ZXJhY3RpdmUgdGVybWluYWwuCiAgICAtICAgQWx3YXlzIGZsdXNoZXMgdGhlIG91dHB1dC4KCiAgICA6cGFyYW0gbWVzc2FnZTogVGhlIHN0cmluZyBvciBieXRlcyB0byBvdXRwdXQuIE90aGVyIG9iamVjdHMgYXJlCiAgICAgICAgY29udmVydGVkIHRvIHN0cmluZ3MuCiAgICA6cGFyYW0gZmlsZTogVGhlIGZpbGUgdG8gd3JpdGUgdG8uIERlZmF1bHRzIHRvIGBgc3Rkb3V0YGAuCiAgICA6cGFyYW0gZXJyOiBXcml0ZSB0byBgYHN0ZGVycmBgIGluc3RlYWQgb2YgYGBzdGRvdXRgYC4KICAgIDpwYXJhbSBubDogUHJpbnQgYSBuZXdsaW5lIGFmdGVyIHRoZSBtZXNzYWdlLiBFbmFibGVkIGJ5IGRlZmF1bHQuCiAgICA6cGFyYW0gY29sb3I6IEZvcmNlIHNob3dpbmcgb3IgaGlkaW5nIGNvbG9ycyBhbmQgb3RoZXIgc3R5bGVzLiBCeQogICAgICAgIGRlZmF1bHQgQ2xpY2sgd2lsbCByZW1vdmUgY29sb3IgaWYgdGhlIG91dHB1dCBkb2VzIG5vdCBsb29rIGxpa2UKICAgICAgICBhbiBpbnRlcmFjdGl2ZSB0ZXJtaW5hbC4KCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDYuMAogICAgICAgIFN1cHBvcnQgVW5pY29kZSBvdXRwdXQgb24gdGhlIFdpbmRvd3MgY29uc29sZS4gQ2xpY2sgZG9lcyBub3QKICAgICAgICBtb2RpZnkgYGBzeXMuc3Rkb3V0YGAsIHNvIGBgc3lzLnN0ZG91dC53cml0ZSgpYGAgYW5kIGBgcHJpbnQoKWBgCiAgICAgICAgd2lsbCBzdGlsbCBub3Qgc3VwcG9ydCBVbmljb2RlLgoKICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogNC4wCiAgICAgICAgQWRkZWQgdGhlIGBgY29sb3JgYCBwYXJhbWV0ZXIuCgogICAgLi4gdmVyc2lvbmFkZGVkOjogMy4wCiAgICAgICAgQWRkZWQgdGhlIGBgZXJyYGAgcGFyYW1ldGVyLgoKICAgIC4uIHZlcnNpb25jaGFuZ2VkOjogMi4wCiAgICAgICAgU3VwcG9ydCBjb2xvcnMgb24gV2luZG93cyBpZiBjb2xv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IGlzCiAgICB3cmFwcGVkIHNvIHRoYXQgdXNpbmcgaXQgaW4gYSBjb250ZXh0IG1hbmFnZXIgd2lsbCBub3QgY2xvc2UgaXQuCiAgICBUaGlzIG1ha2VzIGl0IHBvc3NpYmxlIHRvIHVzZSB0aGUgZnVuY3Rpb24gd2l0aG91dCBhY2NpZGVudGFsbHkKICAgIGNsb3NpbmcgYSBzdGFuZGFyZCBzdHJlYW06CgogICAgLi4gY29kZS1ibG9jazo6IHB5dGhvbgoKICAgICAgICB3aXRoIG9wZW5fZmlsZShmaWxlbmFtZSkgYXMgZjoKICAgICAgICAgICAgLi4uCgogICAgOnBhcmFtIGZpbGVuYW1lOiBUaGUgbmFtZSBvZiB0aGUgZmlsZSB0byBvcGVuLCBvciBgYCctJ2BgIGZvcgogICAgICAgIGBgc3RkaW5gYC9gYHN0ZG91dGBgLgogICAgOnBhcmFtIG1vZGU6IFRoZSBtb2RlIGluIHdoaWNoIHRvIG9wZW4gdGhlIGZpbGUuCiAgICA6cGFyYW0gZW5jb2Rpbmc6IFRoZSBlbmNvZGluZyB0byBkZWNvZGUgb3IgZW5jb2RlIGEgZmlsZSBvcGVuZWQgaW4KICAgICAgICB0ZXh0IG1vZGUuCiAgICA6cGFyYW0gZXJyb3JzOiBUaGUgZXJyb3IgaGFuZGxpbmcgbW9kZS4KICAgIDpwYXJhbSBsYXp5OiBXYWl0IHRvIG9wZW4gdGhlIGZpbGUgdW50aWwgaXQgaXMgYWNjZXNzZWQuIEZvciByZWFkCiAgICAgICAgbW9kZSwgdGhlIGZpbGUgaXMgdGVtcG9yYXJpbHkgb3BlbmVkIHRvIHJhaXNlIGFjY2VzcyBlcnJvcnMKICAgICAgICBlYXJseSwgdGhlbiBjbG9zZWQgdW50aWwgaXQgaXMgcmVhZCBhZ2Fpbi4KICAgIDpwYXJhbSBhdG9taWM6IFdyaXRlIHRvIGEgdGVtcG9yYXJ5IGZpbGUgYW5kIHJlcGxhY2UgdGhlIGdpdmVuIGZpbGUKICAgICAgICBvbiBjbG9zZS4KCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjAKICAgICkBckQAAAApBnIhAAAAciIAAAByZgAAAHI9AAAAcgsAAAByaQAAACkIckAAAAByQQAA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bGxlZCBgYCJGb28gQmFyImBgLCBzb21ldGhpbmcgbGlrZQogICAgdGhlIGZvbGxvd2luZyBmb2xkZXJzIGNvdWxkIGJlIHJldHVybmVkOgoKICAgIE1hYyBPUyBYOgogICAgICBgYH4vTGlicmFyeS9BcHBsaWNhdGlvbiBTdXBwb3J0L0ZvbyBCYXJgYAogICAgTWFjIE9TIFggKFBPU0lYKToKICAgICAgYGB+Ly5mb28tYmFyYGAKICAgIFVuaXg6CiAgICAgIGBgfi8uY29uZmlnL2Zvby1iYXJgYAogICAgVW5peCAoUE9TSVgpOgogICAgICBgYH4vLmZvby1iYXJgYAogICAgV2luZG93cyAocm9hbWluZyk6CiAgICAgIGBgQzpcVXNlcnNcPHVzZXI+XEFwcERhdGFcUm9hbWluZ1xGb28gQmFyYGAKICAgIFdpbmRvd3MgKG5vdCByb2FtaW5nKToKICAgICAgYGBDOlxVc2Vyc1w8dXNlcj5cQXBwRGF0YVxMb2NhbFxGb28gQmFyYGAKCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAyLjAKCiAgICA6cGFyYW0gYXBwX25hbWU6IHRoZSBhcHBsaWNhdGlvbiBuYW1lLiAgVGhpcyBzaG91bGQgYmUgcHJvcGVybHkgY2FwaXRhbGl6ZWQKICAgICAgICAgICAgICAgICAgICAgYW5kIGNhbiBjb250YWluIHdoaXRlc3BhY2UuCiAgICA6cGFyYW0gcm9hbWluZzogY29udHJvbHMgaWYgdGhlIGZvbGRlciBzaG91bGQgYmUgcm9hbWluZyBvciBub3Qgb24gV2luZG93cy4KICAgICAgICAgICAgICAgICAgICBIYXMgbm8gYWZmZWN0IG90aGVyd2lzZS4KICAgIDpwYXJhbSBmb3JjZV9wb3NpeDogaWYgdGhpcyBpcyBzZXQgdG8gYFRydWVgIHRoZW4gb24gYW55IFBPU0lYIHN5c3RlbSB0aGUKICAgICAgICAgICAgICAgICAgICAgICAgZm9sZGVyIHdpbGwgYmUgc3RvcmVkIGluIHRoZSBob21lIGZvbGRlciB3aXRoIGEgbGVhZGluZwogICAgICAgICAgICAgICAgICAgICAgICBkb3QgaW5zdGVhZCBvZiB0aGUgWERHIGNv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ICB0ZXh0LiBJZiBhIGZpbGUgb3IgZW50cnkgcG9pbnQgd2FzIGV4ZWN1dGVkLCB0aGUgZmlsZSBuYW1lIGlzCiAgICByZXR1cm5lZC4gSWYgYGBweXRob24gLW1gYCB3YXMgdXNlZCB0byBleGVjdXRlIGEgbW9kdWxlIG9yIHBhY2thZ2UsCiAgICBgYHB5dGhvbiAtbSBuYW1lYGAgaXMgcmV0dXJuZWQuCgogICAgVGhpcyBkb2Vzbid0IHRyeSB0byBiZSB0b28gcHJlY2lzZSwgdGhlIGdvYWwgaXMgdG8gZ2l2ZSBhIGNvbmNpc2UKICAgIG5hbWUgZm9yIGhlbHAgdGV4dC4gRmlsZXMgYXJlIG9ubHkgc2hvd24gYXMgdGhlaXIgbmFtZSB3aXRob3V0IHRoZQogICAgcGF0aC4gYGBweXRob25gYCBpcyBvbmx5IHNob3duIGZvciBtb2R1bGVzLCBhbmQgdGhlIGZ1bGwgcGF0aCB0bwogICAgYGBzeXMuZXhlY3V0YWJsZWBgIGlzIG5vdCBzaG93bi4KCiAgICA6cGFyYW0gcGF0aDogVGhlIFB5dGhvbiBmaWxlIGJlaW5nIGV4ZWN1dGVkLiBQeXRob24gcHV0cyB0aGlzIGluCiAgICAgICAgYGBzeXMuYXJndlswXWBgLCB3aGljaCBpcyB1c2VkIGJ5IGRlZmF1bHQuCiAgICA6cGFyYW0gX21haW46IFRoZSBgYF9fbWFpbl9fYGAgbW9kdWxlLiBUaGlzIHNob3VsZCBvbmx5IGJlIHBhc3NlZAogICAgICAgIGR1cmluZyBpbnRlcm5hbCB0ZXN0aW5nLgoKICAgIC4uIHZlcnNpb25hZGRlZDo6IDguMAogICAgICAgIEJhc2VkIG9uIGNvbW1hbmQgYXJncyBkZXRlY3Rpb24gaW4gdGhlIFdlcmt6ZXVnIHJlbG9hZGVyLgoKICAgIDptZXRhIHByaXZhdGU6CiAgICByAQAAANoLX19wYWNrYWdlX19O2gJudHIvAAAAegQuZXhlcqIAAAByMQAAAHoKcHl0aG9uIC1tICkOcoYAAAByhwAAAHJLAAAAcooAAAByEwAAAHKkAAAAcosAAADaBmV4aXN0c3KMAAAAciEAAAByIgAAAHIqAAAA2ghzcGxpdGV4dNoGbHN0cmlw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