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AH0BfABkBmQFhQIZAH0AcQB0AHQBagJnAHwBogF8AKIBUgCOAIMBUwApB2HsAgAAQ29udmVydCBhIGxlZ2FjeSBpbnN0YWxsZWQtZmlsZXMudHh0IHBhdGggaW50byBtb2Rlcm4gUkVDT1JEIHBhdGguCgogICAgVGhlIGxlZ2FjeSBmb3JtYXQgc3RvcmVzIHBhdGhzIHJlbGF0aXZlIHRvIHRoZSBpbmZvIGRpcmVjdG9yeSwgd2hpbGUgdGhlCiAgICBtb2Rlcm4gZm9ybWF0IHN0b3JlcyBwYXRocyByZWxhdGl2ZSB0byB0aGUgcGFja2FnZSByb290LCBlLmcuIHRoZQogICAgc2l0ZS1wYWNrYWdlcyBkaXJlY3RvcnkuCgogICAgOnBhcmFtIGVudHJ5OiBQYXRoIHBhcnRzIG9mIHRoZSBpbnN0YWxsZWQtZmlsZXMudHh0IGVudHJ5LgogICAgOnBhcmFtIGluZm86IFBhdGggcGFydHMgb2YgdGhlIGVnZy1pbmZvIGRpcmVjdG9yeSByZWxhdGl2ZSB0byBwYWNrYWdlIHJvb3QuCiAgICA6cmV0dXJuczogVGhlIGNvbnZlcnRlZCBlbnRyeS4KCiAgICBGb3IgYmVzdCBjb21wYXRpYmlsaXR5IHdpdGggc3ltbGlua3MsIHRoaXMgZG9lcyBub3QgdXNlIGBgYWJzcGF0aCgpYGAgb3IKICAgIGBgUGF0aC5yZXNvbHZlKClgYCwgYnV0IHRyaWVzIHRvIHdvcmsgd2l0aCBwYXRoIHBhcnRzOgoKICAgIDEuIFdoaWxlIGBgZW50cnlgYCBzdGFydHMgd2l0aCBgYC4uYGAsIHJlbW92ZSB0aGUgZXF1YWwgYW1vdW50cyBvZiBwYXJ0cwogICAgICAgZnJvbSBgYGluZm9gYDsgaWYgYGBpbmZvYGAgaXMgZW1wdHksIHN0YXJ0IGFwcGVuZGluZyBgYC4uYGAgaW5zdGVhZC4KICAgIDIuIEpvaW4gdGhlIHR3byBkaXJlY3RseS4KICAgIHIBAAAA+gIuLun/////KQFyOAAAAE5yIQAAAKkDcjUAAADaB3BhdGhsaWLaBFBhdGgpAnI2AAAAcjcAAAByLAAAAHIsAAAAci0AAADaHV9jb252ZXJ0X2luc3RhbGxlZF9maWxlc19w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AX0CfAJyMnwAagZTAGQBUwApAnrJVGhlIHByb2plY3QgbG9jYXRpb24gZm9yIGVkaXRhYmxlIGRpc3RyaWJ1dGlvbnMuCgogICAgICAgIFRoaXMgaXMgdGhlIGRpcmVjdG9yeSB3aGVyZSBweXByb2plY3QudG9tbCBvciBzZXR1cC5weSBpcyBsb2NhdGVkLgogICAgICAgIE5vbmUgaWYgdGhlIGRpc3RyaWJ1dGlvbiBpcyBub3QgaW5zdGFsbGVkIGluIGVkaXRhYmxlIG1vZGUuCiAgICAgICAgTikH2gpkaXJlY3RfdXJsWhFpc19sb2NhbF9lZGl0YWJsZXIgAAAA2gN1cmxyHAAAAHJQAAAAclIAAAApA3IrAAAAclUAAADaDWVnZ19saW5rX3BhdGhyLAAAAHIsAAAAci0AAADaGWVkaXRhYmxlX3Byb2plY3RfbG9jYXRpb26oAAAAcxAAAAAACAYBBAEIAQwECgEEAwYBeipCYXNlRGlzdHJpYnV0aW9uLmVkaXRhYmxlX3Byb2plY3RfbG9jYXRpb25jAQAAAAAAAAAAAAAAAQAAAAEAAABDAAAAcwoAAAB0AIMAggFkAVMAKQJhkgEAAFRoZSBkaXN0cmlidXRpb24ncyAiaW5zdGFsbGVkIiBsb2NhdGlvbi4KCiAgICAgICAgVGhpcyBzaG91bGQgZ2VuZXJhbGx5IGJlIGEgYGBzaXRlLXBhY2thZ2VzYGAgZGlyZWN0b3J5LiBUaGlzIGlzCiAgICAgICAgdXN1YWxseSBgYGRpc3QubG9jYXRpb25gYCwgZXhjZXB0IGZvciBsZWdhY3kgZGV2ZWxvcC1pbnN0YWxsZWQgcGFja2FnZXMsCiAgICAgICAgd2hlcmUgYGBkaXN0LmxvY2F0aW9uYGAgaXMgdGhlIHNvdXJjZSBjb2RlIGxvY2F0aW9uLCBhbmQgdGhpcyBpcyB3aGVyZQogICAgICAgIHRoZSBgYC5lZ2ctbGlua2BgIGZpbGUgaXMuCgogICAgICAgIFRoZSByZXR1cm5lZCBsb2NhdGlvbiBpcyBub3JtYWxpemVkIChpbiBwYXJ0aWN1bGFyLCB3aXRoIHN5bWxpbmtzIHJlbW92ZWQpLgogICAgICAgIE5yKAAAAHIqAAAAciwAAAByLAAAAHItAAAA2hJpbnN0YWxsZWRfbG9jYXRpb26+AAAAcwIAAAAAC3ojQmFzZURpc3RyaWJ1dGlvbi5pbnN0YWxsZWRfbG9jYXRpb25jAQAAAAAAAAAAAAAAAQAAAAEAAABDAAAAcwoAAAB0AIMAggFkAVMAKQJhLwIAAExvY2F0aW9uIG9mIHRoZSAuW2VnZ3xkaXN0XS1pbmZvIGRpcmVjdG9yeSBvciBmaWxlLgoKICAgICAgICBTaW1pbGFybHkgdG8gYGBsb2NhdGlvbmBgLCBhIHN0cmluZyB2YWx1ZSBpcyBub3QgbmVjZXNzYXJpbHkgYQogICAgICAgIGZpbGVzeXN0ZW0gcGF0aC4gYGBOb25lYGAgbWVhbnMgdGhlIGRpc3RyaWJ1dGlvbiBpcyBjcmVhdGVkIGluLW1lbW9yeS4KCiAgICAgICAgRm9yIGEgbW9kZXJuIC5kaXN0LWluZm8gaW5zdGFsbGF0aW9uIG9uIGRpc2ssIHRoaXMgc2hvdWxkIGJlIHNvbWV0aGluZwogICAgICAgIGxpa2UgYGB7bG9jYXRpb259L3tyYXdfbmFtZX0te3ZlcnNpb259LmRpc3QtaW5mb2BgLgoKICAgICAgICBEbyBub3QgY2Fub25pY2FsaXplIHRoaXMgdmFsdWUgd2l0aCBlLmcuIGBgcGF0aGxpYi5QYXRoLnJlc29sdmUoKWBgLiBJZgogICAgICAgIHRoaXMgaXMgYSBzeW1ib2xpYyBsaW5rLCB3ZSB3YW50IHRvIHByZXNlcnZlIHRoZSByZWxhdGl2ZSBwYXRoIGJldHdlZW4KICAgICAgICBpdCBhbmQgb3RoZXIgZmlsZXMgaW4gdGhlIGRpc3RyaWJ1dGlvbi4KICAgICAgICBOcigAAAByKgAAAHIsAAAAciwAAAByLQAAANoNaW5mb19sb2NhdGlvbssAAABzAgAAAAAOeh5CYXNlRGlzdHJpYnV0aW9uLmluZm9fbG9jYXRpb25jAQAAAAAAAAAAAAAAAgAAAAMAAABDAAAAcxwAAAB8AGoAfQF8AXMOZAFTAHQBoAJ8AaEBoAOhAFMAKQJhHgEAAFdoZXRoZXIgdGhpcyBkaXN0cmlidXRpb24gaXMgaW5zdGFsbGVkIHdpdGggbGVnYWN5IGRpc3R1dGlscyBmb3JtYXQuCgogICAgICAgIEEgZGlzdHJpYnV0aW9uIGluc3RhbGxlZCB3aXRoICJyYXciIGRpc3R1dGlscyBub3QgcGF0Y2hlZCBieSBzZXR1cHRvb2xzCiAgICAgICAgdXNlcyBvbmUgc2luZ2xlIGZpbGUgYXQgYGBpbmZvX2xvY2F0aW9uYGAgdG8gc3RvcmUgbWV0YWRhdGEuIFdlIG5lZWQgdG8KICAgICAgICB0cmVhdCB0aGlzIHNwZWNpYWxseSBvbiB1bmluc3RhbGxhdGlvbi4KICAgICAgICBGKQRyWgAAAHI7AAAAcjwAAADaB2lzX2ZpbGWpAnIrAAAAcloAAAByLAAAAHIsAAAAci0AAADaFmluc3RhbGxlZF9ieV9kaXN0dXRpbHPbAAAAcwgAAAAACAYBBAEEAXonQmFzZURpc3RyaWJ1dGlvbi5pbnN0YWxsZWRfYnlfZGlzdHV0aWxzYwEAAAAAAAAAAAAAAAIAAAADAAAAQwAAAHMYAAAAfABqAH0BfAFzDmQBUwB8AaABZAKhAVMAKQN6pldoZXRoZXIgdGhpcyBkaXN0cmlidXRpb24gaXMgaW5zdGFsbGVkIGFzIGFuIGVnZy4KCiAgICAgICAgVGhpcyB1c3VhbGx5IGluZGljYXRlcyB0aGUgZGlzdHJpYnV0aW9uIHdhcyBpbnN0YWxsZWQgYnkgKG9sZGVyIHZlcnNpb25zCiAgICAgICAgb2YpIGVhc3lfaW5zdGFsbC4KICAgICAgICBGegQuZWdnKQJyUgAAANoIZW5kc3dpdGipAnIrAAAAclIAAAByLAAAAHIsAAAAci0AAADaEGluc3RhbGxlZF9hc19lZ2foAAAAcwgAAAAABwYBBAEEAXohQmFzZURpc3RyaWJ1dGlvbi5pbnN0YWxsZWRfYXNfZWdnYwEAAAAAAAAAAAAAAAIAAAADAAAAQwAAAHMqAAAAfABqAH0BfAFzDmQBUwB8AaABZAKhAXMcZAFTAHQCoAN8AaEBoAShAFMAKQNh2QEAAFdoZXRoZXIgdGhpcyBkaXN0cmlidXRpb24gaXMgaW5zdGFsbGVkIHdpdGggdGhlIGBgLmVnZy1pbmZvYGAgZm9ybWF0LgoKICAgICAgICBUaGlzIHVzdWFsbHkgaW5kaWNhdGVzIHRoZSBkaXN0cmlidXRpb24gd2FzIGluc3RhbGxlZCB3aXRoIHNldHVwdG9vbHMKICAgICAgICB3aXRoIGFuIG9sZCBwaXAgdmVyc2lvbiBvciB3aXRoIGBgc2luZ2xlLXZlcnNpb24tZXh0ZXJuYWxseS1tYW5hZ2VkYGAuCgogICAgICAgIE5vdGUgdGhhdCB0aGlzIGVuc3VyZSB0aGUgbWV0YWRhdGEgc3RvcmUgaXMgYSBkaXJlY3RvcnkuIGRpc3R1dGlscyBjYW4KICAgICAgICBhbHNvIGluc3RhbGxzIGFuIGBgLmVnZy1pbmZvYGAsIGJ1dCBhcyBhIGZpbGUsIG5vdCBhIGRpcmVjdG9yeS4gVGhpcwogICAgICAgIHByb3BlcnR5IGlzICpGYWxzZSogZm9yIHRoYXQgY2FzZS4gQWxzbyBzZWUgYGBpbnN0YWxsZWRfYnlfZGlzdHV0aWxzYGAuCiAgICAgICAgRnoJLmVnZy1pbmZvqQVyWgAAAHJeAAAAcjsAAAByPAAAANoGaXNfZGlyclwAAAByLAAAAHIsAAAAci0AAADaImluc3RhbGxlZF93aXRoX3NldHVwdG9vbHNfZWdnX2luZm/0AAAAcwwAAAAACwYBBAEEAQoBBAF6M0Jhc2VEaXN0cmlidXRpb24uaW5zdGFsbGVkX3dpdGhfc2V0dXB0b29sc19lZ2dfaW5mb2MBAAAAAAAAAAAAAAACAAAAAwAAAEMAAABzKgAAAHwAagB9AXwBcw5kAVMAfAGgAWQCoQFzHGQBUwB0AqADfAGhAaAEoQBTACkDYWEBAABXaGV0aGVyIHRoaXMgZGlzdHJpYnV0aW9uIGlzIGluc3RhbGxlZCB3aXRoIHRoZSAibW9kZXJuIGZvcm1hdCIuCgogICAgICAgIFRoaXMgaW5kaWNhdGVzIGEgIm1vZGVybiIgaW5zdGFsbGF0aW9uLCBlLmcuIHN0b3JpbmcgbWV0YWRhdGEgaW4gdGhlCiAgICAgICAgYGAuZGlzdC1pbmZvYGAgZGlyZWN0b3J5LiBUaGlzIGFwcGxpZXMgdG8gaW5zdGFsbGF0aW9ucyBtYWRlIGJ5CiAgICAgICAgc2V0dXB0b29scyAoYnV0IHRocm91Z2ggcGlwLCBub3QgZGlyZWN0bHkpLCBvciBhbnl0aGluZyB1c2luZyB0aGUKICAgICAgICBzdGFuZGFyZGl6ZWQgYnVp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X21ldGFkYXRhX2ltcGyCAQAAcwIAAAAAAXofQmFzZURpc3RyaWJ1dGlvbi5fbWV0YWRhdGFfaW1wbHIhAAAAKQHaB21heHNpemVjAQAAAAAAAAAAAAAAAgAAAAMAAABDAAAAcxYAAAB8AKAAoQB9AXwAoAF8AaEBAQB8AVMAcicAAAApAnKJAAAA2hZfYWRkX2VnZ19pbmZvX3JlcXVpcmVzKQJyKwAAANoIbWV0YWRhdGFyLAAAAHIsAAAAci0AAADaEF9tZXRhZGF0YV9jYWNoZWSFAQAAcwYAAAAABAgBCgF6IUJhc2VEaXN0cmlidXRpb24uX21ldGFkYXRhX2NhY2hlZGMBAAAAAAAAAAAAAAABAAAAAgAAAEMAAABzCAAAAHwAoAChAFMAKQFhEgEAAE1ldGFkYXRhIG9mIGRpc3RyaWJ1dGlvbiBwYXJzZWQgZnJvbSBlLmcuIE1FVEFEQVRBIG9yIFBLRy1JTkZPLgoKICAgICAgICBUaGlzIHNob3VsZCByZXR1cm4gYW4gZW1wdHkgbWVzc2FnZSBpZiB0aGUgbWV0YWRhdGEgZmlsZSBpcyB1bmF2YWlsYWJsZS4KCiAgICAgICAgOnJhaXNlcyBOb25lTWV0YWRhdGFFcnJvcjogSWYgdGhlIG1ldGFkYXRhIGZpbGUgaXMgYXZhaWxhYmxlLCBidXQgZG9lcwogICAgICAgICAgICBub3QgY29udGFpbiB2YWxpZCBtZXRhZGF0YS4KICAgICAgICApAXKNAAAAcioAAAByLAAAAHIsAAAAci0AAAByjAAAAI0BAABzAgAAAAAJehlCYXNlRGlzdHJpYnV0aW9uLm1ldGFkYXRhYwEAAAAAAAAAAAAAAAEAAAACAAAAQwAAAHMKAAAAdAB8AGoBgwFTACkBYRsBAABQRVAgNTY2IGNvbXBsaWFudCBKU09OLXNlcmlhbGl6YWJsZSByZXByZXNlbnRhdGlvbiBvZiBNRVRBREFUQSBvciBQS0ctSU5GTy4KCiAgICAgICAgVGhpcyBzaG91bGQgcmV0dXJuIGFuIGVtcHR5IGRpY3QgaWYgdGhlIG1ldGFkYXRhIGZpbGUgaXMgdW5hdmFpbGFibGUuCgogICAgICAgIDpyYWlzZXMgTm9uZU1ldGFkYXRhRXJyb3I6IElmIHRoZSBtZXRhZGF0YSBmaWxlIGlzIGF2YWlsYWJsZSwgYnV0IGRvZXMKICAgICAgICAgICAgbm90IGNvbnRhaW4gdmFsaWQgbWV0YWRhdGEuCiAgICAgICAgKQJyIgAAAHKMAAAAcioAAAByLAAAAHIsAAAAci0AAADaDW1ldGFkYXRhX2RpY3SYAQAAcwIAAAAACXoeQmFzZURpc3RyaWJ1dGlvbi5tZXRhZGF0YV9kaWN0YwEAAAAAAAAAAAAAAAEAAAADAAAAQwAAAHMMAAAAfABqAKABZAGhAVMAKQJ6RFZhbHVlIG9mICJNZXRhZGF0YS1WZXJzaW9uOiIgaW4gZGlzdHJpYnV0aW9uIG1ldGFkYXRhLCBpZiBhdmFpbGFibGUuehBNZXRhZGF0YS1WZXJzaW9uKQJyjAAAANoDZ2V0cioAAAByLAAAAHIsAAAAci0AAADaEG1ldGFkYXRhX3ZlcnNpb26jAQAAcwIAAAAAA3ohQmFzZURpc3RyaWJ1dGlvbi5tZXRhZGF0YV92ZXJzaW9uYwEAAAAAAAAAAAAAAAEAAAAEAAAAQwAAAHMQAAAAfABqAKABZAF8AGoCoQJTACkCeipWYWx1ZSBvZiAiTmFtZToiIGluIGRpc3RyaWJ1dGlvbiBtZXRhZGF0YS7aBE5hbWUpA3KMAAAAco8AAAByZQAAAHIqAAAAciwAAAByLAAAAHItAAAAclAAAACoAQAAcwIAAAAABXoZQmFzZURpc3RyaWJ1dGlvbi5yYXdfbmFtZWMBAAAAAAAAAAAAAAAFAAAACgAAAEMAAABzbgAAAHwAagCgAWQBoQF9AXwBZAJ1AHIadAKDAFMAehB0AnQDfAGDAYMBfQJXAG4+BAB0BHloAQB9AwEAeiZkA30EdAWgBnwEfABqB3wDoQMBAHQCgwBXAAYAWQBkAn0DfgNTAGQCfQN+AzAAMAB8AlMAKQR6sVZhbHVlIG9mICJSZXF1aXJlcy1QeXRob246IiBpbiBkaXN0cmlidXRpb24gbWV0YWRhdGEuCgogICAgICAgIElmIHRoZSBrZXkgZG9lcyBub3QgZXhpc3Qgb3IgY29udGFpbnMgYW4gaW52YWxpZCB2YWx1ZSwgYW4gZW1wdHkKICAgICAgICBTcGVjaWZpZXJTZXQgc2hvdWxkIGJlIHJldHVybmVkLgogICAgICAgIHoPUmVxdWlyZXMtUHl0aG9uTnotUGFja2FnZSAlciBoYXMgYW4gaW52YWxpZCBSZXF1aXJlcy1QeXRob246ICVzKQhyjAAAAHKPAAAAchEAAAByNQAAAHIQAAAAcnAAAABycQAAAHJQAAAAKQVyKwAAAHIvAAAA2gRzcGVjcnMAAADaB21lc3NhZ2VyLAAAAHIsAAAAci0AAADaD3JlcXVpcmVzX3B5dGhvbq8BAABzFAAAAAAHDAEIAQYBAgIQAQ4BBAEQARwBeiBCYXNlRGlzdHJpYnV0aW9uLnJlcXVpcmVzX3B5dGhvbnIsAAAAKQLaBmV4dHJhc3ImAAAAYwIAAAAAAAAAAAAAAAIAAAABAAAAQwAAAHMKAAAAdACDAIIBZAFTACkCeq5EZXBlbmRlbmNpZXMgb2YgdGhpcyBkaXN0cmlidXRpb24uCgogICAgICAgIEZvciBtb2Rlcm4gLmRpc3QtaW5mbyBkaXN0cmlidXRpb25zLCB0aGlzIGlzIHRoZSBjb2xsZWN0aW9uIG9mCiAgICAgICAgIlJlcXVpcmVzLURpc3Q6IiBlbnRyaWVzIGluIGRpc3RyaWJ1dGlvbiBtZXRhZGF0YS4KICAgICAgICBOcigAAAApAnIrAAAAcpUAAAByLAAAAHIsAAAAci0AAADaEWl0ZXJfZGVwZW5kZW5jaWVzwgEAAHMCAAAAAAZ6IkJhc2VEaXN0cmlidXRpb24uaXRlcl9kZXBlbmRlbmNpZXNjAQAAAAAAAAAAAAAAAQAAAAEAAABDAAAAcwoAAAB0AIMAggFkAVMAKQJ6skV4dHJhcyBwcm92aWRlZCBieSB0aGlzIGRpc3RyaWJ1dGlvbi4KCiAgICAgICAgRm9yIG1vZGVybiAuZGlzdC1pbmZvIGRpc3RyaWJ1dGlvbnMsIHRoaXMgaXMgdGhlIGNvbGxlY3Rpb24gb2YKICAgICAgICAiUHJvdmlkZXMtRXh0cmE6IiBlbnRyaWVzIGluIGRpc3RyaWJ1dGlvbiBtZXRhZGF0YS4KICAgICAgICBOcigAAAByKgAAAHIsAAAAciwAAAByLQAAANoUaXRlcl9wcm92aWRlZF9leHRyYXPKAQAAcwIAAAAABnolQmFzZURpc3RyaWJ1dGlvbi5pdGVyX3Byb3ZpZGVkX2V4dHJhc2MBAAAAAAAAAAAA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c2VFbnZpcm9ubWVudC5faXRlcl9kaXN0cmlidXRpb25zYwEAAAAAAAAAAAAAAAMAAAAGAAAAYwAAAHNEAAAAfACgAKEARABdNn0BdAFqAmQBfAFqA3QBagRkAo0DfQJ8AnM4dAWgBmQDfAFqA3wBagehAwEAcQh8AVYAAQBxCGQEUwApBXpCSXRlcmF0ZSB0aHJvdWdoIGFsbCBpbnN0YWxsZWQgZGlzdHJpYnV0aW9ucyB3aXRob3V0IGFueSBmaWx0ZXJpbmcueileKFtBLVowLTldfFtBLVowLTldW0EtWjAtOS5fLV0qW0EtWjAtOV0pJCkB2gVmbGFnc3olSWdub3JpbmcgaW52YWxpZCBkaXN0cmlidXRpb24gJXMgKCVzKU4pCHLEAAAA2gJyZdoFbWF0Y2hyZQAAANoKSUdOT1JFQ0FTRXJwAAAAcnEAAAByUgAAACkDcisAAADaBGRpc3RaEnByb2plY3RfbmFtZV92YWxpZHIsAAAAciwAAAByLQAAANoWaXRlcl9hbGxfZGlzdHJpYnV0aW9uc2ICAABzHAAAAAACDAUEAQIBBAEE/QYFBAEEAQIBBAEE/QQFAgF6JkJhc2VFbnZpcm9ubWVudC5pdGVyX2FsbF9kaXN0cmlidXRpb25zVEYpBtoKbG9jYWxfb25sedoEc2tpcNoRaW5jbHVkZV9lZGl0YWJsZXPaDmVkaXRhYmxlc19vbmx52gl1c2VyX29ubHlyJgAAAGMGAAAAAAAAAAAAAAAHAAAAAwAAAAMAAABzYgAAAHwAoAChAH0GfAFyGmQBZAKEAHwGRACDAX0GfANzLGQDZAKEAHwGRACDAX0GfARyPmQEZAKEAHwGRACDAX0GfAVyUGQFZAKEAHwGRACDAX0GhwBmAWQGZAKECHwGRACDAVMAKQdhLwMAAFJldHVybiBhIGxpc3Qgb2YgaW5zdGFsbGVkIGRpc3RyaWJ1dGlvbnMuCgogICAgICAgIFRoaXMgaXMgYmFzZWQgb24gYGBpdGVyX2FsbF9kaXN0cmlidXRpb25zKClgYCB3aXRoIGFkZGl0aW9uYWwgZmlsdGVyaW5nCiAgICAgICAgb3B0aW9ucy4gTm90ZSB0aGF0IGBgaXRlcl9pbnN0YWxsZWRfZGlzdHJpYnV0aW9ucygpYGAgd2l0aG91dCBhcmd1bWVu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