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aWx0IGZvciAlcwoAClRoaXMgcHJvZ3JhbSBidWlsdCBmb3IgJXMgKCVzKQoAICAtLWRlYnVnWz1GTEFHU10gICAgICAgICAgICAgUHJpbnQgdmFyaW91cyB0eXBlcyBvZiBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24uCgAgIC0tbm8tcHJpbnQtZGlyZWN0b3J5ICAgICAgICBUdXJuIG9mZiAtdywgZXZlbiBpZiBpdCB3YXMgdHVybmVkIG9uIGltcGxpY2l0bHkuCgAgIC0td2Fybi11bmRlZmluZWQtdmFyaWFibGVzICBXYXJuIHdoZW4gYW4gdW5kZWZpbmVkIHZhcmlhYmxlIGlzIHJlZmVyZW5jZWQuCgAgIC1CLCAtLWFsd2F5cy1tYWtlICAgICAgICAgICBVbmNvbmRpdGlvbmFsbHkgbWFrZSBhbGwgdGFyZ2V0cy4KACAgLUMgRElSRUNUT1JZLCAtLWRpcmVjdG9yeT1ESVJFQ1RPUlkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ2hhbmdlIHRvIERJUkVDVE9SWSBiZWZvcmUgZG9pbmcgYW55dGhpbmcuCgAgIC1JIERJUkVDVE9SWSwgLS1pbmNsdWRlLWRpcj1ESVJFQ1RPUlkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU2VhcmNoIERJUkVDVE9SWSBmb3IgaW5jbHVkZWQgbWFrZWZpbGVzLgoAICAtUiwgLS1uby1idWlsdGluLXZhcmlhYmxlcyAgRGlzYWJsZSB0aGUgYnVpbHQtaW4gdmFyaWFibGUgc2V0dGluZ3MuCgAgIC1TLCAtLW5vLWtlZXAtZ29pbmcsIC0tc3RvcAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUdXJucyBvZmYgLWsuCgAgIC1XIEZJTEUsIC0td2hhdC1pZj1GSUxFLCAtLW5ldy1maWxlPUZJTEUsIC0tYXNzdW1lLW5ldz1GSUxFCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIENvbnNpZGVyIEZJTEUgdG8gYmUgaW5maW5pdGVseSBuZXcuCgAgIC1iLCAtbSAgICAgICAgICAgICAgICAgICAgICBJZ25vcmVkIGZvciBjb21wYXRpYmlsaXR5LgoAICAtZCAgICAgICAgICAgICAgICAgICAgICAgICAgUHJpbnQgbG90cyBvZiBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24uCgAgIC1lLCAtLWVudmlyb25tZW50LW92ZXJyaWRlcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBFbnZpcm9ubWVudCB2YXJpYWJsZXMgb3ZlcnJpZGUgbWFrZWZpbGVzLgoAICAtZiBGSUxFLCAtLWZpbGU9RklMRSwgLS1tYWtlZmlsZT1GSUxFCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJlYWQgRklMRSBhcyBhIG1ha2VmaWxlLgoAICAtaCwgLS1oZWxwICAgICAgICAgICAgICAgICAgUHJpbnQgdGhpcyBtZXNzYWdlIGFuZCBleGl0LgoAICAtaSwgLS1pZ25vcmUtZXJyb3JzICAgICAgICAgSWdub3JlIGVycm9ycyBmcm9tIGNvbW1hbmRzLgoAICAtaiBbTl0sIC0tam9ic1s9Tl0gICAgICAgICAgQWxsb3cgTiBqb2JzIGF0IG9uY2U7IGluZmluaXRlIGpvYnMgd2l0aCBubyBhcmcuCgAgIC1rLCAtLWtlZXAtZ29pbmcgICAgICAgICAgICBLZWVwIGdvaW5nIHdoZW4gc29tZSB0YXJnZXRzIGNhbid0IGJlIG1hZGUuCgAgIC1sIFtOXSwgLS1sb2FkLWF2ZXJhZ2VbPU5dLCAtLW1heC1sb2FkWz1OXQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEb24ndCBzdGFydCBtdWx0aXBsZSBqb2JzIHVubGVzcyBsb2FkIGlzIGJlbG93IE4uCgAgIC1uLCAtLWp1c3QtcHJpbnQsIC0tZHJ5LXJ1biwgLS1yZWNvbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEb24ndCBhY3R1YWxseSBydW4gYW55IGNvbW1hbmRzOyBqdXN0IHByaW50IHRoZW0uCgAgIC1vIEZJTEUsIC0tb2xkLWZpbGU9RklMRSwgLS1hc3N1bWUtb2xkPUZJTEUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQ29uc2lkZXIgRklMRSB0byBiZSB2ZXJ5IG9sZCBhbmQgZG9uJ3QgcmVtYWtlIGl0LgoAICAtcCwgLS1wcmludC1kYXRhLWJhc2UgICAgICAgUHJpbnQgbWFrZSdzIGludGVybmFsIGRhdGFiYXNlLgoAICAtcSwgLS1xdWVzdGlvbiAgICAgICAgICAgICAgUnVuIG5vIGNvbW1hbmRzOyBleGl0IHN0YXR1cyBzYXlzIGlmIHVwIHRvIGRhdGUuCgAgIC1yLCAtLW5vLWJ1aWx0aW4tcnVsZXMgICAgICBEaXNhYmxlIHRoZSBidWlsdC1pbiBpbXBsaWNpdCBydWxlcy4KACAgLXMsIC0tc2lsZW50LCAtLXF1aWV0ICAgICAgIERvbid0IGVjaG8gY29tbWFuZHMuCgAgIC10LCAtLXRvdWNoICAgICAgICAgICAgICAgICBUb3VjaCB0YXJnZXRzIGluc3RlYWQgb2YgcmVtYWtpbmcgdGhlbS4KACAgLXYsIC0tdmVyc2lvbiAgICAgICAgICAgICAgIFByaW50IHRoZSB2ZXJzaW9uIG51bWJlciBvZiBtYWtlIGFuZCBleGl0LgoAICAtdywgLS1wcmludC1kaXJlY3RvcnkgICAgICAgUHJpbnQgdGhlIGN1cnJlbnQgZGlyZWN0b3J5LgoAICBEYXRlICVzACAgSWdub3JpbmcgVlBBVEggbmFtZSBgJXMnLgoAICB1aWQgPSAlZCwgZ2lkID0gJWQsIG1vZGUgPSAwJW8uCgAgKGJ1aWx0LWluKToAIChjb3JlIGR1bXBlZCkAIChkaWQgeW91IG1lYW4gVEFCIGluc3RlYWQgb2YgOCBzcGFjZXM/KQAgKGRvbid0IGNhcmUpACAoZnJvbSBgJXMnLCBsaW5lICVsdSkAIChmcm9tIGAlcycsIGxpbmUgJWx1KToKACAobmFtZSBtaWdodCBiZSB0cnVuY2F0ZWQpACAobm8gZGVmYXVsdCBnb2FsKQAgKG5vIH4gZXhwYW5zaW9uKQAgKHJlbW90ZSkAIChzZWFyY2ggcGF0aCkAIGZpbGVzLCAAIGltcG9zc2liaWxpdGllcwAgaW1wb3NzaWJpbGl0aWVzIGluICVsdSBkaXJlY3Rvcmllcy4KACBzbyBmYXIuACB0ZXJtaW5hbC4AIyAgQWxzbyBtYWtlczoAIyAgQ29tbWFuZC1saW5lIHRhcmdldC4AIyAgQ29tbWFuZHMgY3VycmVudGx5IHJ1bm5pbmcgKFRISVMgSVMgQSBCVUcpLgAjICBEZXBlbmRlbmNpZXMgY29tbWFuZHMgcnVubmluZyAoVEhJUyBJUyBBIEJVRykuACMgIEZhaWxlZCB0byBiZSB1cGRhdGVkLgAjICBGaWxlIGRvZXMgbm90IGV4aXN0LgAjICBGaWxlIGhhcyBiZWVuIHVwZGF0ZWQuACMgIEZpbGUgaGFzIG5vdCBiZWVuIHVwZGF0ZWQuACMgIEZpbGUgaXMgYW4gaW50ZXJtZWRpYXRlIHByZXJlcXVpc2l0ZS4AIyAgRmlsZSBpcyB2ZXJ5IG9sZC4AIyAgSW1wbGljaXQgcnVsZSBzZWFyY2ggaGFzIGJlZW4gZG9uZS4AIyAgSW1wbGljaXQgcnVsZSBzZWFyY2ggaGFzIG5vdCBiZWVuIGRvbmUuACMgIEltcGxpY2l0L3N0YXRpYyBwYXR0ZXJuIHN0ZW06IGAlcycKACMgIEludmFsaWQgdmFsdWUgaW4gYGNvbW1hbmRfc3RhdGUnIG1lbWJlciEAIyAgSW52YWxpZCB2YWx1ZSBpbiBgdXBkYXRlX3N0YXR1cycgbWVtYmVyIQAjICBMYXN0IG1vZGlmaWVkICVzCgAjICBNb2RpZmljYXRpb24gdGltZSBuZXZlciBjaGVja2VkLgAjICBOZWVkcyB0byBiZSB1cGRhdGVkICgtcSBpcyBzZXQpLgAjICBQaG9ueSB0YXJnZXQgKHByZXJlcXVpc2l0ZSBvZiAuUEhPTlkpLgAjICBQcmVjaW91cyBmaWxlIChwcmVyZXF1aXNpdGUgb2YgLlBSRUNJT1VTKS4AIyAgU3VjY2Vzc2Z1bGx5IHVwZGF0ZWQuACMgIGNvbW1hbmRzIHRvIGV4ZWN1dGUAIyAlcyAoZGV2aWNlICVkLCBpbm9kZSBbJWQsJWQsJWRdKTogACMgJXMgKGRldmljZSAlZCwgaW5vZGUgWyVkLCVkLCVkXSk6IGNvdWxkIG5vdCBiZSBvcGVuZWQuCgAjICVzIChkZXZpY2UgJWxkLCBpbm9kZSAlbGQpOiAAIyAlcyAoZGV2aWNlICVsZCwgaW5vZGUgJWxkKTogY291bGQgbm90IGJlIG9wZW5lZC4KACMgJXMgKGtleSAlcywgbXRpbWUgJWQpOiAAIyAlcyAoa2V5ICVzLCBtdGltZSAlZCk6IGNvdWxkIG5vdCBiZSBvcGVuZWQuCgAjICVzOiBjb3VsZCBub3QgYmUgc3RhdCdkLgoAIyBObyBgdnBhdGgnIHNlYXJjaCBwYXRocy4AIyBOb3QgYSB0YXJnZXQ6ACMgdmFyaWFibGUgc2V0IGhhc2gtdGFibGUgc3RhdHM6CgAlcyAobGluZSAlZCkgQmFkIHNoZWxsIGNvbnRleHQgKCF1bml4eSAmJiAhYmF0Y2hfbW9kZV9zaGVsbCkKACVzIGlzIHN1c3BlbmRpbmcgZm9yIDMwIHNlY29uZHMuLi4AJXMlczogJXMAJXM6ICVzACVzOiBDb21tYW5kIG5vdCBmb3VuZAAlczogRW50ZXJpbmcgZGlyZWN0b3J5IGAlcycKACVzOiBMZWF2aW5nIGRpcmVjdG9yeSBgJXMnCgAlczogU2hlbGwgcHJvZ3JhbSBub3QgZm91bmQAJXM6IFRpbWVzdGFtcCBvdXQgb2YgcmFuZ2U7IHN1YnN0aXR1dGluZyAlcwAlczogaWxsZWdhbCBvcHRpb24gLS0gJWMKACVzOiBpbnZhbGlkIG9wdGlvbiAtLSAlYwoAJXM6IG9wdGlvbiBgJWMlcycgZG9lc24ndCBhbGxvdyBhbiBhcmd1bWVudAoAJXM6IG9wdGlvbiBgJXMnIGlzIGFtYmlndW91cwoAJXM6IG9wdGlvbiBgJXMnIHJlcXVpcmVzIGFuIGFyZ3VtZW50CgAlczogb3B0aW9uIGAtLSVzJyBkb2Vzbid0IGFsbG93IGFuIGFyZ3VtZW50CgAlczogb3B0aW9uIGAtVyAlcycgZG9lc24ndCBhbGxvdyBhbiBhcmd1bWVudAoAJXM6IG9wdGlvbiBgLVcgJXMnIGlzIGFtYmlndW91cwoAJXM6IG9wdGlvbiByZXF1aXJlcyBhbiBhcmd1bWVudCAtLSAlYwoAJXM6IHVucmVjb2duaXplZCBvcHRpb24gYCVjJXMnCgAlczogdW5yZWNvZ25pemVkIG9wdGlvbiBgLS0lcycKACVzOiB1c2VyICVsdSAocmVhbCAlbHUpLCBncm91cCAlbHUgKHJlYWwgJWx1KQoAJXNObyBydWxlIHRvIG1ha2UgdGFyZ2V0IGAlcyclcwAlc05vIHJ1bGUgdG8gbWFrZSB0YXJnZXQgYCVzJywgbmVlZGVkIGJ5IGAlcyclcwAlc1RoaXMgaXMgZnJlZSBzb2Z0d2FyZTsgc2VlIHRoZSBzb3VyY2UgZm9yIGNvcHlpbmcgY29uZGl0aW9ucy4KJXNUaGVyZSBpcyBOTyB3YXJyYW50eTsgbm90IGV2ZW4gZm9yIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBCiVzUEFSVElDVUxBUiBQVVJQT1NFLgoAJXNbJXVdOiBFbnRlcmluZyBkaXJlY3RvcnkgYCVzJwoAJXNbJXVdOiBMZWF2aW5nIGRpcmVjdG9yeSBgJXMnCgAqKiogQXJjaGl2ZSBtZW1iZXIgYCVzJyBtYXkgYmUgYm9ndXM7IG5vdCBkZWxldGVkACoqKiBCcmVhay4KACoqKiBEZWxldGluZyBmaWxlIGAlcycAKioqIERlbGV0aW5nIGludGVybWVkaWF0ZSBmaWxlIGAlcycAKioqIFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4AKioqIFdhcm5pbmc6IC5MT1dfUkVTT0xVVElPTl9USU1FIGZpbGUgYCVzJyBoYXMgYSBoaWdoIHJlc29sdXRpb24gdGltZSBzdGFtcAAqKiogWyVzXSBBcmNoaXZlIG1lbWJlciBgJXMnIG1heSBiZSBib2d1czsgbm90IGRlbGV0ZWQAKioqIFslc10gRGVsZXRpbmcgZmlsZSBgJXMnACoqKiBbJXNdIEVycm9yICVkACoqKiBbJXNdIEVycm9yIDB4JXgAKioqIFslc10gRXJyb3IgMHgleCAoaWdub3JlZCkALXdhcm5pbmcsIENUUkwtWSB3aWxsIGxlYXZlIHN1Yi1wcm9jZXNzKGVzKSBhcm91bmQuCgAtd2FybmluZywgeW91IG1heSBoYXZlIHRvIHJlLWVuYWJsZSBDVFJMLVkgaGFuZGxpbmcgZnJvbSBEQ0wuCgAuICBTdG9wLgoALkxJQlBBVFRFUk5TIGVsZW1lbnQgYCVzJyBpcyBub3QgYSBwYXR0ZXJuADsgdXNpbmcgVlBBVEggbmFtZSBgJXMnAEFib3J0ZWQAQWxhcm0gY2xvY2sAQXZvaWRpbmcgaW1wbGljaXQgcnVsZSByZWN1cnNpb24uCgBCVUc6IG51bV9wYXR0ZXJuX3J1bGVzIHdyb25nISAgJXUgIT0gJXUAQlVJTFRJTiBDRCAlcwoAQlVJTFRJTiBSTSAlcwoAQlVJTFRJTiBbJXNdWyVzXQoAQmFkIHN5c3RlbSBjYWxsAEJyb2tlbiBwaXBlAEJ1cyBlcnJvcgBDUFUgdGltZSBsaW1pdCBleGNlZWRlZABDaGlsZCBhY2Nlc3MAQ2hpbGQgZXhpdGVkAENpcmN1bGFyICVzIDwtICVzIGRlcGVuZGVuY3kgZHJvcHBlZC4AQ2xlYW5pbmcgdXAgdGVtcCBiYXRjaCBmaWxlICVzCgBDbGVhbmluZyB1cCB0ZW1wb3JhcnkgYmF0Y2ggZmlsZSAlcwoAQ29sbGlzaW9ucz0lbGQvJWxkPSUuMGYlJQBDb21tYW5kcyBmb3IgYCVzJyB3aWxsIGJlIGlnbm9yZWQgaW4gZmF2b3Igb2YgdGhvc2UgZm9yIGAlcycuAENvbW1hbmRzIGZvciBmaWxlIGAlcycgd2VyZSBmb3VuZCBieSBpbXBsaWNpdCBydWxlIHNlYXJjaCwAQ29tbWFuZHMgb2YgYCVzJyBhcmUgYmVpbmcgcnVuLgoAQ29tbWFuZHMgd2VyZSBzcGVjaWZpZWQgZm9yIGZpbGUgYCVzJyBhdCAlczolbHUsAENvbnNpZGVyaW5nIHRhcmdldCBmaWxlIGAlcycuCgBDb250aW51ZWQAQ291bGRuJ3QgY2hhbmdlIGJhY2sgdG8gb3JpZ2luYWwgZGlyZWN0b3J5LgBDcmVhdGluZyB0ZW1wb3JhcnkgYmF0Y2ggZmlsZSAlcwoAQ3VycmVudCB0aW1lAEN1c3RvbXMgd29uJ3QgZXhwb3J0OiAlcwoARGFuZ2VyIHNpZ25hbABFTVQgdHJhcABFcnJvciBzcGF3bmluZywgJWQKAEVycm9yLCBlbXB0eSBjb21tYW5kCgBFeGVjdXRpbmcgJXMgaW5zdGVhZAoARXh0cmFuZW91cyB0ZXh0IGFmdGVyIGAlcycgZGlyZWN0aXZlAEV4dHJhbmVvdXMgdGV4dCBhZnRlciBgZW5kZWYnIGRpcmVjdGl2ZQBGYWlsZWQgdG8gcmVtYWtlIG1ha2VmaWxlIGAlcycuAEZhaWxlZCB0byByZW1ha2UgdGFyZ2V0IGZpbGUgYCVzJy4KAEZpbGUgYCVzJyBkb2VzIG5vdCBleGlzdC4KAEZpbGUgYCVzJyB3YXMgY29uc2lkZXJlZCBhbHJlYWR5LgoARmlsZSBzaXplIGxpbWl0IGV4Y2VlZGVkAEZpbmlzaGVkIHByZXJlcXVpc2l0ZXMgb2YgdGFyZ2V0IGZpbGUgYCVzJy4KAEZpbmlzaGVkIHVwZGF0aW5nIGZpbGUgYCVzJy4KAEZsb2F0aW5nIHBvaW50IGNvLXByb2Nlc3NvciBub3QgYXZhaWxhYmxlAEZsb2F0aW5nIHBvaW50IGV4Y2VwdGlvbgBGb3VuZCBhbiBpbXBsaWNpdCBydWxlIGZvciBgJXMnLgoARm91bmQgcHJlcmVxdWlzaXRlIGAlcycgYXMgVlBBVEggYCVzJwoAR2l2aW5nIHVwIG9uIHRhcmdldCBmaWxlIGAlcycuCgBIYW5ndXAASS9PIHBvc3NpYmxlAElPVCB0cmFwAElsbGVnYWwgSW5zdHJ1Y3Rpb24ASW5jbHVkZWQgbWFrZWZpbGUgYCVzJyB3YXMgbm90IGZvdW5kLgBJbmZvcm1hdGlvbiByZXF1ZXN0AEluaXRpYWxpemVkIGFjY2VzcwBJbnRlcnJ1cHQAS2lsbGVkAExpdmUgY2hpbGQgMHglMDhseCAoJXMpIFBJRCAlbGQgJXMKAExvYWQ9JWxkLyVsZD0lLjBmJSUsIABMb29raW5nIGZvciBhIHJ1bGUgd2l0aCBpbnRlcm1lZGlhdGUgZmlsZSBgJXMnLgoATG9va2luZyBmb3IgYW4gaW1wbGljaXQgcnVsZSBmb3IgYCVzJy4KAExvb2tpbmcgZm9yIGFyY2hpdmUtbWVtYmVyIGltcGxpY2l0IHJ1bGUgZm9yIGAlcycuCgBNYWtlIGFjY2VzcwBNYWtlZmlsZSBgJXMnIG1pZ2h0IGxvb3A7IG5vdCByZW1ha2luZyBpdC4KAE1ha2VmaWxlIGAlcycgd2FzIG5vdCBmb3VuZABNYWtlZmlsZSBmcm9tIHN0YW5kYXJkIGlucHV0IHNwZWNpZmllZCB0d2ljZS4ATWFraW5nIGAlcycgZHVlIHRvIGFsd2F5cy1tYWtlIGZsYWcuCgBNZW1iZXIgYCVzJyVzOiAlbGQgYnl0ZXMgYXQgJWxkICglbGQpLgoATXVzdCByZW1ha2UgdGFyZ2V0IGAlcycuCgBObwBObyBjb21tYW5kcyBmb3IgYCVzJyBhbmQgbm8gcHJlcmVxdWlzaXRlcyBhY3R1YWxseSBjaGFuZ2VkLgoATm8gaW1wbGljaXQgcnVsZSBmb3VuZCBmb3IgYCVzJy4KAE5vIG5lZWQgdG8gcmVtYWtlIHRhcmdldCBgJXMnAE5vIHRhcmdldHMATm8gdGFyZ2V0cyBzcGVjaWZpZWQgYW5kIG5vIG1ha2VmaWxlIGZvdW5kAE5vdGhpbmcgdG8gYmUgZG9uZSBmb3IgYCVzJy4AT2J0YWluZWQgdG9rZW4gZm9yIGNoaWxkIDB4JTA4bHggKCVzKS4KAE9wdGlvbnM6CgBQYXJhbGxlbCBqb2JzICgtaikgYXJlIG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBwbGF0Zm9ybS4AUG93ZXIgZmFpbHVyZQBQcmVyZXF1aXNpdGUgYCVzJyBpcyBuZXdlciB0aGFuIHRhcmdldCBgJXMnLgoAUHJlcmVxdWlzaXRlIGAlcycgaXMgb2xkZXIgdGhhbiB0YXJnZXQgYCVzJy4KAFByZXJlcXVpc2l0ZSBgJXMnIGlzIG9yZGVyLW9ubHkgZm9yIHRhcmdldCBgJXMnLgoAUHJlcmVxdWlzaXRlIGAlcycgb2YgdGFyZ2V0IGAlcycgZG9lcyBub3QgZXhpc3QuCgBQcm9maWxpbmcgdGltZXIgZXhwaXJlZABQcnVuaW5nIGZpbGUgYCVzJy4KAFB1dHRpbmcgY2hpbGQgMHglMDhseCAoJXMpIFBJRCAlbGQlcyBvbiB0aGUgY2hhaW4uCgBRdWl0AFJlYWRpbmcgbWFrZWZpbGUgYCVzJwBSZWFkaW5nIG1ha2VmaWxlcy4uLgoAUmVhcGluZyBsb3NpbmcgY2hpbGQgMHglMDhseCBQSUQgJWxkICVzCgBSZWFwaW5nIHdpbm5pbmcgY2hpbGQgMHglMDhseCBQSUQgJWxkICVzCgBSZWNlbnRseSB0cmllZCBhbmQgZmFpbGVkIHRvIHVwZGF0ZSBmaWxlIGAlcycuCgBSZWN1cnNpdmUgdmFyaWFibGUgYCVzJyByZWZlcmVuY2VzIGl0c2VsZiAoZXZlbnR1YWxseSkAUmVkaXJlY3RlZCBlcnJvciB0byAlcwoAUmVkaXJlY3RlZCBpbnB1dCBmcm9tICVzCgBSZWRpcmVjdGVkIG91dHB1dCB0byAlcwoAUmVoYXNoPSVkLCAAUmVqZWN0aW5nIGltcG9zc2libGUgaW1wbGljaXQgcHJlcmVxdWlzaXRlIGAlcycuCgBSZWplY3RpbmcgaW1wb3NzaWJsZSBydWxlIHByZXJlcXVpc2l0ZSBgJXMnLgoAUmVsZWFzZWQgdG9rZW4gZm9yIGNoaWxkIDB4JTA4bHggKCVzKS4KAFJlbW92aW5nIGNoaWxkIDB4JTA4bHggUElEICVsZCVzIGZyb20gY2hhaW4uCgBSZW1vdmluZyBpbnRlcm1lZGlhdGUgZmlsZXMuLi4KAFJlcG9ydCBidWdzIHRvIDxidWctbWFrZUBnbnUub3JnPgoAUmVzZXR0aW5nIHRvIHNpbmdsZSBqb2IgKC1qMSkgbW9kZS4AUmVzb3VyY2UgbG9zdABTSUdQSE9ORQBTSUdXSU5EAFNlZ21lbnRhdGlvbiBmYXVsdABTdGlsbCB1cGRhdGluZyBmaWxlIGAlcycuCgBTdG9wcGVkAFN0b3BwZWQgKHNpZ25hbCkAU3RvcHBlZCAodHR5IGlucHV0KQBTdG9wcGVkICh0dHkgb3V0cHV0KQBTdWNjZXNzZnVsbHkgcmVtYWRlIHRhcmdldCBmaWxlIGAlcycuCgBUYXJnZXQgYCVzJyBpcyBkb3VibGUtY29sb24gYW5kIGhhcyBubyBwcmVyZXF1aXNpdGVzLgoAVGFyZ2V0IGAlcycgbm90IHJlbWFkZSBiZWNhdXNlIG9mIGVycm9ycy4AVGFyZ2V0IGZpbGUgYCVzJyBuZWVkcyByZW1hZGUgdW5kZXIgLXEuCgBUZXJtaW5hdGVkAFRoZSBwcmVyZXF1aXNpdGVzIG9mIGAlcycgYXJlIGJlaW5nIG1hZGUuCgBUcmFjZS9icmVha3BvaW50IHRyYXAAVHJ5aW5nIGltcGxpY2l0IHByZXJlcXVpc2l0ZSBgJXMnLgoAVHJ5aW5nIHBhdHRlcm4gcnVsZSB3aXRoIHN0ZW0gYCUuKnMnLgoAVHJ5aW5nIHJ1bGUgcHJlcmVxdWlzaXRlIGAlcycuCgBVbmtub3duIGJ1aWx0aW4gY29tbWFuZCAnJXMnCgBVbmtub3duIGVycm9yICVkAFVwZGF0aW5nIGdvYWwgdGFyZ2V0cy4uLi4KAFVwZGF0aW5nIG1ha2VmaWxlcy4uLi4KAFVyZ2VudCBJL08gY29uZGl0aW9uAFVzYWdlOiAlcyBbb3B0aW9uc10gW3RhcmdldF0gLi4uCgBVc2VyIGFjY2VzcwBVc2VyIGRlZmluZWQgc2lnbmFsIDEAVXNlciBkZWZpbmVkIHNpZ25hbCAyAFVzaW5nIGRlZmF1bHQgY29tbWFuZHMgZm9yIGAlcycuCgBWaXJ0dWFsIHRpbWVyIGV4cGlyZWQAV2FybmluZzogRW1wdHkgcmVkaXJlY3Rpb24KAFdhcm5pbmc6IEZpbGUgYCVzJyBoYXMgbW9kaWZpY2F0aW9uIHRpbWUgJS4yZyBzIGluIHRoZSBmdXR1cmUAV2FybmluZzogRmlsZSBgJXMnIGhhcyBtb2RpZmljYXRpb24gdGltZSBpbiB0aGUgZnV0dXJlAFdpbmRvdyBjaGFuZ2VkAFslc10gRXJyb3IgJWQgKGlnbm9yZWQpAGAlcycgaXMgdXAgdG8gZGF0ZS4AYG92ZXJyaWRlJyBkaXJlY3RpdmUAYXR0ZW1wdCB0byB1c2UgdW5zdXBwb3J0ZWQgZmVhdHVyZTogYCVzJwBhdXRvbWF0aWMAYnV0IGAlcycgaXMgbm93IGNvbnNpZGVyZWQgdGhlIHNhbWUgZmlsZSBhcyBgJXMnLgBjYW4ndCBhbGxvY2F0ZSAlbGQgYnl0ZXMgZm9yIGhhc2ggdGFibGU6IG1lbW9yeSBleGhhdXN0ZWQAY2FuJ3QgcmVuYW1lIGRvdWJsZS1jb2xvbiBgJXMnIHRvIHNpbmdsZS1jb2xvbiBgJXMnAGNhbid0IHJlbmFtZSBzaW5nbGUtY29sb24gYCVzJyB0byBkb3VibGUtY29sb24gYCVzJwBjYW5ub3QgZW5mb3JjZSBsb2FkIGxpbWl0OiAAY2Fubm90IGVuZm9yY2UgbG9hZCBsaW1pdHMgb24gdGhpcyBvcGVyYXRpbmcgc3lzdGVtAGNvbW1hbmQgbGluZQBjb21tYW5kcyBjb21tZW5jZSBiZWZvcmUgZmlyc3QgdGFyZ2V0AGNyZWF0aW5nIGpvYnMgcGlwZQBkZWZhdWx0AGRvbmUgc2xlZXAoMzApLiBDb250aW51aW5nLgoAZHVwIGpvYnNlcnZlcgBlbXB0eSBgb3ZlcnJpZGUnIGRpcmVjdGl2ZQBlbXB0eSBzdHJpbmcgaW52YWxpZCBhcyBmaWxlIG5hbWUAZW1wdHkgdmFyaWFibGUgbmFtZQBlbnZpcm9ubWVudABlbnZpcm9ubWVudCB1bmRlciAtZQBleHRyYW5lb3VzIGAlcycAZXh0cmFuZW91cyBgZW5kZWYnAGZpbmRfYW5kX3NldF9zaGVsbCBwYXRoIHNlYXJjaCBzZXQgZGVmYXVsdF9zaGVsbCA9ICVzCgBmaW5kX2FuZF9zZXRfc2hlbGwgc2V0dGluZyBkZWZhdWx0X3NoZWxsID0gJXMKAGZpcnN0IGFyZ3VtZW50IHRvIGB3b3JkJyBmdW5jdGlvbiBtdXN0IGJlIGdyZWF0ZXIgdGhhbiAwAGZvcGVuICh0ZW1wb3JhcnkgZmlsZSkAZndyaXRlICh0ZW1wb3JhcnkgZmlsZSkAaW5pdCBqb2JzZXJ2ZXIgcGlwZQBpbnRlcm5hbCBlcnJvcjogYCVzJyBjb21tYW5kX3N0YXRlAGludGVybmFsIGVycm9yOiBpbnZhbGlkIC0tam9ic2VydmVyLWZkcyBzdHJpbmcgYCVzJwBpbnRlcm5hbCBlcnJvcjogbXVsdGlwbGUgLS1qb2JzZXJ2ZXItZmRzIG9wdGlvbnMAaW52YWxpZCBgb3ZlcnJpZGUnIGRpcmVjdGl2ZQBpbnZhbGlkIHN5bnRheCBpbiBjb25kaXRpb25hbABsYnIkaW5pX2NvbnRyb2wgZmFpbGVkIHdpdGggc3RhdHVzID0gJWQAbGJyJHNldF9tb2R1bGUgZmFpbGVkIHRvIGV4dHJhY3QgbW9kdWxlIGluZm8sIHN0YXR1cyA9ICVkAG1ha2VmaWxlAG1pc3NpbmcgYGVuZGVmJywgdW50ZXJtaW5hdGVkIGBkZWZpbmUnAG1pc3NpbmcgYGVuZGlmJwBtaXNzaW5nIHJ1bGUgYmVmb3JlIGNvbW1hbmRzAG1pc3Npbmcgc2VwYXJhdG9yJXMAbWlzc2luZyB0YXJnZXQgcGF0dGVybgBtaXhlZCBpbXBsaWNpdCBhbmQgbm9ybWFsIHJ1bGVzAG1peGVkIGltcGxpY2l0IGFuZCBzdGF0aWMgcGF0dGVybiBydWxlcwBtdWx0aXBsZSB0YXJnZXQgcGF0dGVybnMAbm8Abm9uLW51bWVyaWMgZmlyc3QgYXJndW1lbnQgdG8gYHdvcmQnIGZ1bmN0aW9uAG5vbi1udW1lcmljIGZpcnN0IGFyZ3VtZW50IHRvIGB3b3JkbGlzdCcgZnVuY3Rpb24Abm9uLW51bWVyaWMgc2Vjb25kIGFyZ3VtZW50IHRvIGB3b3JkbGlzdCcgZnVuY3Rpb24Ab25seSBvbmUgYGVsc2UnIHBlciBjb25kaXRpb25hbAByZWFkIGpvYnMgcGlwZQBzeXMkc2VhcmNoIGZhaWxlZCB3aXRoICVkCgB0YXJnZXQgYCVzJyBkb2Vzbid0IG1hdGNoIHRoZSB0YXJnZXQgcGF0dGVybgB0YXJnZXQgYCVzJyBnaXZlbiBtb3JlIHRoYW4gb25jZSBpbiB0aGUgc2FtZSBydWxlLgB0YXJnZXQgZmlsZSBgJXMnIGhhcyBib3RoIDogYW5kIDo6IGVudHJpZXMAdGFyZ2V0IHBhdHRlcm4gY29udGFpbnMgbm8gYCUlJwB0aGUgYC0lYycgb3B0aW9uIHJlcXVpcmVzIGEgcG9zaXRpdmUgaW50ZWdyYWwgYXJndW1lbnQAdG91Y2ggYXJjaGl2ZSBtZW1iZXIgaXMgbm90IGF2YWlsYWJsZSBvbiBWTVMAdG91Y2g6IEFyY2hpdmUgYCVzJyBkb2VzIG5vdCBleGlzdAB0b3VjaDogQmFkIHJldHVybiBjb2RlIGZyb20gYXJfbWVtYmVyX3RvdWNoIG9uIGAlcycAdG91Y2g6IE1lbWJlciBgJXMnIGRvZXMgbm90IGV4aXN0IGluIGAlcycAdG91Y2g6IGAlcycgaXMgbm90IGEgdmFsaWQgYXJjaGl2ZQB1bmFibGUgdG8gb3BlbiBsaWJyYXJ5IGAlcycgdG8gbG9va3VwIG1lbWJlciBgJXMnAHVua25vd24gZGVidWcgbGV2ZWwgc3BlY2lmaWNhdGlvbiBgJXMnAHVua25vd24gc2lnbmFsAHVubGluayAodGVtcG9yYXJ5IGZpbGUpOiAAdW50ZXJtaW5hdGVkIGNhbGwgdG8gZnVuY3Rpb24gYCVzJzogbWlzc2luZyBgJWMnAHVudGVybWluYXRlZCB2YXJpYWJsZSByZWZlcmVuY2UAdmlydHVhbCBtZW1vcnkgZXhoYXVzdGVkAHdhcm5pbmc6ICBDbG9jayBza2V3IGRldGVjdGVkLiAgWW91ciBidWlsZCBtYXkgYmUgaW5jb21wbGV0ZS4Ad2FybmluZzogLWpOIGZvcmNlZCBpbiBzdWJtYWtlOiBkaXNhYmxpbmcgam9ic2VydmVyIG1vZGUuAHdhcm5pbmc6IE5VTCBjaGFyYWN0ZXIgc2VlbjsgcmVzdCBvZiBsaW5lIGlnbm9yZWQAd2FybmluZzogaWdub3Jpbmcgb2xkIGNvbW1hbmRzIGZvciB0YXJnZXQgYCVzJwB3YXJuaW5nOiBqb2JzZXJ2ZXIgdW5hdmFpbGFibGU6IHVzaW5nIC1qMS4gIEFkZCBgKycgdG8gcGFyZW50IG1ha2UgcnVsZS4Ad2FybmluZzogb3ZlcnJpZGluZyBjb21tYW5kcyBmb3IgdGFyZ2V0IGAlcycAd2FybmluZzogdW5kZWZpbmVkIHZhcmlhYmxlIGAlLipzJwB3aW5kb3dzMzJfb3BlbnBpcGUgKCk6IHByb2Nlc3NfaW5pdF9mZCgpIGZhaWxlZAoAd3JpdGUgam9ic2VydmVyAFByb2plY3QtSWQtVmVyc2lvbjogbWFrZSAzLjgwClJlcG9ydC1Nc2dpZC1CdWdzLVRvOiBidWctbWFrZUBnbnUub3JnClBPVC1DcmVhdGlvbi1EYXRlOiAyMDA2LTA0LTAxIDAxOjQwLTA1MDAKUE8tUmV2aXNpb24tRGF0ZTogMjAwMy0xMC0xMiAxODowMSswMjAwCkxhc3QtVHJhbnNsYXRvcjogSHJ2b2plIE5pa3NpYyA8aG5pa3NpY0B4ZW1hY3Mub3JnPgpMYW5ndWFnZS1UZWFtOiBDcm9hdGlhbiA8bG9rYWxpemFjaWphQGxpbnV4LmhyPgpNSU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9aXNvLTg4NTktMgpDb250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0CgAKIyAldSBgdnBhdGgnIHN0YXphIHphIHByZXRyYb5pdmFuamUuCgAKIyAldSBpbXBsaWNpdG5paCBwcm9waXNhLCAldQAKIyAldSB1em9yY2ltYSBzdm9qc3R2ZW5paCB2cmlqZWRub3N0aSB2YXJpamFibGkACiMgRGlyZWt0b3JpamkKAAojIFNwaXNpAAojIEtyYWogTWFrZW92ZSBiYXplIG5hICVzCgAKIyBPcOZhIChpeiB2YXJpamFibGUgYFZQQVRIJykgc3RhemEgemEgcHJldHJhvml2YW5qZToKIyAACiMgSW1wbGljaXRuaSBQcm9waXNpAAojIE1ha2VvdmEgYmF6YSwgaXNwaXNhbmEgbmEgJXMACiMgTmVtYSBvcOZlIChpeiB2YXJpamFibGUgYFZQQVRIJykgc3RhemUgemEgcHJldHJhvml2YW5qZS4ACiMgTmVtYSBpbXBsaWNpdG5paCBwcm9waXNhLgAKIyBOZW1hIHV6b3JjaW1hIHN2b2pzdHZlbmloIHZyaWplZG5vc3RpIHZhcmlqYWJsaS4ACiMgVlBBVEggc3RhemUgemEgcHJldHJhvml2YW5qZQoACiMgVmFyaWphYmxlCgAKIyBzdGF0aXN0aWtlIGhhc2ggdGFibGljZSBzcGlzYQojIAAKUHJlYnJvamFvICVkIGFyZ3VtZW5hdGEgdSBuZXVzcGplbG9tIHBva3JldGFuanUKAApQcm9ncmFtIHNhc3RhdmxqZW4gemEgJXMKAApQcm9ncmFtIHNhc3RhdmxqZW4gemEgJXMgKCVzKQoAICAtLWRlYnVnWz1GTEFHT1ZJXSAgICAgICAgICAgICBJc3BpuWkgcmF6bmUgdnJzdGUgaW5mb3JtYWNpamEgemEgZGVidWdpcmFuamUuCgAgIC0tbm8tcHJpbnQtZGlyZWN0b3J5ICAgICAgICBJc2tsanXoaSAtdywg6GFrIGkgYWtvIGplIGltcGxpY2l0bm8gdWtsanXoZW4uCgAgIC0td2Fybi11bmRlZmluZWQtdmFyaWFibGVzICBVcG96b3JpIGthZCBzZSByZWZlcmVuY2lyYSBuZWRlZmluaXJhbmEgdmFyaWphYmxhLgoAICAtQiwgLS1hbHdheXMtbWFrZSAgICAgICAgICAgQmV6dXZqZXRubyBwcm9penZlZGkgc3ZlIG1ldGUuCgAgIC1DIERJUkVDVE9SWSwgLS1kaXJlY3Rvcnk9RElSRUNUT1JZCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFByaWpl8GkgdSBESVJFS1RPUklKIHByaWplIG5vILl0byBpuXRhIG9iYXZpuS4KACAgLUkgRElSRUtUT1JJSiwgLS1pbmNsdWRlLWRpcj1ESVJFS1RPUklKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFBvdHJhvmkgdSBESVJFS1RPUklKVSB1a2xqdehlbmUgbWFrZWZpbGVvdmUuCgAgIC1SLCAtLW5vLWJ1aWx0aW4tdmFyaWFibGVzICBPbmVtb2d15mkgdWdyYfBlbmUgdnJpamVkbm9zdGkgdmFyaWphYmxpLgoAICAtUywgLS1uby1rZWVwLWdvaW5nLCAtLXN0b3AKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSXNrbGp16HVqZSAtay4KACAgLVcgU1BJUywgLS13aGF0LWlmPVNQSVMsIC0tbmV3LWZpbGU9U1BJUywgLS1hc3N1bWUtbmV3PVNQSVMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU21hdHJhaiBTUElTIGJlc2tvbmHobm8gbm92aW0uCgAgIC1iLCAtbSAgICAgICAgICAgICAgICAgICAgICBJZ25vcmlyYSBzZSB6Ym9nIGtvbXBhdGliaWxub3N0aQoAICAtZCAgICAgICAgICAgICAgICAgICAgICAgICAgSXNwablpIHB1bm8gcG9kYXRha2EgemEgZGVidWdpcmFuamUuCgAgIC1lLCAtLWVudmlyb25tZW50LW92ZXJyaWRlcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWYXJpamFibGUgaXogb2tvbGluZSBpbWFqdSB2ZeZ1IHZhvm5vc3Qgb2QKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFrZWZpbGVvdmEuCgAgIC1mIFNQSVMsIC0tZmlsZT1TUElTLCAtLW1ha2VmaWxlPVNQSVMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgUHJv6Gl0YWogU1BJUyBrYW8gbWFrZWZpbGUuCgAgIC1oLCAtLWhlbHAgICAgICAgICAgICAgICAgICBJc3BpuWkgb3Z1IHBvcnVrdSBpIGl6YfBpLgoAICAtaSwgLS1pZ25vcmUtZXJyb3JzICAgICAgICAgWmFuZW1hcmkgZ3JluWtlIG9kIG5hcmVkYmkuCgAgIC1qIFtOXSwgLS1qb2JzWz1OXSAgICAgICAgICBEb3B1c3RpIE4gaXN0b3ZyZW1lbmloIHBvc2xvdmE7IGJleiBhcmd1bWVudGEKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWggZG9wdXN0aSBiZXNrb25h6G5vLgoAICAtaywgLS1rZWVwLWdvaW5nICAgICAgICAgICAgTmFzdGF2aSBzIHJhZG9tIGFrbyBzZSBuZWtlIG1ldGUgbmUgbW9ndSBpenJhZGl0aS4KACAgLWwgW05dLCAtLWxvYWQtYXZlcmFnZVs9Tl0sIC0tbWF4LWxvYWRbPU5dCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5lIHBva3Jl5mkgdmm5ZXN0cnVrZSBwb3Nsb3ZlLCBvc2ltIGFrbyBwcmkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0ZXJl5mVuanUgaXNwb2QgTi4KACAgLW4sIC0tanVzdC1wcmludCwgLS1kcnktcnVuLCAtLXJlY29uCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5lbW9qIHphcHJhdm8gcG9rcmVudXRpIG5pamVkbnUgbmFyZWRidTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2FtbyBpaCBpc3BpuWkuCgAgIC1vIFNQSVMsIC0tb2xkLWZpbGU9U1BJUywgLS1hc3N1bWUtb2xkPVNQSVMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU21hdHJhaiBkYSBqZSBTUElTIHZybG8gc3RhciBpIG5lbW9qIGdhCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvbm92byBuYXByYXZpdGkuCgAgIC1wLCAtLXByaW50LWRhdGEtYmFzZSAgICAgICBJc3BpuWkgbWFrZW92dSBpbnRlcm51IGJhenUuCgAgIC1xLCAtLXF1ZXN0aW9uICAgICAgICAgICAgICBOZSBwb2tyZeZpIG5hcmVkYmU7IGl6bGF6bmkgc3RhdHVzIG96bmHoYXZhCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGplIGxpIHN2ZSBhvnVyaXJhbm8uCgAgIC1yLCAtLW5vLWJ1aWx0aW4tcnVsZXMgICAgICBPbmVtb2d15mkgdWdyYfBlbmUgaW1wbGljaXRuZSBwcm9waXNlLgoAICAtcywgLS1zaWxlbnQsIC0tcXVpZXQgICAgICAgTmUgaXNwaXN1aiBuYXJlZGJlLgoAICAtdCwgLS10b3VjaCAgICAgICAgICAgICAgICAgRG9kaXJuaSBtZXRlIHVtamVzdG8gZGEgaWggcG9ub3ZvIGl6cmHwdWpluS4KACAgLXYsIC0tdmVyc2lvbiAgICAgICAgICAgICAgIElzcGm5aSB2ZXJ6aWp1IG1ha2VhIGkgaXph8GkuCgAgIC13LCAtLXByaW50LWRpcmVjdG9yeSAgICAgICBJc3BpuWkgdHJlbnV0bmkgZGlyZWt0b3Jpai4KACAgRGF0dW0gJXMAICBJZ25vcmlyYW0gVlBBVEggaW1lbmEgYCVzJy4KACAgdWlkID0gJWQsIGdpZCA9ICVkLCBtb2RlID0gMCVvLgoAICh1Z3Jh8GVubyk6ACAoaXpiYehlbiBjb3JlKQAgKGplc3RlIGxpIG1pc2xpbGkgbmEgVEFCIHVtamVzdG8gOCByYXptYWthPykAIChuaWplIHZhvm5vKQAgKGl6IGAlcycsIHJlZGFrICVsdSk6ACAoaXogYCVzJywgcmVkYWsgJWx1KToKACAoaW1lIGplIG1vvmRhIG9kcmV6YW5vKQAgKG5lbWEgcG9kcmF6dW1pamV2YW5vZyBjaWxqYSkAIChiZXogZWtzcGFuemlqZSB+KQAgKHVkYWxqZW4pACAoc3RhemEgemEgcHJldHJhvml2YW5qZSkAIHNwaXMsIAAgbmVtb2d15m5vc3QAIG5lbW9ndeZub3N0aSB1ICVsdSBkaXJla3RvcmlqYS4KACBkbyBzYWQuACB6YXZyuW5pLgAjICBUYWtv8GVyIHByb2l6dm9kaToAIyAgTWV0YSBuYSBrb21hbmRub2ogbGluaWppLgAjICBOYXJlZGJlIGtvamUgc2UgdHJlbnV0bm8gaXp2crlhdmFqdSAoT1ZPIEpFIEJVRykuACMgIE92aXNub3N0aSBpem1l8HUgbmFyZWRiaSBrb2plIHNlIGl6dnK5YXZhanUgKE9WTyBKRSBCVUcpLgAjICBOaWplIGdhIHNlIGG+dXJpcmFsby4AIyAgU3BpcyBuZSBwb3N0b2ppLgAjICBTcGlzIGplIGG+dXJpcmFuLgAjICBTcGlzIG5pamUgYb51cmlyYW4uACMgIFNwaXMgamUgcG9zcmVkbmkgcHJlcmVrdml6aXQuACMgIFNwaXMgamUgdnJsbyBzdGFyLgAjICAgSW1wbGljaXRuYSBwcmV0cmFnYSBwcm9waXNhIGplIGl6dnK5ZW5hLgAjICBJbXBsaWNpdG5hIHByZXRyYWdhIHByb3Bpc2EgbmlqZSBpenZyuWVuYS4AIyAgS29yaWplbiBpbXBsaWNpdG5vZy9zdGF0aehrb2cgdXpvcmthOiBgJXMnCgAjICBOZWlzcHJhdm5hIHZyaWplZG5vc3QgdSBlbGVtZW50dSBgY29tbWFuZF9zdGF0ZSchACMgIE5laXNwcmF2bmEgdnJpamVkbm9zdCB1IGVsZW1lbnR1IGB1cGRhdGVfc3RhdHVzJyEAIyAgWmFkbmphIHByb21qZW5hICVzCgAjICBWcmlqZW1lIHByb21qZW5lIG5pa2FkYSBuaWplIHByb3ZqZXJlbm8uACMgIFRyZWJhIGdhIGG+dXJpcmF0aSAoLXEgamUgcG9zdGF2bGplbikuACMgIExhvm5hIG1ldGEgKHByZXJla3Zpeml0IG1ldGUgLlBIT05ZKS4AIyAgVnJpamVkYW4gc3BpcyAocHJlcmVrdml6aXQgbWV0ZSAuUFJFQ0lPVVMpLgAjICBVc3BqZblubyBhvnVyaXJhbi4AIyAgbmFyZWRiZSB6YSBpenZyuWF2YW5qZQAjICVzIChkZXZpY2UgJWQsIGlub2RlIFslZCwlZCwlZF0pOiAAIyAlcyAoZGV2aWNlICVkLCBpbm9kZSBbJWQsJWQsJWRdKTogbmlqZSBnYSBzZSBtb2dsbyBvdHZvcml0aS4KACMgJXMgKGRldmljZSAlbGQsIGlub2RlICVsZCk6IAAjICVzIChkZXZpY2UgJWxkLCBpbm9kZSAlbGQpOiBuaWplIGdhIHNlIG1vZ2xvIG90dm9yaXRpLgoAIyAlcyAodGlwa2EgJXMsIG10aW1lICVkKTogACMgJXMgKHRpcGthICVzLCBtdGltZSAlZCk6IG5pamUgZ2Egc2UgbW9nbG8gb3R2b3JpdGkuCgAjICVzOiBuZSBtb75lIHNlIHN0YXRhdGkuCgAjIE5lbWEgYHZwYXRoJyBzdGF6YSB6YSBwcmV0cmG+aXZhbmplLgAjIE5pamUgbWV0YToAIyBoYXNoIHRhYmxlIHN0YXRpc3Rpa2UgdmFyaWphYmxpOgoAJXMgKHJlZGFrICVkKSBMb7kga29udGVrc3QgbGp1c2tlICghdW5peHkgJiYgIWJhdGNoX21vZGVfc2hlbGwpCgAlcyBzZSB6YXVzdGF2bGphIG5hIDMwIHNla3VuZGkuLi4AJXMlczogJXMAJXM6ICVzACVzOiBOYXJlZGJhIG5pamUgbmHwZW5hACVzOiBVbGF6aW0gdSBkaXJla3RvcmlqIGAlcycKACVzOiBJemxhemltIGl6IGRpcmVrdG9yaWphIGAlcycKACVzOiBManVza2luIHByb2dyYW0gbmlqZSBuYfBlbgAlczogVnJlbWVuc2thIG96bmFrYSB2YW4gZ3JhbmljYTsgemFtamVuanVqZW0gcyAlcwAlczogbmVkb3B1uXRlbmEgb3BjaWphIC0tICVjCgAlczogbmVpc3ByYXZuYSBvcGNpamEgLS0gJWMKACVzOiBvcGNpamEgYCVjJXMnIG5lIGRvcHW5dGEgYXJndW1lbnQKACVzOiBvcGNpamEgYCVzJyBqZSB2abllem5h6G5hCgAlczogb3BjaWphIGAlcycgemFodGlqZXZhIGFyZ3VtZW50CgAlczogdXogb3BjaWp1IGAtLSVzJyBuZSBpZGUgYXJndW1lbnQKACVzOiBvcGNpamEgYC1XICVzJyBuZSBkb3B1uXRhIGFyZ3VtZW50CgAlczogb3BjaWphIGAtVyAlcycgamUgdmm5ZXpuYehuYQoAJXM6IG9wY2lqYSB0cmG+aSBhcmd1bWVudCAtLSAlYwoAJXM6IG5lcG96bmF0YSBvcGNpamEgYCVjJXMnCgAlczogbmVwb3puYXRhIG9wY2lqYSBgLS0lcycKACVzOiB1c2VyICVsdSAocmVhbCAlbHUpLCBncm91cCAlbHUgKHJlYWwgJWx1KQoAJXNOZW1hIHByb3Bpc2EgemEgaXpyYWR1IG1ldGUgYCVzJyVzACVzTmVtYSBwcm9waXNhIHphIGl6cmFkdSBtZXRlIGAlcycsIGtvamVnIHRyYb5pIGAlcyclcwAlc092YWogcHJvZ3JhbSBqZSBzbG9ib2RhbjsgdSBpenZvcm5vbSBrb2R1IG5hbGF6ZSBzZSB1dmpldGkga29waXJhbmphLgolc05lbWEgTklLQUtWT0cgamFtc3R2YSwg6GFrIG5pIHphIFBST0laVk9ETk9TVCBpbGkgVVBPVFJFQkxKSVZPU1QgWkEKJXNQT0pFRElOVSBTVlJIVS4KACVzWyV1XTogVWxhemltIHUgZGlyZWt0b3JpaiBgJXMnCgAlc1sldV06IEl6bGF6aW0gaXogZGlyZWt0b3JpamEgYCVzJwoAKioqIMhsYW4gYXJoaXZlICclcycgbW9nYW8gYmkgYml0aSBiZXp2ZXphbjsgbmlqZSBvYnJpc2FuACoqKiBQcmVraWQuCgAqKiogQnJpuWVtIHNwaXMgYCVzJwAqKiogQnJpuWVtIHBvc3JlZG5pIHNwaXMgYCVzJwAqKiog6GVrYW0gbmEgbmVkb3ZyuWVuZSBwb3Nsb3ZlLi4uLgAqKiogVXBvem9yZW5qZTogLkxPV19SRVNPTFVUSU9OX1RJTUUgc3BpcyBgJXMnIGltYSB2cmVtZW5za3Ugb3puYWt1IHZpc29rZSByZXpvbHVjaWplACoqKiBbJXNdIMhsYW4gYXJoaXZlICclcycgbW9nYW8gYmkgYml0aSBiZXp2ZXphbjsgbmlqZSBvYnJpc2FuACoqKiBbJXNdIEJyabllbSBzcGlzIGAlcycAKioqIFslc10gR3JluWthICVkACoqKiBbJXNdIEdyZblrYSAweCV4ACoqKiBbJXNdIEdyZblrYSAweCV4IChpZ25vcmlyYW5hKQAtdXBvem9yZW5qZSwgQ1RSTC1ZIOZlIG9zdGF2aXRpIHBvdHByb2NlcyhlKSBuYSC+aXZvdHUuCgAtdXBvem9yZW5qZSwgbW++ZGEg5mV0ZSBtb3JhdGkgcG9ub3ZvIG9tb2d15ml0aSBvYnJhZHUgQ1RSTC1ZIGl6IERDTC1hLgoALiAgWmF1c3RhdmkuCgBFbGVtZW50IC5MSUJQQVRURVJOUyBgJXMnIG5pamUgdXpvcmFrADsga29yaXN0aW0gVlBBVEggaW1lbmEgYCVzJwBPdGthemFuAEJ1ZGlsaWNhAEl6YmplZ2F2YW0gcmVrdXJ6aWp1IGltcGxpY2l0bm9nIHByb3Bpc2EuCgBCVUc6IHBvZ3JluWFuIG51bV9wYXR0ZXJuX3J1bGVzISAgJXUgIT0gJXUAVUdSQdBFTiBDRCAlcwoAVUdSQdBFTiBSTSAlcwoAVUdSQdBFTiBbJXNdWyVzXQoATmV2YWxqYW4gc2lzdGVtc2tpIHBveml2AFByZWtpbnV0IGthbmFsAFNhYmlybmnoa2EgZ3JluWthAHByZWtvcmHoZW5vIG9ncmFuaehlbmplIENQVSB2cmVtZW5hAFByaXN0dXAgZGpldGV0YQBEaWpldGUgaXphuWxvAEtydb5uYSBvdmlzbm9zdCAlcyA8LSAlcyBpc3B1uXRlbmEuAMhpc3RpbSBwcml2cmVtZW5pIGJhdGNoIHNwaXMgJXMKAMhpc3RpbSBwcml2cmVtZW5pIGJhdGNoIHNwaXMgJXMuCgBLb2xpemlqZT0lbGQvJWxkPSUuMGYlJQBOYXJlZGJlIHphIGAlcycgaWdub3JpcmF0IOZlIHNlIHUga29yaXN0IG9uaWggemEgYCVzJy4ATmFyZWRiZSB6YSBzcGlzIGAlcycgbmHwZW5lIHN1IGltcGxpY2l0bmltIHByZXRyYb5pdmFuamVtIHByb3Bpc2EsAE5hcmVkYmUgb2QgYCVzJyBzZSBpenZyuWF2YWp1LgoATmFyZWRiZSBzdSBuYXpuYehlbmUgemEgc3BpcyBgJXMnIG5hICVzOiVsdSwAVXppbWFtIHUgcmF6bWF0cmFuamUgc3BpcyBtZXR1IGAlcycuCgBOYXN0YXZsamVuAE5pc2FtIHNlIG1vZ2FvIHZyYXRpdGkgdSBwcnZvdG5pIGRpcmVrdG9yaWouAFN0dmFyYW0gcHJpdnJlbWVuaSBiYXRjaCBzcGlzICVzCgBUcmVudXRubyB2cmlqZW1lAEN1c3RvbXMgbmXmZSBla3Nwb3J0aXJhdGk6ICVzCgBTaWduYWwgemEgb3Bhc25vc3QARU1UIHphbWphAEdyZblrYSBwcmkgcG9rcmV0YW5qdSwgJWQKAEdyZblrYSwgcHJhem5hIG5hcmVkYmEKAFVtamVzdG8gdG9nYSwgaXp2crlhdmFtICVzCgBTdXZpuWFuIHRla3N0IG5ha29uIGRpcmVrdGl2ZSBgJXMnAFN1dmm5YW4gdGVrc3QgbmFrb24gZGlyZWt0aXZlIGBlbmRlZicATmlzYW0gdXNwaW8gcG9ub3ZvIGl6Z3JhZGl0aSBtYWtlZmlsZSBgJXMnLgBOaWplIHVzcGplbGEgcG9ub3ZuYSBpenJhZGEgc3Bpc2EgbWV0ZSBgJXMnLgoAU3BpcyBgJXMnIG5lIHBvc3RvamkuCgBTcGlzIGAlcycgdmXmIGplIGJpbyB1emV0IHUgcmF6bWF0cmFuamUuCgBQcmVrb3Jh6GVubyBvZ3JhbmnoZW5qZSB2ZWxp6GluZSBzcGlzYQBaYXZyuWVuaSBwcmVyZWt2aXppdGkgc3Bpc2EgbWV0ZSBgJXMnLgoAWmF2crlpbyBzIGG+dXJpcmFuamVtIHNwaXNhIGAlcycuCgBBcml0bWV0aehraSBrb3Byb2Nlc29yIG5pamUgZG9zdHVwYW4uAEl6bmlta2EgZmxvYXRpbmcgcG9pbnRhAE5huWFvIGltcGxpY2l0bmkgcHJvcGlzIHphIGAlcycuCgBOYblhbyBwcmVyZWt2aXppdCBgJXMnIGthbyBWUEFUSCBgJXMnCgBPZHVzdGFqZW0gb2Qgc3Bpc2EgbWV0ZSBgJXMnLgoASXpndWJsamVuYSB2ZXphAEkvTyBtb2d15gBJT1QgemFta2EATmVkb3B1uXRlbmEgaW5zdHJ1a2NpamEAVWtsanXoZW5pIG1ha2VmaWxlIGAlcycgbmUgbW++ZSBzZSBuYeZpLgBaYWh0amV2IHphIGluZm9ybWFjaWpvbQBJbmljaWphbGl6aXJhbiBwcmlzdHVwAFByZWtpZABVYmlqZW4Arml2byBkaWpldGUgMHglMDhseCAoJXMpIFBJRCAlbGQgJXMKAE9wdGVyZeZlbmplPSVsZC8lbGQ9JS4wZiUlLCAAVHJhvmltIHByb3BpcyBzIHBvc3JlZG5pbSBzcGlzb20gYCVzJy4KAFRyYb5pbSBpbXBsaWNpdG5pIHByb3BpcyB6YSBgJXMnLgoAVHJhvmltIGltcGxpY2l0bmkgcHJvcGlzIHphIGAlcycga29qaSBwcmlwYWRhIGVsZW1lbnR1IGFyaGl2ZS4KAE1ha2VvdiBwcmlzdHVwAE1ha2VmaWxlIGAlcycgYmkgbW9nYW8gdXBhc3RpIHUgcGV0bGp1OyBuZSBpemdyYfB1amVtIGdhIHBvbm92by4KAE1ha2VmaWxlIGAlcycgbmUgbW++ZSBzZSBuYeZpAE1ha2VmaWxlIHNhIHN0YW5kYXJkbm9nIHVsYXphIG5hdmVkZW4gZHZhcHV0LgBQcm9penZvZGltIGAlcycgemJvZyBvcGNpamUgYWx3YXlzLW1ha2UuCgDobGFuIGAlcyclczogJWxkIGJhanRvdmEgbmEgJWxkICglbGQpLgoATW9yYW0gcG9ub3ZvIGl6Z3JhZGl0aSBtZXR1IGAlcycuCgBOaWplZGFuAE5lbWEgbmFyZWRiaSB6YSBgJXMnLCBhIG5pamVkYW4gcHJlcmVrdml6aXQgbmlqZSBwcm9taWplbmplbi4KAE5pamVkYW4gaW1wbGljaXRuaSBwcm9waXMgbmlzYW0gbmG5YW8gemEgYCVzJy4KAE5lbWEgcG90cmViZSBwb25vdm8gaXpyYWRpdGkgbWV0dSBgJXMnAE5lbWEgbWV0YQBOaWplZG5hIG1ldGEgbmlqZSBuYXZlZGVuYSwgbml0aSBqZSBpamVkYW4gbWFrZWZpbGUgcHJvbmHwZW4ATmm5dGEgemEgbmFwcmF2aXRpIHphIGAlcycuAFByZXV6ZW8gdG9rZW4gemEgZGlqZXRlIDB4JTA4bHggKCVzKS4KAE9wY2lqZToKAFBhcmFsZWxuaSBwb3Nsb3ZpICgtaikgbmlzdSBwb2RyvmFuaSBuYSBvdm9qIHBsYXRmb3JtaS4ATmVzdGFsbyBzdHJ1amUAUHJlcmVrdml6aXQgYCVzJyBub3ZpamkgamUgb2QgbWV0ZSBgJXMnOgoAUHJlcmVrdml6aXQgYCVzJyBzdGFyaWppIGplIG9kIG1ldGUgYCVzJy4KAFByZXJla3Zpeml0IGAlcycgc2x1vmkgc2FtbyB6YSByZWRvc2xqZWQgcHJpIG1ldGkgYCVzJy4KAFByZXJla3Zpeml0IGAlcycgbWV0ZSBgJXMnIG5lIHBvc3RvamkuCgBQcm9mYWpsZXJza2EguXRvcGVyaWNhIGlzdGVrbGEAyGlzdGltIHNwaXMgYCVzJy4KAFNtamW5dGFtIGRpamV0ZSAweCUwOGx4ICglcykgUElEICVsZCVzIHUgbGFuYWMuCgBQcmVzdGFuYWsAyGl0YW0gbWFrZWZpbGUgYCVzJwDIaXRhbSBtYWtlZmlsZW92ZS4uLgoArmFuamVtIHByb21huWVubyBkaWpldGUgMHglMDhseCBQSUQgJWxkICVzCgCuYW5qZW0gdXNwamW5bm8gZGlqZXRlIDB4JTA4bHggUElEICVsZCAlcwoATmVkYXZubyBiZXp1c3BqZblubyBwb2t1uWFvIGG+dXJpcmF0aSBzcGlzIGAlcycKAFJla3Vyeml2bmEgdmFyaWphYmxhIGAlcycgcG9rYXp1amUgKG5hIGtyYWp1KSBuYSBzZWJlAFByZXVzbWplcmlvIGdyZblrZSB1ICVzCgBQcmV1c21qZXJpbyB1bGF6IGl6ICVzCgBQcmV1c21qZXJpbyBpemxheiB1ICVzCgBQcmVyYXNwb2RqZWxhPSVkLCAAT2RiYWN1amVtIG5lbW9ndeYgcHJlcmVrdml6aXQgYCVzJy4KAE9kYmFjdWplbSBuZW1vZ3XmZSBwcmF2aWxvIHByZXJla3Zpeml0YSBgJXMnLgoAT3RwdXN0aW8gdG9rZW4gemEgZGlqZXRlIDB4JTA4bHggKCVzKS4KAFVrbGFuamFtIGRpamV0ZSAweCUwOGx4IFBJRCAlbGQlcyBpeiBsYW5jYS4KAEJyabllbSBwb3NyZWRuZSBzcGlzZS4uLgoAVW/oZW5lIGdyZblrZSBwcmlqYXZpdGUgbmEgYWRyZXN1IDxidWctbWFrZUBnbnUub3JnPi4KAFJlc2V0aXJhbSBuYSBtb2QgamVkbm9nIHBvc2xhICgtajEpLgBJemd1YmxqZW4gcmVzdXJzAFNJR1BIT05FAFNJR1dJTkQAU2VnbWVudGFjaWpza2EgZ3JluWthAEpvuSB1dmlqZWsgYb51cmlyYW0gc3BpcyBgJXMnLgoAWmF1c3RhdmxqZW4AWmF1c3RhdmxqZW4gKHNpZ25hbG9tKQBaYXVzdGF2bGplbiAodW5vc29tIHMgVFRZLWphKQBaYXVzdGF2bGplbiAob3V0cHV0b20gcyBUVFktamEpAFVzcGpluW5vIHBvbm92bm8gaXpyYWRpbyBzcGlzIG1ldHUgYCVzJy4KAE1ldGEgYCVzJyBqZSBkdm90b+hrYSwgYSBuZW1hIHByZXJla3Zpeml0YS4KAE1ldGEgYCVzJyBuaWplIHBvbm92byBpenJh8GVuIHpib2cgZ3JluWFrYS4AU3BpcyBtZXRhIGAlcycgdHJlYmEgcG9ub3ZudSBpenJhZHUgemJvZyAtcS4KAFRlcm1pbmlyYW4AUHJlcmVrdml6aXRpIGAlcycgc3UgdSBpenJhZGkuCgBaYW1rYSB6YSBzbGlqZWQvcHJla2lkbnUgdG/oa3UAUG9rdblhdmFtIHMgaW1wbGljaXRuaW0gcHJlcmVrdml6aXRvbSBgJXMnLgoAUG9rdblhdmFtIHByb3BpcyB1em9ya2EgcyBrb3JpamVub20gYCUuKnMnLgoAUG9rdblhdmFtIHMgcHJvcGlzb20gcHJlcmVrdml6aXRhIGAlcycuCgBOZXBvem5hdGEgdWdyYfBlbmEgbmFyZWRiYSBgJXMnCgBOZXBvem5hdGEgZ3JluWthICVkAEG+dXJpcmFtIGNpbGpuZSBtZXRlLi4uLgoAQb51cmlyYW0gbWFrZWZpbGVvdmUuLi4uCgBIaXRubyBzdGFuamUgSS9PLWEAVXBvcmFiYTogJXMgW29wY2lqZV0gW21ldGFdIC4uLgoAS29yaXNuaehraSBwcmlzdHVwAEtvcmlzbmnoa2kgZGVmaW5pcmFuIHNpZ25hbCAxAEtvcmlzbmnoa2kgZGVmaW5pcmFuIHNpZ25hbCAyAEtvcmlzdGltIHBvZHJhenVtaWpldmFuZSBuYXJlZGJlIHphIGAlcycuCgBWaXJ0dWFsbmEguXRvcGVyaWNhIGlzdGVrbGEAVXBvem9yZW5qZTogUHJhem5vIHByZXVzbWplcmF2YW5qZQoAVXBvem9yZW5qZTogU3BpcyBgJXMnIGltYSB2cmlqZW1lIHByb21qZW5lICUuMmcgcyB1IGJ1ZHXmbm9zdGkAVXBvem9yZW5qZTogU3BpcyBgJXMnIGltYSB2cmlqZW1lIHByb21qZW5lIHUgYnVkdeZub3N0aQBQcm9taWplbmplbiBwcm96b3IAWyVzXSBHcmW5a2EgJWQgKGlnbm9yaXJhbmEpAGAlcycgamUgYb51cmlyYW4uAGRpcmVrdGl2YSBgb3ZlcnJpZGUnAHBva3W5YWoga29yabl0ZW5qYSBuZXBvZHK+YW5lIG1vZ3Xmbm9zdGk6IGAlcycAYXV0b21hdHNrbwBhbGkgYCVzJyBzZSBzYWRhIHNtYXRyYSBpc3RpbSBzcGlzb20ga2FvIGkgYCVzJy4AbmUgbW9ndSBhbG9jaXJhdGkgJWxkIGJhanRvdmEgemEgaGFzaCB0YWJsaWN1OyBtZW1vcmlqYSBpc2NycGxqZW5hAG5lIG1vZ3UgcHJlaW1lbm92YXRpIGAlcycgcyBkdmlqZSBkdm90b+hrZSB1IGAlcycgcyBqZWRub20gZHZvdG/oa29tAG5lIG1vZ3UgcHJlaW1lbm92YXRpIGAlcycgcyBqZWRub20gZHZvdG/oa29tIHUgYCVzJyBzIGR2aWplIGR2b3Rv6GtlAG5lIG1vZ3Ugc2lsb20gcHJpbWlqZW5pdGkgb2dyYW5p6GVuamUgbG9hZGE6IABuZSBtb2d1IHNpbG9tIHByaW1pamVuaXRpIG9ncmFuaehlbmplIGxvYWRhIG5hIG92b20gb3BlcmF0aXZub20gc3VzdGF2dQBrb21hbmRuYSBsaW5pamEAbmFyZWRiZSBwb+hpbmp1IHByaWplIHBydmUgbWV0ZQBrcmVpcmFtIHBpcGUgemEgcG9zYW8AcG9kcmF6dW1pamV2YW5vAGdvdG92IHNhIHNsZWVwKDMwKS4gIE5hc3RhdmxqYW0uCgBkdXAgam9ic2VydmVyAHByYXpuYSBkaXJla3RpdmEgYG92dmVycmlkZScAcHJhemFuIHN0cmluZyBuaWplIHZhbGphbiBuYXppdiBzcGlzYQBwcmF6bm8gaW1lIHZhcmlqYWJsZQBva29sabkAb2tvbGm5IHBvZCAtZQBzdXZpuWFuIGAlcycAc3V2ablhbiBgZW5kZWYnAGZpbmRfYW5kX3NldF9zaGVsbCBwcmV0cmFnYSBzdGF6ZSBwb3N0YXZsamFtIGRlZmF1bHRfc2hlbGwgPSAlcwoAZmluZF9hbmRfc2V0X3NoZWxsIHBvc3RhdmxqYW0gZGVmYXVsdF9zaGVsbCA9ICVzCgBwcnZpIGFyZ3VtZW50IGZ1bmtjaWplIGB3b3JkJyBtb3JhIGJpdGkgdmXmaSBvZCAwAGZvcGVuIChwcml2cmVtZW5pIHNwaXMpAGZ3cml0ZShwcml2cmVtZW5pIHNwaXMpAHByZXZlc3RpPwB1bnV0cmG5bmphIGdyZblrYTogYCVzJyBjb21tYW5kX3N0YXRlAGludGVybmEgZ3JluWthOiBuZWlzcHJhdmFuIC0tam9ic2VydmVyLWZkcyBzdHJpbmcgYCVzJwBpbnRlcm5hIGdyZblqYTogdmm5ZXN0cnVrbyBwb2phdmxqaXZhbmplIG9wY2lqZSAtLWpvYnNlcnZlci1mZHMAbmVpc3ByYXZuYSBkaXJla3RpdmEgYG92ZXJyaWRlJwBuZWlzcHJhdm5hIHNpbnRha3NhIHV2amV0YQBsYnIkaW5pX2NvbnRyb2wgbmlqZSB1c3BpbyBzYSBzdGF0dXNvbSA9ICVkAGxiciRzZXRfbW9kdWxlIG5pamUgaXpkdm9qaW8gaW5mb3JtYWNpamUgbyBtb2R1bHUsIHN0YXR1cyA9ICVkAG1ha2VmaWxlAG5lZG9zdGFqZSBgZW5kZWYnLCBuZWRvdnK5ZW4gYGRlZmluZScAbmVkb3N0YWplIGBlbmRpZicAbmVkb3N0YWplIHByb3BpcyBwcmlqZSBuYXJlZGJpAG5lZG9zdGFqdSBzZXBhcmF0b3JpLSVzAG5lZG9zdGFqZSB1em9yYWsgbWV0ZQBwb21pamW5YW5pIGltcGxpY2l0bmkgaSBub3JtYWxuaSBwcm9waXNpAHBvbWlqZblhbmkgaW1wbGljaXRuaSBpIHN0YXRp6GtpIHByb3Bpc2kgdXpvcmthAHZpuWVzdHJ1a2kgdXpvcmNpIG1ldGEAbmlqZWRuYQBwcnZpIGFyZ3VtZW50IGZ1bmtjaWplIGB3b3JkJyBuaWplIGJyb2oAZHJ1Z2kgYXJndW1lbnQgZnVua2NpamUgYHdvcmRsbGlzdCcgbmlqZSBicm9qAGRydWdpIGFydW1lbnQgZnVua2NpamUgYHdvcmRsaXN0JyBuaWplIGJyb2oAc2FtbyBqZWRhbiBgZWxzZScgcG8gdXZqZXR1AHJlYWQgam9icyBwaXBlAHN5cyRzZWFyY2ggamUgemF0YWppbGEgcyAlZAoAbWV0YSBgJXMnIG5lIG9kZ292YXJhIHV6b3JrdSBtZXRlAG1ldGEgYCVzJyB6YWRhbiB2abllIG5lZ28gamVkbm9tIHUgaXN0b20gcHJvcGlzdS4Ac3BpcyBtZXRhIGAlcycgaW1hIHVub3NlIGkga29kIDogaSBrb2QgOjoAdXpvcmFrIG1ldGUgbmUgc2Fkcr5pIGAlJScAb3BjaWphIGAtJWMnIHRyYb5pIHBveml0aXZhbiBjamVsb2Jyb2puaSBhcmd1bWVudAB0b3VjaCBkaWplbGEgYXJoaXZlIG5pamUgcmFwb2xvvml2IG5hIFZNUy11AHRvdWNoOiBBcmhpdmEgYCVzJyBuZSBwb3N0b2ppAHRvdWNoOiBOZWlzcHJhdmFuIHBvdnJhdG5pIGtvZCBpeiBhcl9tZW1iZXJfdG91Y2ggbmEgYCVzJwB0b3VjaDog6GxhbiBgJXMnIG5lIHBvc3RvamkgdSBgJXMnAHRvdWNoOiBgJXMnIG5pamUgdmFsamFuYSBhcmhpdmEAbmUgbW9ndSBvdHZvcml0aSBiaWJsaW90ZWt1IGAlcycgZGEgbmHwZW0g6GxhbiBgJXMnAG5lcG96bmF0YSBuYXpuYWthIG5pdm9hIGRlYnVnYSBgJXMnAG5lcG96bmF0IHNpZ25hbAB1bmxpbmsgKHByaXZyZW1lbmkgc3Bpcyk6IABuZWRvdnK5ZW4gcG96aXYgZnVua2NpamkgYCVzJzogbmVkb3N0YWplIGAlYycAbmVkb3ZyuWVuYSByZWZlcmVuY2EgbmEgdmFyaWphYmx1AHByaXZpZG5hIG1lbW9yaWphIHBvdHJvuWVuYQB1cG96b3JlbmplOiB1b+hlbmEgamUgbmVwcmF2aWxub3N0IHNhdGEuICBJemdyYWRuamEgYmkgbW9nbGEgYml0aSBuZWRvdnK5ZW5hLgB1cG96b3JlbmplOiAtak4gc2UgZm9yc2lyYSB1IHBvZC1tYWtldTogb25lbW9ndeZ1amVtIGpvYnNlcnZlciBtb2QuAHVwb3pvcmVuamU6IE5VTCB6bmFrIHVv6GVuOyBvc3RhdGFrIHJldGthIHNlIHphbmVtYXJ1amUAdXBvem9yZW5qZTogaWdub3JpcmFtIHN0YXJlIG5hcmVkYmUgemEgbWV0dSBgJXMnAHVwb3pvcmVuamU6IGpvYnNlcnZlciBuZWRvc3R1cGFuOiBrb3Jpc3RpbSAtajEuICBEb2RhaiBgKycgbmEgcm9kaXRlbGpldiBtYWtlIHByb3Bpcy4AdXBvem9yZW5qZTogcG9uabl0YXZhbSBwb3N0b2pl5mUgbmFyZWRiZSB6YSBtZXR1IGAlcycAdXBvem9yZW5qZTogbmVkZWZpbmlyYW5hIHZhcmlqYWJsYSBgJS4qcycAd2luZG93czMyX29wZW5waXBlICgpOiBwcm9jZXNzX2luaXRfZmQoKSBqZSB6YWthemFvCgB3cml0ZSBqb2JzZXJ2ZXIA