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ZCAlZCBhcmdzIGluIGZhaWxlZCBsYXVuY2gKAApUaGlzIHByb2dyYW0gYnVpbHQgZm9yICVzCgAKVGhpcyBwcm9ncmFtIGJ1aWx0IGZvciAlcyAoJXMpCgAgIC0tZGVidWdbPUZMQUdTXSAgICAgICAgICAgICBQcmludCB2YXJpb3VzIHR5cGVzIG9mIGRlYnVnZ2luZyBpbmZvcm1hdGlvbi4KACAgLS1uby1wcmludC1kaXJlY3RvcnkgICAgICAgIFR1cm4gb2ZmIC13LCBldmVuIGlmIGl0IHdhcyB0dXJuZWQgb24gaW1wbGljaXRseS4KACAgLS13YXJuLXVuZGVmaW5lZC12YXJpYWJsZXMgIFdhcm4gd2hlbiBhbiB1bmRlZmluZWQgdmFyaWFibGUgaXMgcmVmZXJlbmNlZC4KACAgLUIsIC0tYWx3YXlzLW1ha2UgICAgICAgICAgIFVuY29uZGl0aW9uYWxseSBtYWtlIGFsbCB0YXJnZXRzLgoAICAtQyBESVJFQ1RPUlksIC0tZGlyZWN0b3J5PURJUkVDVE9SWQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDaGFuZ2UgdG8gRElSRUNUT1JZIGJlZm9yZSBkb2luZyBhbnl0aGluZy4KACAgLUkgRElSRUNUT1JZLCAtLWluY2x1ZGUtZGlyPURJUkVDVE9SWQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBTZWFyY2ggRElSRUNUT1JZIGZvciBpbmNsdWRlZCBtYWtlZmlsZXMuCgAgIC1SLCAtLW5vLWJ1aWx0aW4tdmFyaWFibGVzICBEaXNhYmxlIHRoZSBidWlsdC1pbiB2YXJpYWJsZSBzZXR0aW5ncy4KACAgLVMsIC0tbm8ta2VlcC1nb2luZywgLS1zdG9wCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFR1cm5zIG9mZiAtay4KACAgLVcgRklMRSwgLS13aGF0LWlmPUZJTEUsIC0tbmV3LWZpbGU9RklMRSwgLS1hc3N1bWUtbmV3PUZJTEUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uc2lkZXIgRklMRSB0byBiZSBpbmZpbml0ZWx5IG5ldy4KACAgLWIsIC1tICAgICAgICAgICAgICAgICAgICAgIElnbm9yZWQgZm9yIGNvbXBhdGliaWxpdHkuCgAgIC1kICAgICAgICAgICAgICAgICAgICAgICAgICBQcmludCBsb3RzIG9mIGRlYnVnZ2luZyBpbmZvcm1hdGlvbi4KACAgLWUsIC0tZW52aXJvbm1lbnQtb3ZlcnJpZGVzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEVudmlyb25tZW50IHZhcmlhYmxlcyBvdmVycmlkZSBtYWtlZmlsZXMuCgAgIC1mIEZJTEUsIC0tZmlsZT1GSUxFLCAtLW1ha2VmaWxlPUZJTEUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUmVhZCBGSUxFIGFzIGEgbWFrZWZpbGUuCgAgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICAgICBQcmludCB0aGlzIG1lc3NhZ2UgYW5kIGV4aXQuCgAgIC1qIFtOXSwgLS1qb2JzWz1OXSAgICAgICAgICBBbGxvdyBOIGpvYnMgYXQgb25jZTsgaW5maW5pdGUgam9icyB3aXRoIG5vIGFyZy4KACAgLWssIC0ta2VlcC1nb2luZyAgICAgICAgICAgIEtlZXAgZ29pbmcgd2hlbiBzb21lIHRhcmdldHMgY2FuJ3QgYmUgbWFkZS4KACAgLWwgW05dLCAtLWxvYWQtYXZlcmFnZVs9Tl0sIC0tbWF4LWxvYWRbPU5dCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIERvbid0IHN0YXJ0IG11bHRpcGxlIGpvYnMgdW5sZXNzIGxvYWQgaXMgYmVsb3cgTi4KACAgLW8gRklMRSwgLS1vbGQtZmlsZT1GSUxFLCAtLWFzc3VtZS1vbGQ9RklMRQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDb25zaWRlciBGSUxFIHRvIGJlIHZlcnkgb2xkIGFuZCBkb24ndCByZW1ha2UgaXQuCgAgIC1wLCAtLXByaW50LWRhdGEtYmFzZSAgICAgICBQcmludCBtYWtlJ3MgaW50ZXJuYWwgZGF0YWJhc2UuCgAgIC1yLCAtLW5vLWJ1aWx0aW4tcnVsZXMgICAgICBEaXNhYmxlIHRoZSBidWlsdC1pbiBpbXBsaWNpdCBydWxlcy4KACAgLXQsIC0tdG91Y2ggICAgICAgICAgICAgICAgIFRvdWNoIHRhcmdldHMgaW5zdGVhZCBvZiByZW1ha2luZyB0aGVtLgoAICAtdiwgLS12ZXJzaW9uICAgICAgICAgICAgICAgUHJpbnQgdGhlIHZlcnNpb24gbnVtYmVyIG9mIG1ha2UgYW5kIGV4aXQuCgAgIC13LCAtLXByaW50LWRpcmVjdG9yeSAgICAgICBQcmludCB0aGUgY3VycmVudCBkaXJlY3RvcnkuCgAgIERhdGUgJXMAICBJZ25vcmluZyBWUEFUSCBuYW1lIGAlcycuCgAgIHVpZCA9ICVkLCBnaWQgPSAlZCwgbW9kZSA9IDAlby4KACAoYnVpbHQtaW4pOgAgKGNvcmUgZHVtcGVkKQAgKGRpZCB5b3UgbWVhbiBUQUIgaW5zdGVhZCBvZiA4IHNwYWNlcz8pACAoZG9uJ3QgY2FyZSkAIChmcm9tIGAlcycsIGxpbmUgJWx1KQAgKGZyb20gYCVzJywgbGluZSAlbHUpOgoAIChuYW1lIG1pZ2h0IGJlIHRydW5jYXRlZCkAIChubyBkZWZhdWx0IGdvYWwpACAobm8gfiBleHBhbnNpb24pACAocmVtb3RlKQAgKHNlYXJjaCBwYXRoKQAgZmlsZXMsIAAgaW1wb3NzaWJpbGl0aWVzACBpbXBvc3NpYmlsaXRpZXMgaW4gJWx1IGRpcmVjdG9yaWVzLgoAIHNvIGZhci4AIHRlcm1pbmFsLgAjICBBbHNvIG1ha2VzOgAjICBGYWlsZWQgdG8gYmUgdXBkYXRlZC4AIyAgRmlsZSBkb2VzIG5vdCBleGlzdC4AIyAgRmlsZSBoYXMgYmVlbiB1cGRhdGVkLgAjICBGaWxlIGhhcyBub3QgYmVlbiB1cGRhdGVkLgAjICBGaWxlIGlzIGFuIGludGVybWVkaWF0ZSBwcmVyZXF1aXNpdGUuACMgIEZpbGUgaXMgdmVyeSBvbGQuACMgIEltcGxpY2l0IHJ1bGUgc2VhcmNoIGhhcyBiZWVuIGRvbmUuACMgIEltcGxpY2l0IHJ1bGUgc2VhcmNoIGhhcyBub3QgYmVlbiBkb25lLgAjICBJbXBsaWNpdC9zdGF0aWMgcGF0dGVybiBzdGVtOiBgJXMnCgAjICBJbnZhbGlkIHZhbHVlIGluIGBjb21tYW5kX3N0YXRlJyBtZW1iZXIhACMgIEludmFsaWQgdmFsdWUgaW4gYHVwZGF0ZV9zdGF0dXMnIG1lbWJlciEAIyAgTGFzdCBtb2RpZmllZCAlcwoAIyAgTW9kaWZpY2F0aW9uIHRpbWUgbmV2ZXIgY2hlY2tlZC4AIyAgTmVlZHMgdG8gYmUgdXBkYXRlZCAoLXEgaXMgc2V0KS4AIyAgUGhvbnkgdGFyZ2V0IChwcmVyZXF1aXNpdGUgb2YgLlBIT05ZKS4AIyAgUHJlY2lvdXMgZmlsZSAocHJlcmVxdWlzaXRlIG9mIC5QUkVDSU9VUykuACMgIFN1Y2Nlc3NmdWxseSB1cGRhdGVkLgAjICVzIChkZXZpY2UgJWQsIGlub2RlIFslZCwlZCwlZF0pOiAAIyAlcyAoZGV2aWNlICVkLCBpbm9kZSBbJWQsJWQsJWRdKTogY291bGQgbm90IGJlIG9wZW5lZC4KACMgJXMgKGRldmljZSAlbGQsIGlub2RlICVsZCk6IAAjICVzIChkZXZpY2UgJWxkLCBpbm9kZSAlbGQpOiBjb3VsZCBub3QgYmUgb3BlbmVkLgoAIyAlcyAoa2V5ICVzLCBtdGltZSAlZCk6IAAjICVzIChrZXkgJXMsIG10aW1lICVkKTogY291bGQgbm90IGJlIG9wZW5lZC4KACMgJXM6IGNvdWxkIG5vdCBiZSBzdGF0J2QuCgAjIE5vIGB2cGF0aCcgc2VhcmNoIHBhdGhzLgAjIE5vdCBhIHRhcmdldDoAIyB2YXJpYWJsZSBzZXQgaGFzaC10YWJsZSBzdGF0czoKACVzIChsaW5lICVkKSBCYWQgc2hlbGwgY29udGV4dCAoIXVuaXh5ICYmICFiYXRjaF9tb2RlX3NoZWxsKQoAJXMgaXMgc3VzcGVuZGluZyBmb3IgMzAgc2Vjb25kcy4uLgAlcyVzOiAlcwAlczogJXMAJXM6IENvbW1hbmQgbm90IGZvdW5kACVzOiBFbnRlcmluZyBkaXJlY3RvcnkgYCVzJwoAJXM6IExlYXZpbmcgZGlyZWN0b3J5IGAlcycKACVzOiBTaGVsbCBwcm9ncmFtIG5vdCBmb3VuZAAlczogVGltZXN0YW1wIG91dCBvZiByYW5nZTsgc3Vic3RpdHV0aW5nICVzACVzOiBpbGxlZ2FsIG9wdGlvbiAtLSAlYwoAJXM6IGludmFsaWQgb3B0aW9uIC0tICVjCgAlczogb3B0aW9uIGAlYyVzJyBkb2Vzbid0IGFsbG93IGFuIGFyZ3VtZW50CgAlczogb3B0aW9uIGAlcycgaXMgYW1iaWd1b3VzCgAlczogb3B0aW9uIGAlcycgcmVxdWlyZXMgYW4gYXJndW1lbnQKACVzOiBvcHRpb24gYC0tJXMnIGRvZXNuJ3QgYWxsb3cgYW4gYXJndW1lbnQKACVzOiBvcHRpb24gYC1XICVzJyBkb2Vzbid0IGFsbG93IGFuIGFyZ3VtZW50CgAlczogb3B0aW9uIGAtVyAlcycgaXMgYW1iaWd1b3VzCgAlczogb3B0aW9uIHJlcXVpcmVzIGFuIGFyZ3VtZW50IC0tICVjCgAlczogdW5yZWNvZ25pemVkIG9wdGlvbiBgJWMlcycKACVzOiB1bnJlY29nbml6ZWQgb3B0aW9uIGAtLSVzJwoAJXM6IHVzZXIgJWx1IChyZWFsICVsdSksIGdyb3VwICVsdSAocmVhbCAlbHUpCgAlc05vIHJ1bGUgdG8gbWFrZSB0YXJnZXQgYCVzJyVzACVzTm8gcnVsZSB0byBtYWtlIHRhcmdldCBgJXMnLCBuZWVkZWQgYnkgYCVzJyVzACVzWyV1XTogRW50ZXJpbmcgZGlyZWN0b3J5IGAlcycKACVzWyV1XTogTGVhdmluZyBkaXJlY3RvcnkgYCVzJwoAKioqIEFyY2hpdmUgbWVtYmVyIGAlcycgbWF5IGJlIGJvZ3VzOyBub3QgZGVsZXRlZAAqKiogQnJlYWsuCgAqKiogRGVsZXRpbmcgZmlsZSBgJXMnACoqKiBEZWxldGluZyBpbnRlcm1lZGlhdGUgZmlsZSBgJXMnACoqKiBXYWl0aW5nIGZvciB1bmZpbmlzaGVkIGpvYnMuLi4uACoqKiBXYXJuaW5nOiAuTE9XX1JFU09MVVRJT05fVElNRSBmaWxlIGAlcycgaGFzIGEgaGlnaCByZXNvbHV0aW9uIHRpbWUgc3RhbXAAKioqIFslc10gQXJjaGl2ZSBtZW1iZXIgYCVzJyBtYXkgYmUgYm9ndXM7IG5vdCBkZWxldGVkACoqKiBbJXNdIERlbGV0aW5nIGZpbGUgYCVzJwAqKiogWyVzXSBFcnJvciAlZAAqKiogWyVzXSBFcnJvciAweCV4ACoqKiBbJXNdIEVycm9yIDB4JXggKGlnbm9yZWQpAC13YXJuaW5nLCB5b3UgbWF5IGhhdmUgdG8gcmUtZW5hYmxlIENUUkwtWSBoYW5kbGluZyBmcm9tIERDTC4KAC4gIFN0b3AuCgAuTElCUEFUVEVSTlMgZWxlbWVudCBgJXMnIGlzIG5vdCBhIHBhdHRlcm4AOyB1c2luZyBWUEFUSCBuYW1lIGAlcycAQWJvcnRlZABBbGFybSBjbG9jawBBdm9pZGluZyBpbXBsaWNpdCBydWxlIHJlY3Vyc2lvbi4KAEJVSUxUSU4gQ0QgJXMKAEJVSUxUSU4gUk0gJXMKAEJVSUxUSU4gWyVzXVslc10KAEJhZCBzeXN0ZW0gY2FsbABCcm9rZW4gcGlwZQBCdXMgZXJyb3IAQ1BVIHRpbWUgbGltaXQgZXhjZWVkZWQAQ2hpbGQgYWNjZXNzAENoaWxkIGV4aXRlZABDaXJjdWxhciAlcyA8LSAlcyBkZXBlbmRlbmN5IGRyb3BwZWQuAENsZWFuaW5nIHVwIHRlbXAgYmF0Y2ggZmlsZSAlcwoAQ2xlYW5pbmcgdXAgdGVtcG9yYXJ5IGJhdGNoIGZpbGUgJXMKAENvbGxpc2lvbnM9JWxkLyVsZD0lLjBmJSUAQ29uc2lkZXJpbmcgdGFyZ2V0IGZpbGUgYCVzJy4KAENvbnRpbnVlZABDb3VsZG4ndCBjaGFuZ2UgYmFjayB0byBvcmlnaW5hbCBkaXJlY3RvcnkuAENyZWF0aW5nIHRlbXBvcmFyeSBiYXRjaCBmaWxlICVzCgBDdXJyZW50IHRpbWUAQ3VzdG9tcyB3b24ndCBleHBvcnQ6ICVzCgBEYW5nZXIgc2lnbmFsAEVNVCB0cmFwAEVycm9yIHNwYXduaW5nLCAlZAoARXJyb3IsIGVtcHR5IGNvbW1hbmQKAEV4ZWN1dGluZyAlcyBpbnN0ZWFkCgBFeHRyYW5lb3VzIHRleHQgYWZ0ZXIgYCVzJyBkaXJlY3RpdmUARmFpbGVkIHRvIHJlbWFrZSBtYWtlZmlsZSBgJXMnLgBGYWlsZWQgdG8gcmVtYWtlIHRhcmdldCBmaWxlIGAlcycuCgBGaWxlIGAlcycgZG9lcyBub3QgZXhpc3QuCgBGaWxlIGAlcycgd2FzIGNvbnNpZGVyZWQgYWxyZWFkeS4KAEZpbGUgc2l6ZSBsaW1pdCBleGNlZWRlZABGaW5pc2hlZCBwcmVyZXF1aXNpdGVzIG9mIHRhcmdldCBmaWxlIGAlcycuCgBGaW5pc2hlZCB1cGRhdGluZyBmaWxlIGAlcycuCgBGbG9hdGluZyBwb2ludCBjby1wcm9jZXNzb3Igbm90IGF2YWlsYWJsZQBGbG9hdGluZyBwb2ludCBleGNlcHRpb24ARm91bmQgYW4gaW1wbGljaXQgcnVsZSBmb3IgYCVzJy4KAEZvdW5kIHByZXJlcXVpc2l0ZSBgJXMnIGFzIFZQQVRIIGAlcycKAEdpdmluZyB1cCBvbiB0YXJnZXQgZmlsZSBgJXMnLgoASGFuZ3VwAEkvTyBwb3NzaWJsZQBJT1QgdHJhcABJbGxlZ2FsIEluc3RydWN0aW9uAEluY2x1ZGVkIG1ha2VmaWxlIGAlcycgd2FzIG5vdCBmb3VuZC4ASW5mb3JtYXRpb24gcmVxdWVzdABJbml0aWFsaXplZCBhY2Nlc3MASW50ZXJydXB0AEtpbGxlZABMb2FkPSVsZC8lbGQ9JS4wZiUlLCAATG9va2luZyBmb3IgYSBydWxlIHdpdGggaW50ZXJtZWRpYXRlIGZpbGUgYCVzJy4KAExvb2tpbmcgZm9yIGFuIGltcGxpY2l0IHJ1bGUgZm9yIGAlcycuCgBMb29raW5nIGZvciBhcmNoaXZlLW1lbWJlciBpbXBsaWNpdCBydWxlIGZvciBgJXMnLgoATWFrZSBhY2Nlc3MATWFrZWZpbGUgYCVzJyBtaWdodCBsb29wOyBub3QgcmVtYWtpbmcgaXQuCgBNYWtlZmlsZSBgJXMnIHdhcyBub3QgZm91bmQATWFrZWZpbGUgZnJvbSBzdGFuZGFyZCBpbnB1dCBzcGVjaWZpZWQgdHdpY2UuAE1ha2luZyBgJXMnIGR1ZSB0byBhbHdheXMtbWFrZSBmbGFnLgoATWVtYmVyIGAlcyclczogJWxkIGJ5dGVzIGF0ICVsZCAoJWxkKS4KAE11c3QgcmVtYWtlIHRhcmdldCBgJXMnLgoATm8ATm8gaW1wbGljaXQgcnVsZSBmb3VuZCBmb3IgYCVzJy4KAE5vIG5lZWQgdG8gcmVtYWtlIHRhcmdldCBgJXMnAE5vIHRhcmdldHMATm8gdGFyZ2V0cyBzcGVjaWZpZWQgYW5kIG5vIG1ha2VmaWxlIGZvdW5kAE5vdGhpbmcgdG8gYmUgZG9uZSBmb3IgYCVzJy4AT3B0aW9uczoKAFBhcmFsbGVsIGpvYnMgKC1qKSBhcmUgbm90IHN1cHBvcnRlZCBvbiB0aGlzIHBsYXRmb3JtLgBQb3dlciBmYWlsdXJlAFByZXJlcXVpc2l0ZSBgJXMnIGlzIG5ld2VyIHRoYW4gdGFyZ2V0IGAlcycuCgBQcmVyZXF1aXNpdGUgYCVzJyBpcyBvbGRlciB0aGFuIHRhcmdldCBgJXMnLgoAUHJlcmVxdWlzaXRlIGAlcycgaXMgb3JkZXItb25seSBmb3IgdGFyZ2V0IGAlcycuCgBQcmVyZXF1aXNpdGUgYCVzJyBvZiB0YXJnZXQgYCVzJyBkb2VzIG5vdCBleGlzdC4KAFByb2ZpbGluZyB0aW1lciBleHBpcmVkAFBydW5pbmcgZmlsZSBgJXMnLgoAUXVpdABSZWFkaW5nIG1ha2VmaWxlIGAlcycAUmVhZGluZyBtYWtlZmlsZXMuLi4KAFJlY2VudGx5IHRyaWVkIGFuZCBmYWlsZWQgdG8gdXBkYXRlIGZpbGUgYCVzJy4KAFJlY3Vyc2l2ZSB2YXJpYWJsZSBgJXMnIHJlZmVyZW5jZXMgaXRzZWxmIChldmVudHVhbGx5KQBSZWRpcmVjdGVkIGVycm9yIHRvICVzCgBSZWRpcmVjdGVkIGlucHV0IGZyb20gJXMKAFJlZGlyZWN0ZWQgb3V0cHV0IHRvICVzCgBSZWhhc2g9JWQsIABSZWplY3RpbmcgaW1wb3NzaWJsZSBpbXBsaWNpdCBwcmVyZXF1aXNpdGUgYCVzJy4KAFJlamVjdGluZyBpbXBvc3NpYmxlIHJ1bGUgcHJlcmVxdWlzaXRlIGAlcycuCgBSZW1vdmluZyBpbnRlcm1lZGlhdGUgZmlsZXMuLi4KAFJlcG9ydCBidWdzIHRvIDxidWctbWFrZUBnbnUub3JnPgoAUmVzZXR0aW5nIHRvIHNpbmdsZSBqb2IgKC1qMSkgbW9kZS4AUmVzb3VyY2UgbG9zdABTSUdQSE9ORQBTSUdXSU5EAFNlZ21lbnRhdGlvbiBmYXVsdABTdGlsbCB1cGRhdGluZyBmaWxlIGAlcycuCgBTdG9wcGVkAFN0b3BwZWQgKHNpZ25hbCkAU3RvcHBlZCAodHR5IGlucHV0KQBTdG9wcGVkICh0dHkgb3V0cHV0KQBTdWNjZXNzZnVsbHkgcmVtYWRlIHRhcmdldCBmaWxlIGAlcycuCgBUYXJnZXQgYCVzJyBpcyBkb3VibGUtY29sb24gYW5kIGhhcyBubyBwcmVyZXF1aXNpdGVzLgoAVGFyZ2V0IGAlcycgbm90IHJlbWFkZSBiZWNhdXNlIG9mIGVycm9ycy4AVGFyZ2V0IGZpbGUgYCVzJyBuZWVkcyByZW1hZGUgdW5kZXIgLXEuCgBUZXJtaW5hdGVkAFRoZSBwcmVyZXF1aXNpdGVzIG9mIGAlcycgYXJlIGJlaW5nIG1hZGUuCgBUcmFjZS9icmVha3BvaW50IHRyYXAAVHJ5aW5nIGltcGxpY2l0IHByZXJlcXVpc2l0ZSBgJXMnLgoAVHJ5aW5nIHBhdHRlcm4gcnVsZSB3aXRoIHN0ZW0gYCUuKnMnLgoAVHJ5aW5nIHJ1bGUgcHJlcmVxdWlzaXRlIGAlcycuCgBVbmtub3duIGJ1aWx0aW4gY29tbWFuZCAnJXMnCgBVbmtub3duIGVycm9yICVkAFVwZGF0aW5nIGdvYWwgdGFyZ2V0cy4uLi4KAFVwZGF0aW5nIG1ha2VmaWxlcy4uLi4KAFVyZ2VudCBJL08gY29uZGl0aW9uAFVzYWdlOiAlcyBbb3B0aW9uc10gW3RhcmdldF0gLi4uCgBVc2VyIGFjY2VzcwBVc2VyIGRlZmluZWQgc2lnbmFsIDEAVXNlciBkZWZpbmVkIHNpZ25hbCAyAFVzaW5nIGRlZmF1bHQgY29tbWFuZHMgZm9yIGAlcycuCgBWaXJ0dWFsIHRpbWVyIGV4cGlyZWQAV2FybmluZzogRW1wdHkgcmVkaXJlY3Rpb24KAFdhcm5pbmc6IEZpbGUgYCVzJyBoYXMgbW9kaWZpY2F0aW9uIHRpbWUgaW4gdGhlIGZ1dHVyZQBXaW5kb3cgY2hhbmdlZABbJXNdIEVycm9yICVkIChpZ25vcmVkKQBgJXMnIGlzIHVwIHRvIGRhdGUuAGBvdmVycmlkZScgZGlyZWN0aXZlAGF0dGVtcHQgdG8gdXNlIHVuc3VwcG9ydGVkIGZlYXR1cmU6IGAlcycAYXV0b21hdGljAGJ1dCBgJXMnIGlzIG5vdyBjb25zaWRlcmVkIHRoZSBzYW1lIGZpbGUgYXMgYCVzJy4AY2FuJ3QgcmVuYW1lIGRvdWJsZS1jb2xvbiBgJXMnIHRvIHNpbmdsZS1jb2xvbiBgJXMnAGNhbid0IHJlbmFtZSBzaW5nbGUtY29sb24gYCVzJyB0byBkb3VibGUtY29sb24gYCVzJwBjYW5ub3QgZW5mb3JjZSBsb2FkIGxpbWl0OiAAY2Fubm90IGVuZm9yY2UgbG9hZCBsaW1pdHMgb24gdGhpcyBvcGVyYXRpbmcgc3lzdGVtAGNvbW1hbmQgbGluZQBjcmVhdGluZyBqb2JzIHBpcGUAZGVmYXVsdABkb25lIHNsZWVwKDMwKS4gQ29udGludWluZy4KAGR1cCBqb2JzZXJ2ZXIAZW1wdHkgc3RyaW5nIGludmFsaWQgYXMgZmlsZSBuYW1lAGVtcHR5IHZhcmlhYmxlIG5hbWUAZW52aXJvbm1lbnQAZW52aXJvbm1lbnQgdW5kZXIgLWUAZXh0cmFuZW91cyBgJXMnAGZpcnN0IGFyZ3VtZW50IHRvIGB3b3JkJyBmdW5jdGlvbiBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAwAGZvcGVuICh0ZW1wb3JhcnkgZmlsZSkAZndyaXRlICh0ZW1wb3JhcnkgZmlsZSkAaW5pdCBqb2JzZXJ2ZXIgcGlwZQBpbnRlcm5hbCBlcnJvcjogYCVzJyBjb21tYW5kX3N0YXRlAGludGVybmFsIGVycm9yOiBpbnZhbGlkIC0tam9ic2VydmVyLWZkcyBzdHJpbmcgYCVzJwBpbnRlcm5hbCBlcnJvcjogbXVsdGlwbGUgLS1qb2JzZXJ2ZXItZmRzIG9wdGlvbnMAaW52YWxpZCBzeW50YXggaW4gY29uZGl0aW9uYWwAbWFrZWZpbGUAbWlzc2luZyBgZW5kZWYnLCB1bnRlcm1pbmF0ZWQgYGRlZmluZScAbWlzc2luZyBgZW5kaWYnAG1pc3Npbmcgc2VwYXJhdG9yJXMAbWlzc2luZyB0YXJnZXQgcGF0dGVybgBtaXhlZCBpbXBsaWNpdCBhbmQgbm9ybWFsIHJ1bGVzAG1peGVkIGltcGxpY2l0IGFuZCBzdGF0aWMgcGF0dGVybiBydWxlcwBtdWx0aXBsZSB0YXJnZXQgcGF0dGVybnMAbm8Abm9uLW51bWVyaWMgZmlyc3QgYXJndW1lbnQgdG8gYHdvcmQnIGZ1bmN0aW9uAG5vbi1udW1lcmljIGZpcnN0IGFyZ3VtZW50IHRvIGB3b3JkbGlzdCcgZnVuY3Rpb24Abm9uLW51bWVyaWMgc2Vjb25kIGFyZ3VtZW50IHRvIGB3b3JkbGlzdCcgZnVuY3Rpb24Ab25seSBvbmUgYGVsc2UnIHBlciBjb25kaXRpb25hbAByZWFkIGpvYnMgcGlwZQB0YXJnZXQgYCVzJyBkb2Vzbid0IG1hdGNoIHRoZSB0YXJnZXQgcGF0dGVybgB0YXJnZXQgYCVzJyBnaXZlbiBtb3JlIHRoYW4gb25jZSBpbiB0aGUgc2FtZSBydWxlLgB0YXJnZXQgZmlsZSBgJXMnIGhhcyBib3RoIDogYW5kIDo6IGVudHJpZXMAdGFyZ2V0IHBhdHRlcm4gY29udGFpbnMgbm8gYCUlJwB0aGUgYC0lYycgb3B0aW9uIHJlcXVpcmVzIGEgcG9zaXRpdmUgaW50ZWdyYWwgYXJndW1lbnQAdG91Y2ggYXJjaGl2ZSBtZW1iZXIgaXMgbm90IGF2YWlsYWJsZSBvbiBWTVMAdG91Y2g6IEFyY2hpdmUgYCVzJyBkb2VzIG5vdCBleGlzdAB0b3VjaDogQmFkIHJldHVybiBjb2RlIGZyb20gYXJfbWVtYmVyX3RvdWNoIG9uIGAlcycAdG91Y2g6IE1lbWJlciBgJXMnIGRvZXMgbm90IGV4aXN0IGluIGAlcycAdG91Y2g6IGAlcycgaXMgbm90IGEgdmFsaWQgYXJjaGl2ZQB1bmFibGUgdG8gb3BlbiBsaWJyYXJ5IGAlcycgdG8gbG9va3VwIG1lbWJlciBgJXMnAHVua25vd24gZGVidWcgbGV2ZWwgc3BlY2lmaWNhdGlvbiBgJXMnAHVua25vd24gc2lnbmFsAHVubGluayAodGVtcG9yYXJ5IGZpbGUpOiAAdW50ZXJtaW5hdGVkIGNhbGwgdG8gZnVuY3Rpb24gYCVzJzogbWlzc2luZyBgJWMnAHVudGVybWluYXRlZCB2YXJpYWJsZSByZWZlcmVuY2UAdmlydHVhbCBtZW1vcnkgZXhoYXVzdGVkAHdhcm5pbmc6ICBDbG9jayBza2V3IGRldGVjdGVkLiAgWW91ciBidWlsZCBtYXkgYmUgaW5jb21wbGV0ZS4Ad2FybmluZzogLWpOIGZvcmNlZCBpbiBzdWJtYWtlOiBkaXNhYmxpbmcgam9ic2VydmVyIG1vZGUuAHdhcm5pbmc6IE5VTCBjaGFyYWN0ZXIgc2VlbjsgcmVzdCBvZiBsaW5lIGlnbm9yZWQAd2FybmluZzogam9ic2VydmVyIHVuYXZhaWxhYmxlOiB1c2luZyAtajEuICBBZGQgYCsnIHRvIHBhcmVudCBtYWtlIHJ1bGUuAHdhcm5pbmc6IHVuZGVmaW5lZCB2YXJpYWJsZSBgJS4qcycAd3JpdGUgam9ic2VydmVyAFByb2plY3QtSWQtVmVyc2lvbjogbWFrZSAzLjgwClJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBidWctbWFrZUBnbnUub3JnClBPVC1DcmVhdGlvbi1EYXRlOiAyMDEwLTA3LTI4IDAxOjQyLTA0MDAKUE8tUmV2aXNpb24tRGF0ZTogMjAwMi0xMC0wNSAxNDo0NiswMjAwCkxhc3QtVHJhbnNsYXRvcjogSmFjb2JvIFRhcnJpbyA8anRhcnJpb0B0cmFzbm8ubmV0PgpMYW5ndWFnZS1UZWFtOiBHYWxpY2lhbiA8Z3B1bC10cmFkdWNjaW9uQGNldS5maS51ZGMuZXM+Ck1JTUUtVmVyc2lvbjogMS4wCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1pc28tODg1OS0xCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKAAojICV1IGNhbWnxb3MgZGUgYnVzY2EgYHZwYXRoJy4KAAojICV1IHJlZ3JhcyBpbXBs7WNpdGFzLCAldQAKIyAldSB2YWxvcmVzIGRlIHZhcmlhYmxlcyBlc3BlY+1maWNvcyBkbyBwYXRy824ACiMgRGlyZWN0b3Jpb3MKAAojIEZpY2hlaXJvcwAKIyBCYXNlIGRlIGRhdG9zIGRlIE1ha2UgcmVtYXRhZGEgZW4gJXMKAAojIENhbWnxbyBkZSBidXNjYSB4ZXJhbCAodmFyaWFibGUgYFZQQVRIJyk6CiMgAAojIFJlZ3JhcyBJbXBs7WNpdGFzAAojIEJhc2UgZGUgZGF0b3MgZGUgTWFrZSwgaW1wcmltaWRhIGVuICVzAAojIE5vbiBoYWkgdW4gY2FtafFvIGRlIGJ1c2NhIHhlcmFsICh2YXJpYWJsZSBgVlBBVEgnKS4ACiMgTm9uIGhhaSByZWdyYXMgaW1wbO1jaXRhcy4ACiMgTm9uIGhhaSB2YWxvcmVzIGVzcGVj7WZpY29zIGRvIHBhdHLzbi4ACiMgQ2FtafFvcyBkZSBCdXNjYSBWUEFUSAoACiMgVmFyaWFibGVzCgAKIyBlc3RhdO1zdGljYXMgZGEgdOFib2EgaGFzaCBkZSBmaWNoZWlyb3M6CiMgAApDb2504XJvbnNlICVkIGFyZ3VtZW50b3Mgbm8gbGFuemFtZW50byBxdWUgZmFsbG91CgAKRXN0ZSBwcm9ncmFtYSBjb21waWxvdSBwYXJhICVzCgAKRXN0ZSBwcm9ncmFtYSBjb21waWxvdSBwYXJhICVzICglcykKACAgLS1kZWJ1Z1s9TU9ESUZJQ0FET1JFU10gICAgIEFtb3NhciB2YXJpb3MgdGlwb3MgZGUgaW5mb3JtYWNp824gZGUgZGVwdXJhY2nzbi4KACAgLS1uby1wcmludC1kaXJlY3RvcnkgICAgICAgIERlc2FjdGl2YXIgLXcsIGluY2x1c28gc2Ugc2UgYWN0aXZvdQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbXBsaWNpdGFtZW50ZS4KACAgLS13YXJuLXVuZGVmaW5lZC12YXJpYWJsZXMgIEF2aXNhciBjYW5kbyBzZSBmYWdhIHJlZmVyZW5jaWEgYQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmhhIHZhcmlhYmxlIG5vbiBkZWZpbmlkYS4KACAgLUIsIC0tYWx3YXlzLW1ha2UgICAgICAgICAgIEZhY2VyIHTzZG9sb3Mgb2J4ZWN0aXZvcyBpbmNvbmRpY2lvbmFsbWVudGUuCgAgIC1DIERJUkVDVE9SSU8sIC0tZGlyZWN0b3J5PURJUkVDVE9SSU8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2FtYmlhciBhbyBESVJFQ1RPUklPIGFudGVzIGRlIGZhY2VyIG5hZGEuCgAgIC1JIERJUkVDVE9SSU8sIC0taW5jbHVkZS1kaXI9RElSRUNUT1JJTwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBCdXNjYS1sb3MgZmljaGVpcm9zIGRlIG1ha2UgaW5jbHXtZG9zCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vIGRpcmVjdG9yaW8uCgAgIC1SLCAtLW5vLWJ1aWx0aW4tdmFyaWFibGVzICBEZXNhY3RpdmEtbG9zIHZhbG9yZXMgZGFzIHZhcmlhYmxlcyBpbmNsdWlkb3MuCgAgIC1TLCAtLW5vLWtlZXAtZ29pbmcsIC0tc3RvcAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEZXNhY3RpdmEgLWsuCgAgIC1XIEZJQ0hFSVJPLCAtLXdoYXQtaWY9RklDSEVJUk8sIC0tbmV3LWZpbGU9RklDSEVJUk8sIC0tYXNzdW1lLW5ldz1GSUNIRUlSTwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUcmF0YS1sbyBGSUNIRUlSTyBjb21hIGluZmluaXRhbWVudGUgbm92by4KACAgLWIsIC1tICAgICAgICAgICAgICAgICAgICAgIElnbm9yYWRvIHBvciBjb21wYXRpYmlsaWRhZGUuCgAgIC1kICAgICAgICAgICAgICAgICAgICAgICAgICBBbW9zYXIgbW9pdGEgaW5mb3JtYWNp824gZGUgZGVwdXJhY2nzbi4KACAgLWUsIC0tZW52aXJvbm1lbnQtb3ZlcnJpZGVzCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFzIHZhcmlhYmxlcyBkZSBhbWJpZW50ZSBzdWJzdGl0+mVuIGFvcyBmaWNoZWlyb3MKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGUgbWFrZS4KACAgLWYgRklDSEVJUk8sIC0tZmlsZT1GSUNIRUlSTywgLS1tYWtlZmlsZT1GSUNIRUlSTwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBMZS1sbyBGSUNIRUlSTyBjb21hIGZpY2hlaXJvIGRlIG1ha2UuCgAgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICAgICBBbW9zYXIgZXN0YSBtZW5zYXhlIGUgc2Htci4KACAgLWogW05dLCAtLWpvYnNbPU5dICAgICAgICAgIEFkbWl0aXIgTiB0cmFiYWxsb3Mg4SB2ZXo7IGluZmluaXRvcyBzZW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW4gYXJndW1lbnRvLgoAICAtaywgLS1rZWVwLWdvaW5nICAgICAgICAgICAgQ29udGludWFyIGNhbmRvIG5vIHNlIHBvaWRhbiBmYWNlcgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGf6bnMgb2J4ZWN0aXZvcy4KACAgLWwgW05dLCAtLWxvYWQtYXZlcmFnZVs9Tl0sIC0tbWF4LWxvYWRbPU5dCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5vbiBpbmljaWFyIHZhcmlvcyB0cmFiYWxsb3MgY29uIGNhcmdhCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3VwZXJpb3IgYSBOLgoAICAtbyBGSUNIRUlSTywgLS1vbGQtZmlsZT1GSUNIRUlSTywgLS1hc3N1bWUtb2xkPUZJQ0hFSVJPCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFRyYXRhLWxvIEZJQ0hFSVJPIGNvbWEgbW9pIGFudGlnbyBlIG5vbiByZWZhY2Vsby4KACAgLXAsIC0tcHJpbnQtZGF0YS1iYXNlICAgICAgIEFtb3NhLWxhIGJhc2UgZGUgZGF0b3MgaW50ZXJuYSBkZSBtYWtlLgoAICAtciwgLS1uby1idWlsdGluLXJ1bGVzICAgICAgRGVzYWN0aXZhLWxhcyByZWdyYXMgaW1wbO1jaXRhcyBpbmNsdWlkYXMuCgAgIC10LCAtLXRvdWNoICAgICAgICAgICAgICAgICBUb2NhLWxvcyBvYnhlY3Rpdm9zIG5vIGNhbnRvIGRlIG9zIHJlZmFjZXIuCgAgIC12LCAtLXZlcnNpb24gICAgICAgICAgICAgICBBbW9zYS1sbyBu+m1lcm8gZGUgdmVyc2nzbiBkZSBtYWtlIGUgc2Htci4KACAgLXcsIC0tcHJpbnQtZGlyZWN0b3J5ICAgICAgIEFtb3NhLWxvIGRpcmVjdG9yaW8gYWN0dWFsLgoAICBEYXRhICVzACAgSWdub3JhbmRvIG8gbm9tZSBWUEFUSCBgJXMnLgoAICB1aWQgPSAlZCwgZ2lkID0gJWQsIG1vZG8gPSAwJW8uCgAgKGluY2x1aWRhcyk6ACAobWVtb3JpYSBlbnZvcmNhZGEpACAov3NlIGNhZHJhIHVuaGEgdGFidWxhY2nzbiBubyBjYW50byBkZSBvaXRvIGVzcGFjaW9zPykAIChub24gaW1wb3J0YSkAIChkZSBgJXMnLCBsafFhICVsdSkAIChkZSBgJXMnLCBsafFhICVsdSk6CgAgKG8gbm9tZSBwb2RlIHF1ZWRhciB0cnVuY2FkbykAIChub24gaGFpIHVuIG9ieGVjdGl2byBwb3IgZGVmZWN0bykAIChub24gaGFpIGV4cGFuc2nzbiBkZSB+KQAgKHJlbW90bykAIChjYW1p8W8gZGUgYnVzY2EpACBmaWNoZWlyb3MsIAAgaW1wb3NpYmxlcwAgaW1wb3NpYmxlcyBlbiAlbHUgZGlyZWN0b3Jpb3MuCgAgYXRhIGFxde0uACB0ZXJtaW5hbC4AIyAgVGFt6W4gc2UgZmFpOgAjICBOb24gc2UgcHVpZG8gYWN0dWFsaXphci4AIyAgTyBmaWNoZWlybyBub24gZXhpc3RlLgAjICBPIGZpY2hlaXJvIGZvaSBhY3R1YWxpemFkby4AIyAgTyBmaWNoZWlybyBub24gZm9pIGFjdHVhbGl6YWRvLgAjICBPIGZpY2hlaXJvIOkgdW4gcHJlcnJlcXVpc2l0byBpbnRlcm1lZGlvLgAjICBPIGZpY2hlaXJvIOkgbW9pIGFudGlnby4AIyAgRu14b3NlIGEgYnVzY2EgZGUgcmVncmFzIGltcGztY2l0YXMuACMgIE5vbiBzZSBmaXhvIGEgYnVzY2EgZGUgcmVncmFzIGltcGztY2l0YXMuACMgIFJhaXogZG8gcGF0cvNuIGltcGztY2l0by9lc3ThdGljbzogYCVzJwoAIyAgoVZhbG9yIG5vbiB24WxpZG8gbm8gbWVtYnJvIGBjb21tYW5kX3N0YXRlJyEAIyAgoVZhbG9yIG5vbiB24WxpZG8gbm8gbWVtYnJvIGB1cGRhdGVfc3RhdHVzJyEAIyAg2mx0aW1hIG1vZGlmaWNhY2nzbjogJXMKACMgIE51bmNhIHNlIGNvbXByb2JvdSBvIHRlbXBvIGRlIG1vZGlmaWNhY2nzbi4AIyAgVGVuIHF1ZSBzZXIgYWN0dWFsaXphZG8gKC1xIGVzdOEgZXN0YWJyZWNpZG8pLgAjICBPYnhlY3Rpdm8gZmFsc28gKHByZXJyZXF1aXNpdG8gZGUgLlBIT05ZKS4AIyAgRmljaGVpcm8gcHJlY2lvc28gKHByZXJyZXF1aXNpdG8gZGUgLlBSRUNJT1VTKS4AIyAgQWN0dWFsaXphZG8gY29uIOl4aXRvLgAjICVzIChkaXNwb3NpdGl2byAlZCwgaW5vZGUgWyVkLCVkLCVkXSk6IAAjICVzIChkaXNwb3NpdGl2byAlZCwgaW5vZGUgWyVkLCVkLCVkXSk6IG5vbiBzZSBwdWlkbyBhYnJpci4KACMgJXMgKGRpc3Bvc2l0aXZvICVsZCwgaW5vZGUgJWxkKTogACMgJXMgKGRpc3Bvc2l0aXZvICVsZCwgaW5vZGUgJWxkKTogbm9uIHNlIHB1aWRvIGFicmlyLgoAIyAlcyAoY2xhdmUgJXMsIG10aW1lICVkKTogACMgJXMgKGNsYXZlICVzLCBtdGltZSAlZCk6IG5vbiBzZSBwdWlkbyBhYnJpci4KACMgJXM6IG5vbiBzZSBwdWlkbyBmYWNlLWxhIG9wZXJhY2nzbiBkZSBzdGF0LgoAIyBOb24gaGFpIGNhbWnxb3MgZGUgYnVzY2EgYHZwYXRoJwAjIE5vbiDpIHVuIG9ieGVjdGl2bzoAIyBlc3RhdO1zdGljYXMgZGEgdOFib2EgaGFzaCBkZSBjb254dW50byBkZSB2YXJpYWJsZXM6CgAlcyAobGnxYSAlZCkgQ29udGV4dG8gZG8gaW506XJwcmV0ZSBkZSBjb21hbmRvcyBpbmNvcnJlY3RvICghdW5peHkgJiYgIWJhdGNoX21vZGVfc2hlbGwpCgAlcyBlc3ThIHN1c3BlbmRpZG8gZHVyYW50ZSAzMCBzZWd1bmRvcy4uLgAlcyVzOiAlcwAlczogJXMAJXM6IENvbWFuZG8gbm9uIGF0b3BhZG8AJXM6IEVudHJhbmRvIG5vIGRpcmVjdG9yaW8gYCVzJwoAJXM6IFNh7W5kbyBkbyBkaXJlY3RvcmlvIGAlcycKACVzOiBJbnTpcnByZXRlIGRlIGNvbWFuZG9zIG5vbiBhdG9wYWRvACVzOiBNYXJjYSBkZSB0ZW1wbyBm83JhIGRlIHJhbmdvOyBzdWJzdGl0de1uZG8gJXMAJXM6IG9wY2nzbiBub24gduFsaWRhIC0tICVjCgAlczogb3BjafNuIG5vbiB24WxpZGEgLS0gJWMKACVzOiBhIG9wY2nzbiBgJWMlcycgbm9uIGFkbWl0ZSB1biBhcmd1bWVudG8KACVzOiBhIG9wY2nzbiBgJXMnIOkgYW1iaWd1YQoAJXM6IGEgb3BjafNuIGAlcycgcHJlY2lzYSBkdW4gYXJndW1lbnRvCgAlczogYSBvcGNp824gYC0tJXMnIG5vbiBhZG1pdGUgdW4gYXJndW1lbnRvCgAlczogYSBvcGNp824gYC1XICVzJyBub24gYWRtaXRlIHVuIGFyZ3VtZW50bwoAJXM6IGEgb3BjafNuIGAtVyAlcycg6SBhbWJpZ3VhCgAlczogYSBvcGNp824gcHJlY2lzYSBkdW4gYXJndW1lbnRvIC0tICVjCgAlczogb3BjafNuIGAlYyVzJyBub24gcmVjb/FlY2lkYQoAJXM6IG9wY2nzbiBgLS0lcycgbm9uIHJlY2/xZWNpZGEKACVzOiB1c3VhcmlvICVsdSAocmVhbCAlbHUpLCBncnVwbyAlbHUgKHJlYWwgJWx1KQoAJXNOb24gaGFpIHVuaGEgcmVncmEgcGFyYSBmYWNlLWxvIG9ieGVjdGl2byBgJXMnJXMAJXNOb24gaGFpIHVuaGEgcmVncmEgcGFyYSBmYWNlLWxvIG9ieGVjdGl2byBgJXMnLCBxdWUgcHJlY2lzYSBgJXMnJXMAJXNbJXVdOiBFbnRyYW5kbyBubyBkaXJlY3RvcmlvIGAlcycKACVzWyV1XTogU2HtbmRvIGRvIGRpcmVjdG9yaW8gYCVzJwoAKioqIE8gbWVtYnJvIGRvIGFycXVpdm8gYCVzJyBwb2RlIG5vbiBzZXIgY29ycmVjdG87IG5vbiBib3JyYWRvACoqKiBJbnRlcnJvbXBpZG8uCgAqKiogQm9ycmFuZG8gbyBmaWNoZWlybyBgJXMnACoqKiBCb3JyYW5kbyBvIGZpY2hlaXJvIGludGVybWVkaW8gYCVzJwAqKiogQWdhcmRhbmRvIHBvciB0cmFiYWxsb3Mgbm9uIHJlbWF0YWRvcy4uLi4AKioqIEF2aXNvOiBvIGZpY2hlaXJvIGAlcycgZGUgLkxPV19SRVNPTFVUSU9OX1RJTUUgdGVuIHVuaGEgbWFyY2EgZGUgdGVtcG8gZGUgYWx0YSByZXNvbHVjafNuACoqKiBbJXNdIE8gbWVtYnJvIGRvIGFycXVpdm8gYCVzJyBwb2RlIG5vbiBzZXIgY29ycmVjdG87IG5vbiBib3JyYWRvACoqKiBbJXNdIEJvcnJhbmRvIG8gZmljaGVpcm8gYCVzJwAqKiogWyVzXSBFcnJvICVkACoqKiBbJXNdIEVycm8gMHgleAAqKiogWyVzXSBFcnJvIDB4JXggKGlnbm9yYWRvKQAtYXZpc28sIHBvZGUgcXVlIHRl8WEgcXVlIHJlYWN0aXZhLWxvIG1hbmV4byBkZSBDVFJMLVkgZGVuZGUgbyBEQ0wuCgAuIERldGlkby4KAE8gZWxlbWVudG8gZGUgLkxJQlBBVFRFUk5TIGAlcycgbm9uIOkgdW4gcGF0cvNuADsgdXNhbmRvIG8gbm9tZSBkZSBWUEFUSCBgJXMnAEFib3J0YWRvAFRlbXBvcml6YWRvcgBFdml0YW5kbyBhIHJlY3Vyc2nzbiBkZSByZWdyYXMgaW1wbO1jaXRhcy4KAEJVSUxUSU4gQ0QgJXMKAEJVSUxUSU4gUk0gJXMKAEJVSUxUSU4gWyVzXVslc10KAENoYW1hZGEgYW8gc2lzdGVtYSBpbmNvcnJlY3RhAENhbm8gcm9tcGlkbwBFcnJvIGRvIGJ1cwBM7W1pdGUgZGUgdGVtcG8gZGUgQ1BVIHN1cGVyYWRvAEFjY2VzbyBkZSBmaWxsbwBPIHByb2Nlc28gZmlsbG8gcmVtYXRvdQBBIGRlcGVuZGVuY2lhIGNpcmN1bGFyICVzIDwtICVzIGZvaSBlbGltaW5hZGEuAExpbXBhbmRvIG8gZmljaGVpcm8gZGUgbG90ZXMgdGVtcG9yYWwgJXMKAExpbXBhbmRvIG8gZmljaGVpcm8gZGUgbG90ZXMgdGVtcG9yYWwgJXMKAENvbGlzafNucz0lbGQvJWxkPSUuMGYlJQBDb25zaWRlcmFuZG8gbyBmaWNoZWlybyBvYnhlY3Rpdm8gYCVzJy4KAENvbnRpbnVhZG8ATm9uIHNlIHB1aWRvIHZvbHRhciBhbyBkaXJlY3RvcmlvIG9yaXhpbmFsLgBDcmVhbmRvIHVuIGZpY2hlaXJvIHBvciBsb3RlcyB0ZW1wb3JhbCAlcwoASG9yYSBhY3R1YWwAQSBBZHVhbmEgbm9uIGV4cG9ydGE6ICVzCgBTaW5hbCBkZSBwZXJpZ28AVHJhbXBhIEVNVABFcnJvIGFvIGxhbnphciwgJWQKAEVycm8sIGNvbWFuZG8gYmFsZWlybwoARXhlY3V0YW5kbyAlcyBubyBjYW50bwoAVGV4dG8gc3VwZXJmbHVvIHRyYWxhIGRpcmVjdGl2YSBgJXMnAE5vbiBzZSBwdWlkbyByZWZhY2UtbG8gZmljaGVpcm8gZGUgbWFrZSBgJXMnLgBOb24gc2UgcHVpZG8gcmVmYWNlLWxvIGZpY2hlaXJvIG9ieGVjdGl2byBgJXMnLgoATyBmaWNoZWlybyBgJXMnIG5vbiBleGlzdGUuCgBPIGZpY2hlaXJvIGAlcycgeGEgZm9yYSBjb25zaWRlcmFkby4KAEztbWl0ZSBkZSB0YW1h8W8gZGUgZmljaGVpcm9zIHN1cGVyYWRvAFJlbWF04XJvbnNlIG9zIHByZXJyZXF1aXNpdG9zIGRvIGZpY2hlaXJvIG9ieGVjdGl2byBgJXMnLgoAUmVtYXRvdXNlIGRlIGFjdHVhbGl6YS1sbyBmaWNoZWlybyBgJXMnLgoATyBjby1wcm9jZXNhZG9yIGRlIGNvbWEgZmxvdGFudGUgbm9uIGVzdOEgZGlzcG/xaWJsZQBFeGNlcGNp824gZGUgY29tYSBmbG90YW50ZQBBdG9wb3VzZSB1bmhhIHJlZ3JhIGltcGztY2l0YSBkZSBgJXMnLgoAQXRvcG91c2UgYSBvIHByZXJyZXF1aXNpdG8gYCVzJyBjb21hIFZQQVRIIGAlcycKAEFiYW5kb25hbmRvIG5vIGZpY2hlaXJvIG9ieGVjdGl2byBgJXMnLgoAQ29sZ2FyAEEgRS9TIOkgcG9zaWJsZQBUcmFtcGEgZGUgSU9UAEluc3RydWNjafNuIElsZWdhbABOb24gc2UgYXRvcG91IG8gZmljaGVpcm8gZGUgbWFrZSBpbmNsdWlkbyBgJXMnLgBQZXRpY2nzbiBkZSBpbmZvcm1hY2nzbgBBY2Nlc28gaW5pY2lhbGl6YWRvAEludGVycm9tcGlkbwBNYXRhZG8AQ2FyZ2E9JWxkLyVsZD0lLjBmJSUsIABCdXNjYW5kbyB1bmhhIHJlZ3JhIGNvIGZpY2hlaXJvIGludGVybWVkaW8gYCVzJy4KAEJ1c2NhbmRvIHVuaGEgcmVncmEgaW1wbO1jaXRhIHBhcmEgYCVzJy4KAEJ1c2NhbmRvIHVuaGEgcmVncmEgaW1wbO1jaXRhIG1lbWJybyBkbyBhcnF1aXZvIHBhcmEgYCVzJy4KAEFjY2VzbyBkZSBtYWtlAE8gZmljaGVpcm8gZGUgbWFrZSBgJXMnIHBvZGVy7WEgY2F1c2FyIHVuIGxhem87IG5vbiBzZSByZWZhaS4KAE5vbiBzZSBhdG9wb3UgbyBmaWNoZWlybyBkZSBtYWtlIGAlcycATyBmaWNoZWlybyBkZSBtYWtlIGRhIGVudHJhZGEgZXN04W5kYXIgZm9pIGVzcGVjaWZpY2FkbyBk+mFzIHZlY2VzLgBGYWNlbmRvIGAlcycgZGViaWRvIOEgbWFyY2EgZGUgc2VtcHJlLWZhY2VyLgoATWVtYnJvIGAlcyclczogJWxkIGJ5dGVzIGVuICVsZCAoJWxkKS4KAERlYmUgcmVmYWNlcnNlIG8gb2J4ZWN0aXZvIGAlcycuCgBOb24ATm9uIHNlIGF0b3BvdSB1bmhhIHJlZ3JhIGltcGztY2l0YSBwYXJhIGAlcycuCgBOb24g6SBwcmVjaXNvIHJlZmFjZS1sbyBvYnhlY3Rpdm8gYCVzJwBOb24gaGFpIG9ieGVjdGl2b3MATm9uIHNlIGVzcGVjaWZpY2Fyb24gb2J4ZWN0aXZvcyBlIG5vbiBzZSBhdG9wb3UgdW4gZmljaGVpcm8gZGUgbWFrZQBOb24gaGFpIG5hZGEgcXVlIGZhY2VyIHBhcmEgYCVzJwBPcGNp825zOgoAT3MgdHJhYmFsbG9zIGVuIHBhcmFsZWxvICgtaikgbm9uIGVzdOFuIHNvcG9ydGFkb3MgbmVzdGEgcGxhdGFmb3JtYS4ARmFsbG8gZGUgc3VtaW5pc3RybyBlbOljdHJpY28ATyBwcmVycmVxdWlzaXRvIGAlcycg6SBt4WlzIG5vdm8gY/Mgb2J4ZWN0aXZvIGAlcycuCgBPIHByZXJyZXF1aXNpdG8gYCVzJyDpIG3haXMgdmVsbG8gY/Mgb2J4ZWN0aXZvIGAlcycuCgBPIHByZXJyZXF1aXNpdG8gYCVzJyDpIHPzLW9yZGUgcGFyYSBvIG9ieGVjdGl2byBgJXMnLgoATyBwcmVycmVxdWlzaXRvIGAlcycgZG8gb2J4ZWN0aXZvIGAlcycgbm9uIGV4aXN0ZS4KAE8gdGVtcG9yaXphZG9yIGVzZ290b3VzZQBQb2RhbmRvIG8gZmljaGVpcm8gYCVzJy4KAFNh7XIATGVuZG8gbyBmaWNoZWlybyBkZSBtYWtlIGAlcycATGVuZG8gb3MgZmljaGVpcm9zIGRlIG1ha2UuLi4KAEhhaSBwb3VjbyBwcm9ib3VzZSBhIGFjdHVhbGl6YS1sbyBmaWNoZWlybyBgJXMnIGUgbm9uIHNlIHB1aWRvLgoAQSB2YXJpYWJsZSByZWN1cnNpdmEgYCVzJyBmYWkgcmVmZXJlbmNpYSBhIHNpIG1lc21hIChhbyBmaW5hbCkARXJyb3MgcmVkaXJpeGlkb3MgYSAlcwoARW50cmFkYSByZWRpcml4aWRhIGRlICVzCgBTYe1kYSByZWRpcml4aWRhIGEgJXMKAFJlaGFzaD0lZCwgAFJleGVpdGFuZG8gbyBwcmVycmVxdWlzaXRvIGltcGztY2l0byBpbXBvc2libGUgYCVzJy4KAFJleGVpdGFuZG8gbyBwcmVycmVxdWlzaXRvIGltcG9zaWJsZSBgJXMnLgoAQm9ycmFuZG8gb3MgZmljaGVpcm9zIGludGVybWVkaW9zLi4uCgBJbmZvcm1lIGRvcyBlcnJvcyBubyBwcm9ncmFtYSBhIDxidWctbWFrZUBnbnUub3JnPi4KSW5mb3JtZSBkb3MgZXJyb3MgbmEgdHJhZHVjY2nzbiBhIDxwcm94ZWN0b0B0cmFzbm8ubmV0Pi4KAFJlaW5pY2lhbmRvIHBhcmEgZW50cmFyIG5vIG1vZG8gZGUgdW4gdHJhYmFsbG8gKC1qMSkuAFJlY3Vyc28gcGVyZGlkbwBTSUdQSE9ORQBTSUdXSU5EAEZhbGxvIGRlIHNlZ21lbnRvAEFpbmRhIHNlIGVzdOEgYWN0dWFsaXphbmRvIG8gZmljaGVpcm8gYCVzJy4KAERldGlkbwBEZXRpZG8gKHNpbmFsKQBEZXRpZG8gKGVudHJhZGEgZGUgY29uc29sYSkARGV0aWRvIChzYe1kYSBkZSBjb25zb2xhKQBPIGZpY2hlaXJvIG9ieGVjdGl2byBgJXMnIGZvaSBmZWl0byBkZSBub3ZvIGNvbiDpeGl0by4KAE8gb2J4ZWN0aXZvIGAlcycgdGVuIGNhdHJvIHB1bnRvcyBlIG5vbiB0ZW4gcHJlcnJlcXVpc2l0b3MuCgBOb24gc2UgcmVmYWkgbyBvYnhlY3Rpdm8gYCVzJyBhIGNhdXNhIGRvcyBlcnJvcy4ATyBmaWNoZWlybyBvYnhlY3Rpdm8gYCVzJyBwcmVjaXNhIHJlZmFjZXJzZSBjb24gLXEuCgBSZW1hdGFkbwBFc3RhbiBhIHNlIGZhY2UtbG9zIHByZXJyZXF1aXNpdG9zIGRlIGAlcycuCgBUcmFtcGEgZGUgdHJhemFkby9wdW50byBkZSBkZXRlbmNp824AUHJvYmFuZG8gbyBwcmVycmVxdWlzaXRvIGltcGztY2l0byBgJXMnLgoAUHJvYmFuZG8gYSByZWdyYSBkZSBwYXRy824gY29uIHJhaXogYCUuKnMnLgoAUHJvYmFuZG8gbyBwcmVycmVxdWlzaXRvIGAlcycuCgBDb21hbmRvIGluY2x1aWRvIGRlc2Nv8WVjaWRvICclcycKAEVycm8gJWQgZGVzY2/xZWNpZG8AQWN0dWFsaXphbmRvIG9zIG9ieGVjdGl2b3MgbWV0YS4uLi4KAEFjdHVhbGl6YW5kbyBvcyBmaWNoZWlyb3MgZGUgbWFrZS4uLi4KAENvbmRpY2nzbiBkZSBFL1MgdXJ4ZW50ZQBVc286ICVzIFtvcGNp825zXSBbb2J4ZWN0aXZvXSAuLi4KAEFjY2VzbyBkZSB1c3VhcmlvAFNpbmFsIGRlZmluaWRvIHBvbG8gdXN1YXJpbyAxAFNpbmFsIGRlZmluaWRvIHBvbG8gdXN1YXJpbyAyAFVzYW5kbyBvcyBjb21hbmRvcyBwb3IgZGVmZWN0byBwYXJhIGAlcycuCgBUZW1wb3JpemFkb3IgdmlydHVhbCBlc2dvdGFkbwBBdmlzbzogUmVkaXJlY2Np824gYmFsZWlyYQoAQXZpc286IE8gZmljaGVpcm8gYCVzJyB0ZW4gdW5oYSBkYXRhIGRlIG1vZGlmaWNhY2nzbiBubyBmdXR1cm8AQSBmaWVzdHJhIGNhbWJpb3UAWyVzXSBFcnJvICVkIChpZ25vcmFkbykAYCVzJyBlc3ThIGFjdHVhbGl6YWRvLgBkaXJlY3RpdmEgYG92ZXJyaWRlJwB0ZW50b3VzZSB1c2FyIHVuaGEgY2FyYWN0ZXLtc3RpY2Egbm9uIHNvcG9ydGFkYTogYCVzJwBhdXRvbeF0aWNvAHBlcm8gYWdvcmEgY29uc2lk6XJhc2UgcXVlIGAlcycg6SBvIG1lc21vIGZpY2hlaXJvIHF1ZSBgJXMnLgBub24gc2UgcG9kZSByZW5vbWVhciBgJXMnIGNvbiBjYXRybyBwdW50b3MgYSBgJXMnIGNvbiBkb3VzIHB1bnRvcwBub24gc2UgcG9kZSByZW5vbWVhciBgJXMnIGNvbiBkb3VzIHB1bnRvcyBhIGAlcycgY29uIGNhdHJvIHB1bnRvcwBub24gc2UgcG9kZSBpbXBv8WVyIHVuIGztbWl0ZSBkZSBjYXJnYTogAG5vbiBzZSBwb2RlbiBpbXBv8WVyIGztbWl0ZXMgZGUgY2FyZ2EgbmVzdGUgc2lzdGVtYSBvcGVyYXRpdm8AbGnxYSBkZSBjb21hbmRvcwBjcmVhbmRvIG8gY2FubyBkZSB0cmFiYWxsb3MAcG9yIGRlZmVjdG8AcmVtYXRvdXNlIHNsZWVwKDMwKS4gQ29udGludWFuZG8uCgBkdXAgam9ic2VydmVyAGEgY2FkZWEgYmFsZWlyYSBub24g6SB24WxpZGEgY29tYSBub21lIGRlIGZpY2hlaXJvAG5vbWUgZGUgdmFyaWFibGUgYmFsZWlybwBhbWJpZW50ZQBhbWJpZW50ZSBiYWl4byAtZQBgJXMnIHN1cGVyZmx1bwBvIHByaW1laXJvIGFyZ3VtZW50byBkYSBmdW5jafNuIGB3b3JkJyBkZWJlIHNlciBtYWlvciBxdWUgMABmb3BlbiAoZmljaGVpcm8gdGVtcG9yYWwpAGZ3cml0ZSAoZmljaGVpcm8gdGVtcG9yYWwpAGluaWNpYWxpemEtbG8gY2FubyBkbyBzZXJ2aWRvciBkZSB0cmFiYWxsb3MAZXJybyBpbnRlcm5vOiBgJXMnIGNvbW1hbmRfc3RhdGUAZXJybyBpbnRlcm5vOiBjYWRlYSAtLWpvYnNlcnZlci1mZHMgbm9uIHbhbGlkYSBgJXMnAGVycm8gaW50ZXJubzogb3BjafNucyAtLWpvYnNlcnZlci1mZHMgbfpsdGlwbGVzAHNpbnRheGUgbm9uIHbhbGlkYSBubyBjb25kaWNpb25hbABmaWNoZWlybyBkZSBtYWtlAGZhbGxhIGBlbmRlZicsIGBkZWZpbmUnIHNlbiByZW1hdGFyAGZhbGxhIGBlbmRpZicAZmFsbGEgdW4gc2VwYXJhZG9yJXMAZmFsbGEgdW4gcGF0cvNuIG9ieGVjdGl2bwByZWdyYXMgaW1wbO1jaXRhcyBlIG5vcm1haXMgbWVzdHVyYWRhcwByZWdy4XMgZGUgcGF0cvNuIGltcGztY2l0YXMgZSBlc3ThdGljYXMgbWVzdHVyYWRhcwBwYXRy825zIGRlIG9ieGVjdGl2byBt+mx0aXBsZXMAbm9uAHByaW1laXJvIGFyZ3VtZW50byBkYSBmdW5jafNuIGB3b3JkJyBub24gbnVt6XJpY28AcHJpbWVpcm8gYXJndW1lbnRvIGRhIGZ1bmNp824gYHdvcmRsaXN0JyBub24gbnVt6XJpY28Ac2VndW5kbyBhcmd1bWVudG8gZGEgZnVuY2nzbiBgd29yZGxpc3QnIG5vbiBudW3pcmljbwBz8yB1biBgZWxzZScgcG9yIGNvbmRpY2lvbmFsAGxlY3R1cmEgZG8gY2FubyBkZSB0cmFiYWxsb3MAbyBvYnhlY3Rpdm8gYCVzJyBub24gY29pbmNpZGUgY28gcGF0cvNuIGRvIG9ieGVjdGl2bwBvIG9ieGVjdGl2byBgJXMnIGFwYXJlY2UgbeFpcyBkdW5oYSB2ZXogbmEgbWVzbWEgcmVncmEuAG8gZmljaGVpcm8gb2J4ZWN0aXZvIGAlcycgdGVuIGVudHJhZGFzIDogZSA6OgBvIHBhdHLzbiBvYnhlY3Rpdm8gbm9uIGNvbnTpbiBgJSUnAGEgb3BjafNuIGAtJWMnIHByZWNpc2EgZHVuIGFyZ3VtZW50byBpbnRlZ3JhbCBwb3NpdGl2bwBhIG9wZXJhY2nzbiBkZSB0b2NhciB1biBtZW1icm8gZG8gYXJxdWl2byBub24gZXN04SBkaXNwb/FpYmxlIGVuIFZNUwB0b3VjaDogTyBhcnF1aXZvIGAlcycgbm9uIGV4aXN0ZQB0b3VjaDogQ/NkaWdvIGRlIHJldG9ybm8gaW5jb3JyZWN0byBkZSBhcl9tZW1iZXJfdG91Y2ggZW4gYCVzJwB0b3VjaDogTyBtZW1icm8gYCVzJyBub24gZXhpc3RlIGVuIGAlcycAdG91Y2g6IGAlcycgbm9uIOkgdW4gYXJxdWl2byB24WxpZG8Abm9uIHNlIHBvZGUgYWJyaS1sYSBiaWJsaW90ZWNhIGAlcycgcGFyYSBidXNjYS1sbyBtZW1icm8gYCVzJwBlc3BlY2lmaWNhY2nzbiBkZSBuaXZlbCBkZSBkZXB1cmFjafNuIGRlc2Nv8WVjaWRvIGAlcycAc2luYWwgZGVzY2/xZWNpZG8AdW5saW5rIChmaWNoZWlybyB0ZW1wb3JhbCkAY2hhbWFkYSDhIGZ1bmNp824gYCVzJyBub24gcmVtYXRhZGE6IGZhbGxhIGAlYycAcmVmZXJlbmNpYSBhIHZhcmlhYmxlIG5vbiByZW1hdGFkYQBtZW1vcmlhIHZpcnR1YWwgZXNnb3RhZGEAYXZpc286IERldGVjdOFyb25zZSBpbmNvbnNpc3RlbmNpYXMgZGUgcmVsb3hvLiBBIG9wZXJhY2nzbiBwb2RlIHF1ZWRhciBpbmNvbXBsZXRhLgBhdmlzbzogLWpOIGZvcnphZG8gbm8gc3VibWFrZTogZGVzYWN0aXZhbmRvIG8gbW9kbyBkZSBzZXJ2aWRvciBkZSB0cmFiYWxsb3MuAGF2aXNvOiB2aXVzZSB1biBjYXLhY3RlciBOVUw7IGlnbvNyYXNlIG8gcmVzdG8gZGEgbGnxYQBhdmlzbzogbyBzZXJ2aWRvciBkZSB0cmFiYWxsb3Mgbm9uIGVzdOEgZGlzcG/xaWJsZTogdXNhbmRvIC1qMS4gRW5nYWRhIGArJyDhIHJlZ3JhIGRvIG1ha2UgcGFpLgBhdmlzbzogdmFyaWFibGUgbm9uIGRlZmluaWRhIGAlLipzJwB3cml0ZSBqb2JzZXJ2ZXIA