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CnF1aWNrX2Vycm9yICEgKCBXUkFQUEVSICQgZW51bV9uYW1lIFsgcHViIHN0cnVjdCBdICQgbmFtZSAkICggIyBbICQgbWV0YSBdICkgKgopIDsgcXVpY2tfZXJyb3IgISAoClNPUlQgWyBwdWIgZW51bSAkIGVudW1fbmFtZSAkICggIyBbICQgbWV0YSBdICkgKiBdIGl0ZW1zIFsgIF0gYnVmIFsgIF0gcXVldWUgWwokICggJCBjaHVua3MgKSAqIF0gKSA7IH0gOyAoCiQgKCAjIFsgJCBtZXRhIDogbWV0YSBdICkgKiBlbnVtICQgbmFtZSA6IGlkZW50IHdyYXBzICQgZW51bV9uYW1lIDogaWRlbnQgewokICggJCBjaHVua3MgOiB0dCApICogfSApID0+IHsKcXVpY2tfZXJyb3IgISAoIFdSQVBQRVIgJCBlbnVtX25hbWUgWyBzdHJ1Y3QgXSAkIG5hbWUgJCAoICMgWyAkIG1ldGEgXSApICogKSA7CnF1aWNrX2Vycm9yICEgKApTT1JUIFsgZW51bSAkIGVudW1fbmFtZSAkICggIyBbICQgbWV0YSBdICkgKiBdIGl0ZW1zIFsgIF0gYnVmIFsgIF0gcXVldWUgWwokICggJCBjaHVua3MgKSAqIF0gKSA7IH0gOyAoCiQgKCAjIFsgJCBtZXRhIDogbWV0YSBdICkgKiBlbnVtICQgbmFtZSA6IGlkZW50IHdyYXBzIHB1YiAkIGVudW1fbmFtZSA6IGlkZW50CnsgJCAoICQgY2h1bmtzIDogdHQgKSAqIH0gKSA9PiB7CnF1aWNrX2Vycm9yICEgKCBXUkFQUEVSICQgZW51bV9uYW1lIFsgc3RydWN0IF0gJCBuYW1lICQgKCAjIFsgJCBtZXRhIF0gKSAqICkgOwpxdWlja19lcnJvciAhICgKU09SVCBbIHB1YiBlbnVtICQgZW51bV9uYW1lICQgKCAjIFsgJCBtZXRhIF0gKSAqIF0gaXRlbXMgWyAgXSBidWYgWyAgXSBxdWV1ZSBbCiQgKCAkIGNodW5rcyApICogXSApIDsgfSA7ICgKV1JBUFBFUiAkIGludGVybmFsIDogaWRlbnQgWyAkICggJCBzdHJkZWYgOiB0dCApICogXSAkIHN0cm5hbWUgOiBpZGVudCAkICgKIyBbICQgbWV0YSA6IG1ldGEgXSApICogKSA9PiB7CiQgKCAjIFsgJCBtZXRhIF0gKSAqICQgKCAkIHN0cmRlZiApICogJCBzdHJuYW1lICggJCBpbnRlcm5hbCApIDsgaW1wbCA6OiBzdGQKOjogZm10IDo6IERpc3BsYXkgZm9yICQgc3RybmFtZSB7CmZuIGZtdCAoICYgc2VsZiAsIGYgOiAmIG11dCA6OiBzdGQgOjogZm10IDo6IEZvcm1hdHRlciApIC0+IDo6IHN0ZCA6OiBmbXQgOjoKUmVzdWx0IHsgOjogc3RkIDo6IGZtdCA6OiBEaXNwbGF5IDo6IGZtdCAoICYgc2VsZiAuIDAgLCBmICkgfSB9IGltcGwgRnJvbSA8ICQKaW50ZXJuYWwgPiBmb3IgJCBzdHJuYW1lIHsKZm4gZnJvbSAoIGVyciA6ICQgaW50ZXJuYWwgKSAtPiBTZWxmIHsgJCBzdHJuYW1lICggZXJyICkgfSB9IGltcGwgOjogc3RkIDo6CmVycm9yIDo6IEVycm9yIGZvciAkIHN0cm5hbWUgewpmbiBkZXNjcmlwdGlvbiAoICYgc2VsZiApIC0+ICYgc3RyIHsgc2VsZiAuIDAgLiBkZXNjcmlwdGlvbiAoICApIH0gZm4gY2F1c2UgKAomIHNlbGYgKSAtPiBPcHRpb24gPCAmIDo6IHN0ZCA6OiBlcnJvciA6OiBFcnJvciA+IHsgc2VsZiAuIDAgLiBjYXVzZSAoICApIH0gfQp9IDsgKApTT1JUIFsgZW51bSAkIG5hbWUgOiBpZGVudCAkICggIyBbICQgbWV0YSA6IG1ldGEgXSApICogXSBpdGVtcyBbCiQgKAokICggIyBbICQgaW1ldGEgOiBtZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiBpZGVudCA6ICQgaW1vZGUgOiB0dCBbCiQgKCAkIGl2YXIgOiBpZGVudCA6ICQgaXR5cCA6IHR5ICkgLCAqIF0geyAkICggJCBpZnVuY3MgOiB0dCApICogfSApICogXSBidWYgWwogXSBxdWV1ZSBbICBdICkgPT4gewpxdWlja19lcnJvciAhICgKRU5VTV9ERUZJTklUSU9OIFsgZW51bSAkIG5hbWUgJCAoICMgWyAkIG1ldGEgXSApICogXSBib2R5IFsgIF0gcXVldWUgWwokICggJCAoICMgWyAkIGltZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiAkIGltb2RlIFsgJCAoICQgaXZhciA6ICQgaXR5cCApICwgKiBdICkKKiBdICkgOyBxdWlja19lcnJvciAhICgKSU1QTEVNRU5UQVRJT05TICQgbmFtZSB7CiQgKAokIGlpdGVtIDogJCBpbW9kZSBbICQgKCAjIFsgJCBpbWV0YSBdICkgKiBdIFsgJCAoICQgaXZhciA6ICQgaXR5cCApICwgKiBdIHsKJCAoICQgaWZ1bmNzICkgKiB9ICkgKiB9ICkgOyAkICgKcXVpY2tfZXJyb3IgISAoIEVSUk9SX0NIRUNLICQgaW1vZGUgJCAoICQgaWZ1bmNzICkgKiApIDsgKSAqIH0gOyAoClNPUlQgWyBwdWIgZW51bSAkIG5hbWUgOiBpZGVudCAkICggIyBbICQgbWV0YSA6IG1ldGEgXSApICogXSBpdGVtcyBbCiQgKAokICggIyBbICQgaW1ldGEgOiBtZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiBpZGVudCA6ICQgaW1vZGUgOiB0dCBbCiQgKCAkIGl2YXIgOiBpZGVudCA6ICQgaXR5cCA6IHR5ICkgLCAqIF0geyAkICggJCBpZnVuY3MgOiB0dCApICogfSApICogXSBidWYgWwogXSBxdWV1ZSBbICBdICkgPT4gewpxdWlja19lcnJvciAhICgKRU5VTV9ERUZJTklUSU9OIFsgcHViIGVudW0gJCBuYW1lICQgKCAjIFsgJCBtZXRhIF0gKSAqIF0gYm9keSBbICBdIHF1ZXVlIFsKJCAoICQgKCAjIFsgJCBpbWV0YSBdICkgKiA9PiAkIGlpdGVtIDogJCBpbW9kZSBbICQgKCAkIGl2YXIgOiAkIGl0eXAgKSAsICogXSApCiogXSApIDsgcXVpY2tfZXJyb3IgISAoCklNUExFTUVOVEFUSU9OUyAkIG5hbWUgewokICgKJCBpaXRlbSA6ICQgaW1vZGUgWyAkICggIyBbICQgaW1ldGEgXSApICogXSBbICQgKCAkIGl2YXIgOiAkIGl0eXAgKSAsICogXSB7CiQgKCAkIGlmdW5jcyApICogfSApICogfSApIDsgJCAoCnF1aWNrX2Vycm9yICEgKCBFUlJPUl9DSEVDSyAkIGltb2RlICQgKCAkIGlmdW5jcyApICogKSA7ICkgKiB9IDsgKApTT1JUIFsgJCAoICQgZGVmIDogdHQgKSAqIF0gaXRlbXMgWwokICgKJCAoICMgWyAkIGltZXRhIDogbWV0YSBdICkgKiA9PiAkIGlpdGVtIDogaWRlbnQgOiAkIGltb2RlIDogdHQgWwokICggJCBpdmFyIDogaWRlbnQgOiAkIGl0eXAgOiB0eSApICwgKiBdIHsgJCAoICQgaWZ1bmNzIDogdHQgKSAqIH0gKSAqIF0gYnVmIFsKJCAoICMgWyAkIGJtZXRhIDogbWV0YSBdICkgKiBdIHF1ZXVlIFsKIyBbICQgcW1ldGEgOiBtZXRhIF0gJCAoICQgdGFpbCA6IHR0ICkgKiBdICkgPT4gewpxdWlja19lcnJvciAhICgKU09SVCBbICQgKCAkIGRlZiApICogXSBpdGVtcyBbCiQgKAokICggIyBbICQgaW1ldGEgXSApICogPT4gJCBpaXRlbSA6ICQgaW1vZGUgWyAkICggJCBpdmFyIDogJCBpdHlwICkgLCAqIF0gewokICggJCBpZnVuY3MgKSAqIH0gKSAqIF0gYnVmIFsgJCAoICMgWyAkIGJtZXRhIF0gKSAqICMgWyAkIHFtZXRhIF0gXSBxdWV1ZSBbCiQgKCAkIHRhaWwgKSAqIF0gKSA7IH0gOyAoClNPUlQgWyAkICggJCBkZWYgOiB0dCApICogXSBpdGVtcyBbCiQgKAokICggIyBbICQgaW1ldGEgOiBtZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiBpZGVudCA6ICQgaW1vZGUgOiB0dCBbCiQgKCAkIGl2YXIgOiBpZGVudCA6ICQgaXR5cCA6IHR5ICkgLCAqIF0geyAkICggJCBpZnVuY3MgOiB0dCApICogfSApICogXSBidWYgWwokICggIyBbICQgYm1ldGEgOiBtZXRhIF0gKSAqIF0gcXVldWUgWyAkIHFpdGVtIDogaWRlbnQgJCAoICQgdGFpbCA6IHR0ICkgKiBdICkKPT4gewpxdWlja19lcnJvciAhICgKU09SVCBbICQgKCAkIGRlZiApICogXSBpdGVtcyBbCiQgKAokICggIyBbICQgaW1ldGEgXSApICogPT4gJCBpaXRlbSA6ICQgaW1vZGUgWyAkICggJCBpdmFyIDogJCBpdHlwICkgLCAqIF0gewokICggJCBpZnVuY3MgKSAqIH0gKSAqIF0gYnVmIFsgJCAoICMgWyAkIGJtZXRhIF0gKSAqID0+ICQgcWl0ZW0gOiBVTklUIFsgIF0gXQpxdWV1ZSBbICQgKCAkIHRhaWwgKSAqIF0gKSA7IH0gOyAoClNPUlQgWyAkICggJCBkZWYgOiB0dCApICogXSBpdGVtcyBbCiQgKAokICggIyBbICQgaW1ldGEgOiBtZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiBpZGVudCA6ICQgaW1vZGUgOiB0dCBbCiQgKCAkIGl2YXIgOiBpZGVudCA6ICQgaXR5cCA6IHR5ICkgLCAqIF0geyAkICggJCBpZnVuY3MgOiB0dCApICogfSApICogXSBidWYgWwokICggIyBbICQgYm1ldGEgOiBtZXRhIF0gKSAqID0+ICQgYml0ZW0gOiBpZGVudCA6ICQgYm1vZGUgOiB0dCBbCiQgKCAkIGJ2YXIgOiBpZGVudCA6ICQgYnR5cCA6IHR5ICkgLCAqIF0gXSBxdWV1ZSBbCiMgWyAkIHFtZXRhIDogbWV0YSBdICQgKCAkIHRhaWwgOiB0dCApICogXSApID0+IHsKcXVpY2tfZXJyb3IgISAoClNPUlQgWyAkICggJCBkZWYgKSAqIF0gZW51bSBbCiQgKCAkICggIyBbICQgZW1ldGEgXSApICogPT4gJCBlaXRlbSAkICggKCAkICggJCBldHlwICkgLCAqICkgKSAqICkgKiAkICgKIyBbICQgYm1ldGEgXSApICogPT4gJCBiaXRlbSA6ICQgYm1vZGUgJCAoICggJCAoICQgYnR5cCApICwgKiApICkgKiBdIGl0ZW1zIFsKJCAoCiQgKCAjIFsgJCBpbWV0YSA6IG1ldGEgXSApICogPT4gJCBpaXRlbSA6ICQgaW1vZGUgWyAkICggJCBpdmFyIDogJCBpdHlwICkgLCAqCl0geyAkICggJCBpZnVuY3MgKSAqIH0gKSAqICQgYml0ZW0gOiAkIGJtb2RlIFsgJCAoICQgYnZhciA6ICQgYnR5cCApICwgKiBdIHsKfSBdIGJ1ZiBbICMgWyAkIHFtZXRhIF0gXSBxdWV1ZSBbICQgKCAkIHRhaWwgKSAqIF0gKSA7IH0gOyAoClNPUlQgWyAkICggJCBkZWYgOiB0dCApICogXSBpdGVtcyBbCiQgKAokICggIyBbICQgaW1ldGEgOiBtZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiBpZGVudCA6ICQgaW1vZGUgOiB0dCBbCiQgKCAkIGl2YXIgOiBpZGVudCA6ICQgaXR5cCA6IHR5ICkgLCAqIF0geyAkICggJCBpZnVuY3MgOiB0dCApICogfSApICogXSBidWYgWwokICggIyBbICQgYm1ldGEgOiBtZXRhIF0gKSAqID0+ICQgYml0ZW0gOiBpZGVudCA6IFVOSVQgWyAgXSBdIHF1ZXVlIFsKKCAkICggJCBxdmFyIDogaWRlbnQgOiAkIHF0eXAgOiB0eSApICwgKyApICQgKCAkIHRhaWwgOiB0dCApICogXSApID0+IHsKcXVpY2tfZXJyb3IgISAoClNPUlQgWyAkICggJCBkZWYgKSAqIF0gaXRlbXMgWwokICgKJCAoICMgWyAkIGltZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiAkIGltb2RlIFsgJCAoICQgaXZhciA6ICQgaXR5cCApICwgKiBdIHsKJCAoICQgaWZ1bmNzICkgKiB9ICkgKiBdIGJ1ZiBbCiQgKCAjIFsgJCBibWV0YSBdICkgKiA9PiAkIGJpdGVtIDogVFVQTEUgWyAkICggJCBxdmFyIDogJCBxdHlwICkgLCAqIF0gXSBxdWV1ZQpbICQgKCAkIHRhaWwgKSAqIF0gKSA7IH0gOyAoClNPUlQgWyAkICggJCBkZWYgOiB0dCApICogXSBpdGVtcyBbCiQgKAokICggIyBbICQgaW1ldGEgOiBtZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiBpZGVudCA6ICQgaW1vZGUgOiB0dCBbCiQgKCAkIGl2YXIgOiBpZGVudCA6ICQgaXR5cCA6IHR5ICkgLCAqIF0geyAkICggJCBpZnVuY3MgOiB0dCApICogfSApICogXSBidWYgWwokICggIyBbICQgYm1ldGEgOiBtZXRhIF0gKSAqID0+ICQgYml0ZW0gOiBpZGVudCA6IFVOSVQgWyAgXSBdIHF1ZXVlIFsKeyAkICggJCBxdmFyIDogaWRlbnQgOiAkIHF0eXAgOiB0eSApICwgKyB9ICQgKCAkIHRhaWwgOiB0dCApICogXSApID0+IHsKcXVpY2tfZXJyb3IgISAoClNPUlQgWyAkICggJCBkZWYgKSAqIF0gaXRlbXMgWwokICgKJCAoICMgWyAkIGltZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiAkIGltb2RlIFsgJCAoICQgaXZhciA6ICQgaXR5cCApICwgKiBdIHsKJCAoICQgaWZ1bmNzICkgKiB9ICkgKiBdIGJ1ZiBbCiQgKCAjIFsgJCBibWV0YSBdICkgKiA9PiAkIGJpdGVtIDogU1RSVUNUIFsgJCAoICQgcXZhciA6ICQgcXR5cCApICwgKiBdIF0KcXVldWUgWyAkICggJCB0YWlsICkgKiBdICkgOyB9IDsgKApTT1JUIFsgJCAoICQgZGVmIDogdHQgKSAqIF0gaXRlbXMgWwokICgKJCAoICMgWyAkIGltZXRhIDogbWV0YSBdICkgKiA9PiAkIGlpdGVtIDogaWRlbnQgOiAkIGltb2RlIDogdHQgWwokICggJCBpdmFyIDogaWRlbnQgOiAkIGl0eXAgOiB0eSApICwgKiBdIHsgJCAoICQgaWZ1bmNzIDogdHQgKSAqIH0gKSAqIF0gYnVmIFsKJCAoICMgWyAkIGJtZXRhIDogbWV0YSBdICkgKiA9PiAkIGJpdGVtIDogaWRlbnQgOiBVTklUIFsgIF0gXSBxdWV1ZSBbCnsgJCAoICQgcXZhciA6IGlkZW50IDogJCBxdHlwIDogdHkgKSAsICsgLCB9ICQgKCAkIHRhaWwgOiB0dCApICogXSApID0+IHsKcXVpY2tfZXJyb3IgISAoClNPUlQgWyAkICggJCBkZWYgKSAqIF0gaXRlbXMgWwokICgKJCAoICMgWyAkIGltZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiAkIGltb2RlIFsgJCAoICQgaXZhciA6ICQgaXR5cCApICwgKiBdIHsKJCAoICQgaWZ1bmNzICkgKiB9ICkgKiBdIGJ1ZiBbCiQgKCAjIFsgJCBibWV0YSBdICkgKiA9PiAkIGJpdGVtIDogU1RSVUNUIFsgJCAoICQgcXZhciA6ICQgcXR5cCApICwgKiBdIF0KcXVldWUgWyAkICggJCB0YWlsICkgKiBdICkgOyB9IDsgKApTT1JUIFsgJCAoICQgZGVmIDogdHQgKSAqIF0gaXRlbXMgWwokICgKJCAoICMgWyAkIGltZXRhIDogbWV0YSBdICkgKiA9PiAkIGlpdGVtIDogaWRlbnQgOiAkIGltb2RlIDogdHQgWwokICggJCBpdmFyIDogaWRlbnQgOiAkIGl0eXAgOiB0eSApICwgKiBdIHsgJCAoICQgaWZ1bmNzIDogdHQgKSAqIH0gKSAqIF0gYnVmIFsKJCAoICMgWyAkIGJtZXRhIDogbWV0YSBdICkgKiA9PiAkIGJpdGVtIDogaWRlbnQgOiAkIGJtb2RlIDogdHQgWwokICggJCBidmFyIDogaWRlbnQgOiAkIGJ0eXAgOiB0eSApICwgKiBdIF0gcXVldWUgWwp7ICQgKCAkIHFmdW5jcyA6IHR0ICkgKiB9ICQgKCAkIHRhaWwgOiB0dCApICogXSApID0+IHsKcXVpY2tfZXJyb3IgISAoClNPUlQgWyAkICggJCBkZWYgKSAqIF0gaXRlbXMgWwokICgKJCAoICMgWyAkIGltZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiAkIGltb2RlIFsgJCAoICQgaXZhciA6ICQgaXR5cCApICwgKiBdIHsKJCAoICQgaWZ1bmNzICkgKiB9ICkgKiAkICggIyBbICQgYm1ldGEgXSApICogPT4gJCBiaXRlbSA6ICQgYm1vZGUgWwokICggJCBidmFyIDogJCBidHlwICkgLCAqIF0geyAkICggJCBxZnVuY3MgKSAqIH0gXSBidWYgWyAgXSBxdWV1ZSBbCiQgKCAkIHRhaWwgKSAqIF0gKSA7IH0gOyAoClNPUlQgWyAkICggJCBkZWYgOiB0dCApICogXSBpdGVtcyBbCiQgKAokICggIyBbICQgaW1ldGEgOiBtZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiBpZGVudCA6ICQgaW1vZGUgOiB0dCBbCiQgKCAkIGl2YXIgOiBpZGVudCA6ICQgaXR5cCA6IHR5ICkgLCAqIF0geyAkICggJCBpZnVuY3MgOiB0dCApICogfSApICogXSBidWYgWwokICggIyBbICQgYm1ldGEgOiBtZXRhIF0gKSAqID0+ICQgYml0ZW0gOiBpZGVudCA6ICQgYm1vZGUgOiB0dCBbCiQgKCAkIGJ2YXIgOiBpZGVudCA6ICQgYnR5cCA6IHR5ICkgLCAqIF0gXSBxdWV1ZSBbCiQgcWl0ZW0gOiBpZGVudCAkICggJCB0YWlsIDogdHQgKSAqIF0gKSA9PiB7CnF1aWNrX2Vycm9yICEgKApTT1JUIFsgJCAoICQgZGVmICkgKiBdIGl0ZW1zIFsKJCAoCiQgKCAjIFsgJCBpbWV0YSBdICkgKiA9PiAkIGlpdGVtIDogJCBpbW9kZSBbICQgKCAkIGl2YXIgOiAkIGl0eXAgKSAsICogXSB7CiQgKCAkIGlmdW5jcyApICogfSApICogJCAoICMgWyAkIGJtZXRhIF0gKSAqID0+ICQgYml0ZW0gOiAkIGJtb2RlIFsKJCAoICQgYnZhciA6ICQgYnR5cCApICwgKiBdIHsgIH0gXSBidWYgWyA9PiAkIHFpdGVtIDogVU5JVCBbICBdIF0gcXVldWUgWwokICggJCB0YWlsICkgKiBdICkgOyB9IDsgKApTT1JUIFsgJCAoICQgZGVmIDogdHQgKSAqIF0gaXRlbXMgWwokICgKJCAoICMgWyAkIGltZXRhIDogbWV0YSBdICkgKiA9PiAkIGlpdGVtIDogaWRlbnQgOiAkIGltb2RlIDogdHQgWwokICggJCBpdmFyIDogaWRlbnQgOiAkIGl0eXAgOiB0eSApICwgKiBdIHsgJCAoICQgaWZ1bmNzIDogdHQgKSAqIH0gKSAqIF0gYnVmIFsKJCAoICMgWyAkIGJtZXRhIDogbWV0YSBdICkgKiA9PiAkIGJpdGVtIDogaWRlbnQgOiAkIGJtb2RlIDogdHQgWwokICggJCBidmFyIDogaWRlbnQgOiAkIGJ0eXAgOiB0eSApICwgKiBdIF0gcXVldWUgWyAgXSApID0+IHsKcXVpY2tfZXJyb3IgISAoClNPUlQgWyAkICggJCBkZWYgKSAqIF0gaXRlbXMgWwokICgKJCAoICMgWyAkIGltZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiAkIGltb2RlIFsgJCAoICQgaXZhciA6ICQgaXR5cCApICwgKiBdIHsKJCAoICQgaWZ1bmNzICkgKiB9ICkgKiAkICggIyBbICQgYm1ldGEgXSApICogPT4gJCBiaXRlbSA6ICQgYm1vZGUgWwokICggJCBidmFyIDogJCBidHlwICkgLCAqIF0geyAgfSBdIGJ1ZiBbICBdIHF1ZXVlIFsgIF0gKSA7IH0gOyAoCkVOVU1fREVGSU5JVElPTiBbIHB1YiBlbnVtICQgbmFtZSA6IGlkZW50ICQgKCAjIFsgJCBtZXRhIDogbWV0YSBdICkgKiBdIGJvZHkgWwokICgKJCAoICMgWyAkIGltZXRhIDogbWV0YSBdICkgKiA9PiAkIGlpdGVtIDogaWRlbnQgKAokICggKCAkICggJCB0dHlwIDogdHkgKSAsICsgKSApICogKSB7CiQgKCB7ICQgKCAkIHN2YXIgOiBpZGVudCA6ICQgc3R5cCA6IHR5ICkgLCAqIH0gKSAqIH0gKSAqIF0gcXVldWUgWyAgXSApID0+IHsKIyBbIGFsbG93ICggdW5rbm93bl9saW50cyApIF0gIyBbIGFsbG93ICggcmVuYW1lZF9hbmRfcmVtb3ZlZF9saW50cyApIF0gIyBbCmFsbG93ICggdW51c2VkX2RvY19jb21tZW50ICkgXSAjIFsgYWxsb3cgKCB1bnVzZWRfZG9jX2NvbW1lbnRzICkgXSAkICgKIyBbICQgbWV0YSBdICkgKiBwdWIgZW51bSAkIG5hbWUgewokICgKJCAoICMgWyAkIGltZXRhIF0gKSAqICQgaWl0ZW0gJCAoICggJCAoICQgdHR5cCApICwgKiApICkgKiAkICgKeyAkICggJCBzdmFyIDogJCBzdHlwICkgLCAqIH0gKSAqICwgKSAqIH0gfSA7ICgKRU5VTV9ERUZJTklUSU9OIFsgZW51bSAkIG5hbWUgOiBpZGVudCAkICggIyBbICQgbWV0YSA6IG1ldGEgXSApICogXSBib2R5IFsKJCAoCiQgKCAjIFsgJCBpbWV0YSA6IG1ldGEgXSApICogPT4gJCBpaXRlbSA6IGlkZW50ICgKJCAoICggJCAoICQgdHR5cCA6IHR5ICkgLCArICkgKSAqICkgewokICggeyAkICggJCBzdmFyIDogaWRlbnQgOiAkIHN0eXAgOiB0eSApICwgKiB9ICkgKiB9ICkgKiBdIHF1ZXVlIFsgIF0gKSA9PiB7CiMgWyBhbGxvdyAoIHVua25vd25fbGludHMgKSBdICMgWyBhbGxvdyAoIHJlbmFtZWRfYW5kX3JlbW92ZWRfbGludHMgKSBdICMgWwphbGxvdyAoIHVudXNlZF9kb2NfY29tbWVudCApIF0gIyBbIGFsbG93ICggdW51c2VkX2RvY19jb21tZW50cyApIF0gJCAoCiMgWyAkIG1ldGEgXSApICogZW51bSAkIG5hbWUgewokICgKJCAoICMgWyAkIGltZXRhIF0gKSAqICQgaWl0ZW0gJCAoICggJCAoICQgdHR5cCApICwgKiApICkgKiAkICgKeyAkICggJCBzdmFyIDogJCBzdHlwICkgLCAqIH0gKSAqICwgKSAqIH0gfSA7ICgKRU5VTV9ERUZJTklUSU9OIFsgJCAoICQgZGVmIDogdHQgKSAqIF0gYm9keSBbCiQgKAokICggIyBbICQgaW1ldGEgOiBtZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiBpZGVudCAoCiQgKCAoICQgKCAkIHR0eXAgOiB0eSApICwgKyApICkgKiApIHsKJCAoIHsgJCAoICQgc3ZhciA6IGlkZW50IDogJCBzdHlwIDogdHkgKSAsICogfSApICogfSApICogXSBxdWV1ZSBbCiQgKCAjIFsgJCBxbWV0YSA6IG1ldGEgXSApICogPT4gJCBxaXRlbSA6IGlkZW50IDogVU5JVCBbICBdICQgKCAkIHF1ZXVlIDogdHQgKQoqIF0gKSA9PiB7CnF1aWNrX2Vycm9yICEgKApFTlVNX0RFRklOSVRJT04gWyAkICggJCBkZWYgKSAqIF0gYm9keSBbCiQgKAokICggIyBbICQgaW1ldGEgXSApICogPT4gJCBpaXRlbSAoICQgKCAoICQgKCAkIHR0eXAgKSAsICsgKSApICogKSB7CiQgKCB7ICQgKCAkIHN2YXIgOiAkIHN0eXAgKSAsICogfSApICogfSApICogJCAoICMgWyAkIHFtZXRhIF0gKSAqID0+ICQgcWl0ZW0gKAogKSB7ICB9IF0gcXVldWUgWyAkICggJCBxdWV1ZSApICogXSApIDsgfSA7ICgKRU5VTV9ERUZJTklUSU9OIFsgJCAoICQgZGVmIDogdHQgKSAqIF0gYm9keSBbCiQgKAokICggIyBbICQgaW1ldGEgOiBtZXRhIF0gKSAqID0+ICQgaWl0ZW0gOiBpZGVudCAoCiQgKCAoICQgKCAkIHR0eXAgOiB0eSApICwgKyApICkgKiApIHsKJCAoIHsgJCAoICQgc3ZhciA6IGlkZW50IDogJCBzdHlwIDogdHkgKSAsICogfSApICogfSApICogXSBxdWV1ZSBbCiQgKCAjIFsgJCBxbWV0YSA6IG1ldGEgXSApICogPT4gJCBxaXRlbSA6IGlkZW50IDogVFVQTEUgWwokICggJCBxdmFyIDogaWRlbnQgOiAkIHF0eXAgOiB0eSApICwgKyBdICQgKCAkIHF1ZXVlIDogdHQgKSAqIF0gKSA9PiB7CnF1aWNrX2Vycm9yICEgKApFTlVNX0RFRklOSVRJT04gWyAkICggJCBkZWYgKSAqIF0gYm9keSBbCiQgKAokICggIyBbICQgaW1ldGEgXSApICogPT4gJCBpaXRlbSAoICQgKCAoICQgKCAkIHR0eXAgKSAsICsgKSApICogKSB7CiQgKCB7ICQgKCAkIHN2YXIgOiAkIHN0eXAgKSAsICogfSApICogfSApICogJCAoICMgWyAkIHFtZXRhIF0gKSAqID0+ICQgcWl0ZW0gKAooICQgKCAkIHF0eXAgKSAsICogKSApIHsgIH0gXSBxdWV1ZSBbICQgKCAkIHF1ZXVlICkgKiBdICkgOyB9IDsgKApFTlVNX0RFRklOSVRJT04gWyAkICggJCBkZWYgOiB0dCApICogXSBib2R5IFsKJCAoCiQgKCAjIFsgJCBpbWV0YSA6IG1ldGEgXSApICogPT4gJCBpaXRlbSA6IGlkZW50ICgKJCAoICggJCAoICQgdHR5cCA6IHR5ICkgLCArICkgKSAqICkgewokICggeyAkICggJCBzdmFyIDogaWRlbnQgOiAkIHN0eXAgOiB0eSApICwgKiB9ICkgKiB9ICkgKiBdIHF1ZXVlIFsKJCAoICMgWyAkIHFtZXRhIDogbWV0YSBdICkgKiA9PiAkIHFpdGVtIDogaWRlbnQgOiBTVFJVQ1QgWwokICggJCBxdmFyIDogaWRlbnQgOiAkIHF0eXAgOiB0eSApICwgKiBdICQgKCAkIHF1ZXVlIDogdHQgKSAqIF0gKSA9PiB7CnF1aWNrX2Vycm9yICEgKApFTlVNX0RFRklOSVRJT04gWyAkICggJCBkZWYgKSAqIF0gYm9keSBbCiQgKAokICggIyBbICQgaW1ldGEgXSApICogPT4gJCBpaXRlbSAoICQgKCAoICQgKCAkIHR0eXAgKSAsICsgKSApICogKSB7CiQgKCB7ICQgKCAkIHN2YXIgOiAkIHN0eXAgKSAsICogfSApICogfSApICogJCAoICMgWyAkIHFtZXRhIF0gKSAqID0+ICQgcWl0ZW0gKAogKSB7IHsgJCAoICQgcXZhciA6ICQgcXR5cCApICwgKiB9IH0gXSBxdWV1ZSBbICQgKCAkIHF1ZXVlICkgKiBdICkgOyB9IDsgKApJTVBMRU1FTlRBVElPTlMgJCBuYW1lIDogaWRlbnQgewokICgKJCBpdGVtIDogaWRlbnQgOiAkIGltb2RlIDogdHQgWyAkICggIyBbICQgaW1ldGEgOiBtZXRhIF0gKSAqIF0gWwokICggJCB2YXIgOiBpZGVudCA6ICQgdHlwIDogdHkgKSAsICogXSB7ICQgKCAkIGZ1bmNzIDogdHQgKSAqIH0gKSAqIH0gKSA9PiB7CiMgWyBhbGxvdyAoIHVudXNlZCApIF0gIyBbIGFsbG93ICggdW5rbm93bl9saW50cyApIF0gIyBbCmFsbG93ICggcmVuYW1lZF9hbmRfcmVtb3ZlZF9saW50cyApIF0gIyBbIGFsbG93ICggdW51c2VkX2RvY19jb21tZW50ICkgXSAjIFsKYWxsb3cgKCB1bnVzZWRfZG9jX2NvbW1lbnRzICkgXSBpbXBsIDo6IHN0ZCA6OiBmbXQgOjogRGlzcGxheSBmb3IgJCBuYW1lIHsKZm4gZm10ICggJiBzZWxmICwgZm10IDogJiBtdXQgOjogc3RkIDo6IGZtdCA6OiBGb3JtYXR0ZXIgKSAtPiA6OiBzdGQgOjogZm10IDo6ClJlc3VsdCB7Cm1hdGNoICogc2VsZiB7CiQgKAokICggIyBbICQgaW1ldGEgXSApICogcXVpY2tfZXJyb3IgISAoCklURU1fUEFUVEVSTiAkIG5hbWUgJCBpdGVtIDogJCBpbW9kZSBbICQgKCByZWYgJCB2YXIgKSAsICogXSApID0+IHsKbGV0IGRpc3BsYXlfZm4gPSBxdWlja19lcnJvciAhICgKRklORF9ESVNQTEFZX0lNUEwgJCBuYW1lICQgaXRlbSA6ICQgaW1vZGUgeyAkICggJCBmdW5jcyApICogfSApIDsgZGlzcGxheV9mbiAoCnNlbGYgLCBmbXQgKSB9ICkgKiB9IH0gfSAjIFsgYWxsb3cgKCB1bnVzZWQgKSBdICMgWyBhbGxvdyAoIHVua25vd25fbGludHMgKSBdCiMgWyBhbGxvdyAoIHJlbmFtZWRfYW5kX3JlbW92ZWRfbGludHMgKSBdICMgWyBhbGxvdyAoIHVudXNlZF9kb2NfY29tbWVudCApIF0gIwpbIGFsbG93ICggdW51c2VkX2RvY19jb21tZW50cyApIF0gaW1wbCA6OiBzdGQgOjogZXJyb3IgOjogRXJyb3IgZm9yICQgbmFtZSB7CmZuIGRlc2NyaXB0aW9uICggJiBzZWxmICkgLT4gJiBzdHIgewptYXRjaCAqIHNlbGYgewokICgKJCAoICMgWyAkIGltZXRhIF0gKSAqIHF1aWNrX2Vycm9yICEgKApJVEVNX1BBVFRFUk4gJCBuYW1lICQgaXRlbSA6ICQgaW1vZGUgWyAkICggcmVmICQgdmFyICkgLCAqIF0gKSA9PiB7CnF1aWNrX2Vycm9yICEgKApGSU5EX0RFU0NSSVBUSU9OX0lNUEwgJCBpdGVtIDogJCBpbW9kZSBzZWxmIGZtdCBbICQgKCAkIHZhciApICwgKiBdIHsKJCAoICQgZnVuY3MgKSAqIH0gKSB9ICkgKiB9IH0gZm4gY2F1c2UgKCAmIHNlbGYgKSAtPiBPcHRpb24gPCAmIDo6IHN0ZCA6OgplcnJvciA6OiBFcnJvciA+IHsKbWF0Y2ggKiBzZWxmIHsKJCAoCiQgKCAjIFsgJCBpbWV0YSBdICkgKiBxdWlja19lcnJvciAhICgKSVRFTV9QQVRURVJOICQgbmFtZSAkIGl0ZW0gOiAkIGltb2RlIFsgJCAoIHJlZiAkIHZhciApICwgKiBdICkgPT4gewpxdWlja19lcnJvciAhICgKRklORF9DQVVTRV9JTVBMICQgaXRlbSA6ICQgaW1vZGUgWyAkICggJCB2YXIgKSAsICogXSB7ICQgKCAkIGZ1bmNzICkgKiB9ICkgfSApCiogfSB9IH0gJCAoCnF1aWNrX2Vycm9yICEgKApGSU5EX0ZST01fSU1QTCAkIG5hbWUgJCBpdGVtIDogJCBpbW9kZSBbICQgKCAkIHZhciA6ICQgdHlwICkgLCAqIF0gewokICggJCBmdW5jcyApICogfSApIDsgKSAqICQgKApxdWlja19lcnJvciAhICgKRklORF9DT05URVhUX0lNUEwgJCBuYW1lICQgaXRlbSA6ICQgaW1vZGUgWyAkICggJCB2YXIgOiAkIHR5cCApICwgKiBdIHsKJCAoICQgZnVuY3MgKSAqIH0gKSA7ICkgKiB9IDsgKApGSU5EX0RJU1BMQVlfSU1QTCAkIG5hbWUgOiBpZGVudCAkIGl0ZW0gOiBpZGVudCA6ICQgaW1vZGUgOiB0dCB7CmRpc3BsYXkgKCAkIHNlbGZfIDogdHQgKSAtPiAoICQgKCAkIGV4cHJzIDogdHQgKSAqICkgJCAoICQgdGFpbCA6IHR0ICkgKiB9ICkKPT4gewp8IHF1aWNrX2Vycm9yICEgKCBJREVOVCAkIHNlbGZfICkgOiAmICQgbmFtZSAsIGYgOiAmIG11dCA6OiBzdGQgOjogZm10IDo6CkZvcm1hdHRlciB8IHsgd3JpdGUgISAoIGYgLCAkICggJCBleHBycyApICogKSB9IH0gOyAoCkZJTkRfRElTUExBWV9JTVBMICQgbmFtZSA6IGlkZW50ICQgaXRlbSA6IGlkZW50IDogJCBpbW9kZSA6IHR0IHsKZGlzcGxheSAoICQgcGF0dGVybiA6IGV4cHIgKSAkICggJCB0YWlsIDogdHQgKSAqIH0gKSA9PiB7CnwgXyAsIGYgOiAmIG11dCA6OiBzdGQgOjogZm10IDo6IEZvcm1hdHRlciB8IHsgd3JpdGUgISAoIGYgLCAkIHBhdHRlcm4gKSB9IH0gOwooCkZJTkRfRElTUExBWV9JTVBMICQgbmFtZSA6IGlkZW50ICQgaXRlbSA6IGlkZW50IDogJCBpbW9kZSA6IHR0IHsKZGlzcGxheSAoICQgcGF0dGVybiA6IGV4cHIgLCAkICggJCBleHBycyA6IHR0ICkgKiApICQgKCAkIHRhaWwgOiB0dCApICogfSApID0+CnsKfCBfICwgZiA6ICYgbXV0IDo6IHN0ZCA6OiBmbXQgOjogRm9ybWF0dGVyIHwgewp3cml0ZSAhICggZiAsICQgcGF0dGVybiAsICQgKCAkIGV4cHJzICkgKiApIH0gfSA7ICgKRklORF9ESVNQTEFZX0lNUEwgJCBuYW1lIDogaWRlbnQgJCBpdGVtIDogaWRlbnQgOiAkIGltb2RlIDogdHQgewokIHQgOiB0dCAkICggJCB0YWlsIDogdHQgKSAqIH0gKSA9PiB7CnF1aWNrX2Vycm9yICEgKCBGSU5EX0RJU1BMQVlfSU1QTCAkIG5hbWUgJCBpdGVtIDogJCBpbW9kZSB7ICQgKCAkIHRhaWwgKSAqIH0gKQp9IDsgKCBGSU5EX0RJU1BMQVlfSU1QTCAkIG5hbWUgOiBpZGVudCAkIGl0ZW0gOiBpZGVudCA6ICQgaW1vZGUgOiB0dCB7ICB9ICkgPT4Kewp8IHNlbGZfIDogJiAkIG5hbWUgLCBmIDogJiBtdXQgOjogc3RkIDo6IGZtdCA6OiBGb3JtYXR0ZXIgfCB7CndyaXRlICEgKCBmICwgInt9IiAsIDo6IHN0ZCA6OiBlcnJvciA6OiBFcnJvciA6OiBkZXNjcmlwdGlvbiAoIHNlbGZfICkgKSB9IH0gOwooCkZJTkRfREVTQ1JJUFRJT05fSU1QTCAkIGl0ZW0gOiBpZGVudCA6ICQgaW1vZGUgOiB0dCAkIG1lIDogaWRlbnQgJCBmbXQgOiBpZGVudApbICQgKCAkIHZhciA6IGlkZW50ICkgLCAqIF0gewpkZXNjcmlwdGlvbiAoICQgZXhwciA6IGV4cHIgKSAkICggJCB0YWlsIDogdHQgKSAqIH0gKSA9PiB7ICQgZXhwciB9IDsgKApGSU5EX0RFU0NSSVBUSU9OX0lNUEwgJCBpdGVtIDogaWRlbnQgOiAkIGltb2RlIDogdHQgJCBtZSA6IGlkZW50ICQgZm10IDogaWRlbnQKWyAkICggJCB2YXIgOiBpZGVudCApICwgKiBdIHsgJCB0IDogdHQgJCAoICQgdGFpbCA6IHR0ICkgKiB9ICkgPT4gewpxdWlja19lcnJvciAhICgKRklORF9ERVNDUklQVElPTl9JTVBMICQgaXRlbSA6ICQgaW1vZGUgJCBtZSAkIGZtdCBbICQgKCAkIHZhciApICwgKiBdIHsKJCAoICQgdGFpbCApICogfSApIH0gOyAoCkZJTkRfREVTQ1JJUFRJT05fSU1QTCAkIGl0ZW0gOiBpZGVudCA6ICQgaW1vZGUgOiB0dCAkIG1lIDogaWRlbnQgJCBmbXQgOiBpZGVudApbICQgKCAkIHZhciA6IGlkZW50ICkgLCAqIF0geyAgfSApID0+IHsgc3RyaW5naWZ5ICEgKCAkIGl0ZW0gKSB9IDsgKApGSU5EX0NBVVNFX0lNUEwgJCBpdGVtIDogaWRlbnQgOiAkIGltb2RlIDogdHQgWyAkICggJCB2YXIgOiBpZGVudCApICwgKiBdIHsKY2F1c2UgKCAkIGV4cHIgOiBleHByICkgJCAoICQgdGFpbCA6IHR0ICkgKiB9ICkgPT4geyBTb21lICggJCBleHByICkgfSA7ICgKRklORF9DQVVTRV9JTVBMICQgaXRlbSA6IGlkZW50IDogJCBpbW9kZSA6IHR0IFsgJCAoICQgdmFyIDogaWRlbnQgKSAsICogXSB7CiQgdCA6IHR0ICQgKCAkIHRhaWwgOiB0dCApICogfSApID0+IHsKcXVpY2tfZXJyb3IgISAoCkZJTkRfQ0FVU0VfSU1QTCAkIGl0ZW0gOiAkIGltb2RlIFsgJCAoICQgdmFyICkgLCAqIF0geyAkICggJCB0YWlsICkgKiB9ICkgfSA7CigKRklORF9DQVVTRV9JTVBMICQgaXRlbSA6IGlkZW50IDogJCBpbW9kZSA6IHR0IFsgJCAoICQgdmFyIDogaWRlbnQgKSAsICogXSB7ICB9CikgPT4geyBOb25lIH0gOyAoCkZJTkRfRlJPTV9JTVBMICQgbmFtZSA6IGlkZW50ICQgaXRlbSA6IGlkZW50IDogJCBpbW9kZSA6IHR0IFsKJCAoICQgdmFyIDogaWRlbnQgOiAkIHR5cCA6IHR5ICkgLCAqIF0geyBmcm9tICggICkgJCAoICQgdGFpbCA6IHR0ICkgKiB9ICkgPT4KewokICgKaW1wbCBGcm9tIDwgJCB0eXAgPiBmb3IgJCBuYW1lIHsKZm4gZnJvbSAoICQgdmFyIDogJCB0eXAgKSAtPiAkIG5hbWUgeyAkIG5hbWUgOjogJCBpdGVtICggJCB2YXIgKSB9IH0gKSAqCnF1aWNrX2Vycm9yICEgKApGSU5EX0ZST01fSU1QTCAkIG5hbWUgJCBpdGVtIDogJCBpbW9kZSBbICQgKCAkIHZhciA6ICQgdHlwICkgLCAqIF0gewokICggJCB0YWlsICkgKiB9ICkgOyB9IDsgKApGSU5EX0ZST01fSU1QTCAkIG5hbWUgOiBpZGVudCAkIGl0ZW0gOiBpZGVudCA6IFVOSVQgWyAgXSB7CmZyb20gKCAkIGZ0eXAgOiB0eSApICQgKCAkIHRhaWwgOiB0dCApICogfSApID0+IHsKaW1wbCBGcm9tIDwgJCBmdHlwID4gZm9yICQgbmFtZSB7CmZuIGZyb20gKCBfZGlzY2FyZGVkX2Vycm9yIDogJCBmdHlwICkgLT4gJCBuYW1lIHsgJCBuYW1lIDo6ICQgaXRlbSB9IH0KcXVpY2tfZXJyb3IgISAoIEZJTkRfRlJPTV9JTVBMICQgbmFtZSAkIGl0ZW0gOiBVTklUIFsgIF0geyAkICggJCB0YWlsICkgKiB9ICkKOyB9IDsgKApGSU5EX0ZST01fSU1QTCAkIG5hbWUgOiBpZGVudCAkIGl0ZW0gOiBpZGVudCA6IFRVUExFIFsKJCAoICQgdmFyIDogaWRlbnQgOiAkIHR5cCA6IHR5ICkgLCAqIF0gewpmcm9tICggJCBmdmFyIDogaWRlbnQgOiAkIGZ0eXAgOiB0eSApIC0+ICggJCAoICQgdGV4cHIgOiBleHByICkgLCAqICkgJCAoCiQgdGFpbCA6IHR0ICkgKiB9ICkgPT4gewppbXBsIEZyb20gPCAkIGZ0eXAgPiBmb3IgJCBuYW1lIHsKZm4gZnJvbSAoICQgZnZhciA6ICQgZnR5cCApIC0+ICQgbmFtZSB7ICQgbmFtZSA6OiAkIGl0ZW0gKCAkICggJCB0ZXhwciApICwgKiApCn0gfSBxdWlja19lcnJvciAhICgKRklORF9GUk9NX0lNUEwgJCBuYW1lICQgaXRlbSA6IFRVUExFIFsgJCAoICQgdmFyIDogJCB0eXAgKSAsICogXSB7CiQgKCAkIHRhaWwgKSAqIH0gKSA7IH0gOyAoCkZJTkRfRlJPTV9JTVBMICQgbmFtZSA6IGlkZW50ICQgaXRlbSA6IGlkZW50IDogU1RSVUNUIFsKJCAoICQgdmFyIDogaWRlbnQgOiAkIHR5cCA6IHR5ICkgLCAqIF0gewpmcm9tICggJCBmdmFyIDogaWRlbnQgOiAkIGZ0eXAgOiB0eSApIC0+IHsKJCAoICQgdHZhciA6IGlkZW50IDogJCB0ZXhwciA6IGV4cHIgKSAsICogfSAkICggJCB0YWlsIDogdHQgKSAqIH0gKSA9PiB7CmltcGwgRnJvbSA8ICQgZnR5cCA+IGZvciAkIG5hbWUgewpmbiBmcm9tICggJCBmdmFyIDogJCBmdHlwICkgLT4gJCBuYW1lIHsKJCBuYW1lIDo6ICQgaXRlbSB7ICQgKCAkIHR2YXIgOiAkIHRleHByICkgLCAqIH0gfSB9IHF1aWNrX2Vycm9yICEgKApGSU5EX0ZST01fSU1QTCAkIG5hbWUgJCBpdGVtIDogU1RSVUNUIFsgJCAoICQgdmFyIDogJCB0eXAgKSAsICogXSB7CiQgKCAkIHRhaWwgKSAqIH0gKSA7IH0gOyAoCkZJTkRfRlJPTV9JTVBMICQgbmFtZSA6IGlkZW50ICQgaXRlbSA6IGlkZW50IDogJCBpbW9kZSA6IHR0IFsKJCAoICQgdmFyIDogaWRlbnQgOiAkIHR5cCA6IHR5ICkgLCAqIF0geyAkIHQgOiB0dCAkICggJCB0YWlsIDogdHQgKSAqIH0gKSA9PiB7CnF1aWNrX2Vycm9yICEgKApGSU5EX0ZST01fSU1QTCAkIG5hbWUgJCBpdGVtIDogJCBpbW9kZSBbICQgKCAkIHZhciA6ICQgdHlwICkgLCAqIF0gewokICggJCB0YWlsICkgKiB9ICkgOyB9IDsgKApGSU5EX0ZST01fSU1QTCAkIG5hbWUgOiBpZGVudCAkIGl0ZW0gOiBpZGVudCA6ICQgaW1vZGUgOiB0dCBbCiQgKCAkIHZhciA6IGlkZW50IDogJCB0eXAgOiB0eSApICwgKiBdIHsgIH0gKSA9PiB7ICB9IDsgKApGSU5EX0NPTlRFWFRfSU1QTCAkIG5hbWUgOiBpZGVudCAkIGl0ZW0gOiBpZGVudCA6IFRVUExFIFsKJCAoICQgdmFyIDogaWRlbnQgOiAkIHR5cCA6IHR5ICkgLCAqIF0gewpjb250ZXh0ICgKJCBjdmFyIDogaWRlbnQgOiBBc1JlZiA8ICQgY3R5cCA6IHR5ID4gLCAkIGZ2YXIgOiBpZGVudCA6ICQgZnR5cCA6IHR5ICkgLT4gKAokICggJCB0ZXhwciA6IGV4cHIgKSAsICogKSAkICggJCB0YWlsIDogdHQgKSAqIH0gKSA9PiB7CmltcGwgPCBUIDogQXNSZWYgPCAkIGN0eXAgPj4gRnJvbSA8ICQgY3JhdGUgOjogQ29udGV4dCA8IFQgLCAkIGZ0eXAgPj4gZm9yICQKbmFtZSB7CmZuIGZyb20gKAokIGNyYXRlIDo6IENvbnRleHQgKCAkIGN2YXIgLCAkIGZ2YXIgKSA6ICQgY3JhdGUgOjogQ29udGV4dCA8IFQgLCAkIGZ0eXAgPiApCi0+ICQgbmFtZSB7ICQgbmFtZSA6OiAkIGl0ZW0gKCAkICggJCB0ZXhwciApICwgKiApIH0gfSBxdWlja19lcnJvciAhICgKRklORF9DT05URVhUX0lNUEwgJCBuYW1lICQgaXRlbSA6IFRVUExFIFsgJCAoICQgdmFyIDogJCB0eXAgKSAsICogXSB7CiQgKCAkIHRhaWwgKSAqIH0gKSA7IH0gOyAoCkZJTkRfQ09OVEVYVF9JTVBMICQgbmFtZSA6IGlkZW50ICQgaXRlbSA6IGlkZW50IDogVFVQTEUgWwokICggJCB2YXIgOiBpZGVudCA6ICQgdHlwIDogdHkgKSAsICogXSB7CmNvbnRleHQgKCAkIGN2YXIgOiBpZGVudCA6ICQgY3R5cCA6IHR5ICwgJCBmdmFyIDogaWRlbnQgOiAkIGZ0eXAgOiB0eSApIC0+ICgKJCAoICQgdGV4cHIgOiBleHByICkgLCAqICkgJCAoICQgdGFpbCA6IHR0ICkgKiB9ICkgPT4gewppbXBsIDwgJ2EgPiBGcm9tIDwgJCBjcmF0ZSA6OiBDb250ZXh0IDwgJCBjdHlwICwgJCBmdHlwID4+IGZvciAkIG5hbWUgewpmbiBmcm9tICgKJCBjcmF0ZSA6OiBDb250ZXh0ICggJCBjdmFyICwgJCBmdmFyICkgOiAkIGNyYXRlIDo6IENvbnRleHQgPCAkIGN0eXAgLCAkIGZ0eXAKPiApIC0+ICQgbmFtZSB7ICQgbmFtZSA6OiAkIGl0ZW0gKCAkICggJCB0ZXhwciApICwgKiApIH0gfSBxdWlja19lcnJvciAhICgKRklORF9DT05URVhUX0lNUEwgJCBuYW1lICQgaXRlbSA6IFRVUExFIFsgJCAoICQgdmFyIDogJCB0eXAgKSAsICogXSB7CiQgKCAkIHRhaWwgKSAqIH0gKSA7IH0gOyAoCkZJTkRfQ09OVEVYVF9JTVBMICQgbmFtZSA6IGlkZW50ICQgaXRlbSA6IGlkZW50IDogU1RSVUNUIFsKJCAoICQgdmFyIDogaWRlbnQgOiAkIHR5cCA6IHR5ICkgLCAqIF0gewpjb250ZXh0ICgKJCBjdmFyIDogaWRlbnQgOiBBc1JlZiA8ICQgY3R5cCA6IHR5ID4gLCAkIGZ2YXIgOiBpZGVudCA6ICQgZnR5cCA6IHR5ICkgLT4gewokICggJCB0dmFyIDogaWRlbnQgOiAkIHRleHByIDogZXhwciApICwgKiB9ICQgKCAkIHRhaWwgOiB0dCApICogfSApID0+IHsKaW1wbCA8IFQgOiBBc1JlZiA8ICQgY3R5cCA+PiBGcm9tIDwgJCBjcmF0ZSA6OiBDb250ZXh0IDwgVCAsICQgZnR5cCA+PiBmb3IgJApuYW1lIHsKZm4gZnJvbSAoCiQgY3JhdGUgOjogQ29udGV4dCAoICQgY3ZhciAsICQgZnZhciApIDogJCBjcmF0ZSA6OiBDb250ZXh0IDwgJCBjdHlwICwgJCBmdHlwCj4gKSAtPiAkIG5hbWUgeyAkIG5hbWUgOjogJCBpdGVtIHsgJCAoICQgdHZhciA6ICQgdGV4cHIgKSAsICogfSB9IH0KcXVpY2tfZXJyb3IgISAoCkZJTkRfQ09OVEVYVF9JTVBMICQgbmFtZSAkIGl0ZW0gOiBTVFJVQ1QgWyAkICggJCB2YXIgOiAkIHR5cCApICwgKiBdIHsKJCAoICQgdGFpbCApICogfSApIDsgfSA7ICgKRklORF9DT05URVhUX0lNUEwgJCBuYW1lIDogaWRlbnQgJCBpdGVtIDogaWRlbnQgOiBTVFJVQ1QgWwokICggJCB2YXIgOiBpZGVudCA6ICQgdHlwIDogdHkgKSAsICogXSB7CmNvbnRleHQgKCAkIGN2YXIgOiBpZGVudCA6ICQgY3R5cCA6IHR5ICwgJCBmdmFyIDogaWRlbnQgOiAkIGZ0eXAgOiB0eSApIC0+IHsKJCAoICQgdHZhciA6IGlkZW50IDogJCB0ZXhwciA6IGV4cHIgKSAsICogfSAkICggJCB0YWlsIDogdHQgKSAqIH0gKSA9PiB7CmltcGwgPCAnYSA+IEZyb20gPCAkIGNyYXRlIDo6IENvbnRleHQgPCAkIGN0eXAgLCAkIGZ0eXAgPj4gZm9yICQgbmFtZSB7CmZuIGZyb20gKAokIGNyYXRlIDo6IENvbnRleHQgKCAkIGN2YXIgLCAkIGZ2YXIgKSA6ICQgY3JhdGUgOjogQ29udGV4dCA8ICQgY3R5cCAsICQgZnR5cAo+ICkgLT4gJCBuYW1lIHsgJCBuYW1lIDo6ICQgaXRlbSB7ICQgKCAkIHR2YXIgOiAkIHRleHByICkgLCAqIH0gfSB9CnF1aWNrX2Vycm9yICEgKApGSU5EX0NPTlRFWFRfSU1QTCAkIG5hbWUgJCBpdGVtIDogU1RSVUNUIFsgJCAoICQgdmFyIDogJCB0eXAgKSAsICogXSB7CiQgKCAkIHRhaWwgKSAqIH0gKSA7IH0gOyAoCkZJTkRfQ09OVEVYVF9JTVBMICQgbmFtZSA6IGlkZW50ICQgaXRlbSA6IGlkZW50IDogJCBpbW9kZSA6IHR0IFsKJCAoICQgdmFyIDogaWRlbnQgOiAkIHR5cCA6IHR5ICkgLCAqIF0geyAkIHQgOiB0dCAkICggJCB0YWlsIDogdHQgKSAqIH0gKSA9PiB7CnF1aWNrX2Vycm9yICEgKApGSU5EX0NPTlRFWFRfSU1QTCAkIG5hbWUgJCBpdGVtIDogJCBpbW9kZSBbICQgKCAkIHZhciA6ICQgdHlwICkgLCAqIF0gewokICggJCB0YWlsICkgKiB9ICkgOyB9IDsgKApGSU5EX0NPTlRFWFRfSU1QTCAkIG5hbWUgOiBpZGVudCAkIGl0ZW0gOiBpZGVudCA6ICQgaW1vZGUgOiB0dCBbCiQgKCAkIHZhciA6IGlkZW50IDogJCB0eXAgOiB0eSApICwgKiBdIHsgIH0gKSA9PiB7ICB9IDsgKApJVEVNX0JPRFkgJCAoICMgWyAkIGltZXRhIDogbWV0YSBdICkgKiAkIGl0ZW0gOiBpZGVudCA6IFVOSVQgKSA9PiB7ICB9IDsgKApJVEVNX0JPRFkgJCAoICMgWyAkIGltZXRhIDogbWV0YSBdICkgKiAkIGl0ZW0gOiBpZGVudCA6IFRVUExFIFsKJCAoICQgdHlwIDogdHkgKSAsICogXSApID0+IHsgKCAkICggJCB0eXAgKSAsICogKSB9IDsgKApJVEVNX0JPRFkgJCAoICMgWyAkIGltZXRhIDogbWV0YSBdICkgKiAkIGl0ZW0gOiBpZGVudCA6IFNUUlVDVCBbCiQgKCAkIHZhciA6IGlkZW50IDogJCB0eXAgOiB0eSApICwgKiBdICkgPT4geyB7ICQgKCAkIHZhciA6ICQgdHlwICkgLCAqIH0gfSA7CiggSVRFTV9QQVRURVJOICQgbmFtZSA6IGlkZW50ICQgaXRlbSA6IGlkZW50IDogVU5JVCBbICBdICkgPT4gewokIG5hbWUgOjogJCBpdGVtIH0gOyAoCklURU1fUEFUVEVSTiAkIG5hbWUgOiBpZGVudCAkIGl0ZW0gOiBpZGVudCA6IFRVUExFIFsKJCAoIHJlZiAkIHZhciA6IGlkZW50ICkgLCAqIF0gKSA9PiB7ICQgbmFtZSA6OiAkIGl0ZW0gKCAkICggcmVmICQgdmFyICkgLCAqICkKfSA7ICgKSVRFTV9QQVRURVJOICQgbmFtZSA6IGlkZW50ICQgaXRlbSA6IGlkZW50IDogU1RSVUNUIFsKJCAoIHJlZiAkIHZhciA6IGlkZW50ICkgLCAqIF0gKSA9PiB7ICQgbmFtZSA6OiAkIGl0ZW0geyAkICggcmVmICQgdmFyICkgLCAqIH0KfSA7ICgKRVJST1JfQ0hFQ0sgJCBpbW9kZSA6IHR0IGRpc3BsYXkgKCAkIHNlbGZfIDogdHQgKSAtPiAoICQgKCAkIGV4cHJzIDogdHQgKSAqICkKJCAoICQgdGFpbCA6IHR0ICkgKiApID0+IHsKcXVpY2tfZXJyb3IgISAoIEVSUk9SX0NIRUNLICQgaW1vZGUgJCAoICQgdGFpbCApICogKSA7IH0gOyAoCkVSUk9SX0NIRUNLICQgaW1vZGUgOiB0dCBkaXNwbGF5ICggJCBwYXR0ZXJuIDogZXhwciApICQgKCAkIHRhaWwgOiB0dCApICogKSA9Pgp7IHF1aWNrX2Vycm9yICEgKCBFUlJPUl9DSEVDSyAkIGltb2RlICQgKCAkIHRhaWwgKSAqICkgOyB9IDsgKApFUlJPUl9DSEVDSyAkIGltb2RlIDogdHQgZGlzcGxheSAoICQgcGF0dGVybiA6IGV4cHIgLCAkICggJCBleHBycyA6IHR0ICkgKiApICQKKCAkIHRhaWwgOiB0dCApICogKSA9PiB7CnF1aWNrX2Vycm9yICEgKCBFUlJPUl9DSEVDSyAkIGltb2RlICQgKCAkIHRhaWwgKSAqICkgOyB9IDsgKApFUlJPUl9DSEVDSyAkIGltb2RlIDogdHQgZGVzY3JpcHRpb24gKCAkIGV4cHIgOiBleHByICkgJCAoICQgdGFpbCA6IHR0ICkgKiApCj0+IHsgcXVpY2tfZXJyb3IgISAoIEVSUk9SX0NIRUNLICQgaW1vZGUgJCAoICQgdGFpbCApICogKSA7IH0gOyAoCkVSUk9SX0NIRUNLICQgaW1vZGUgOiB0dCBjYXVzZSAoICQgZXhwciA6IGV4cHIgKSAkICggJCB0YWlsIDogdHQgKSAqICkgPT4gewpxdWlja19lcnJvciAhICggRVJST1JfQ0hFQ0sgJCBpbW9kZSAkICggJCB0YWlsICkgKiApIDsgfSA7ICgKRVJST1JfQ0hFQ0sgJCBpbW9kZSA6IHR0IGZyb20gKCAgKSAkICggJCB0YWlsIDogdHQgKSAqICkgPT4gewpxdWlja19lcnJvciAhICggRVJST1JfQ0hFQ0sgJCBpbW9kZSAkICggJCB0YWlsICkgKiApIDsgfSA7ICgKRVJST1JfQ0hFQ0sgJCBpbW9kZSA6IHR0IGZyb20gKCAkIGZ0eXAgOiB0eSApICQgKCAkIHRhaWwgOiB0dCApICogKSA9PiB7CnF1aWNrX2Vycm9yICEgKCBFUlJPUl9DSEVDSyAkIGltb2RlICQgKCAkIHRhaWwgKSAqICkgOyB9IDsgKApFUlJPUl9DSEVDSyBUVVBMRSBmcm9tICggJCBmdmFyIDogaWRlbnQgOiAkIGZ0eXAgOiB0eSApIC0+ICgKJCAoICQgZSA6IGV4cHIgKSAsICogKSAkICggJCB0YWlsIDogdHQgKSAqICkgPT4gewpxdWlja19lcnJvciAhICggRVJST1JfQ0hFQ0sgVFVQTEUgJCAoICQgdGFpbCApICogKSA7IH0gOyAoCkVSUk9SX0NIRUNLIFNUUlVDVCBmcm9tICggJCBmdmFyIDogaWRlbnQgOiAkIGZ0eXAgOiB0eSApIC0+IHsKJCAoICQgdiA6IGlkZW50IDogJCBlIDogZXhwciApICwgKiB9ICQgKCAkIHRhaWwgOiB0dCApICog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