Name: series-workflow6x4mn Phase: Succeeded StartedAt: 2026-06-29 05:48:21 +0000 UTC FinishedAt: 2026-06-29 09:53:34 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[0] Phase: Succeeded StartedAt: 2026-06-29 05:48:21 +0000 UTC FinishedAt: 2026-06-29 05:55:45 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[0].run-triage Phase: Succeeded StartedAt: 2026-06-29 05:48:21 +0000 UTC FinishedAt: 2026-06-29 05:55:45 +0000 UTC Input: nil Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "skip_reason": "", "targets": [ { "base": { "arch": "amd64", "tree_name": "torvalds", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux", "commit_hash": "dc59e4fea9d83f03bad6bddf3fa2e52491777482", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "EXT4_FS", "EXT4_FS_POSIX_ACL", "EXT4_FS_SECURITY" ], "series_id": "" }, "patched": { "arch": "amd64", "tree_name": "torvalds", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux", "commit_hash": "dc59e4fea9d83f03bad6bddf3fa2e52491777482", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "EXT4_FS", "EXT4_FS_POSIX_ACL", "EXT4_FS_SECURITY" ], "series_id": "b31b2f2d-c527-428d-aec0-ca0523ad0d5a" }, "track": "KASAN", "fuzz": { "focus": [ "fs" ], "focus_symbols": [ "ext4_evict_ea_inode", "ext4_xattr_inode_cache_find", "ext4_xattr_inode_lookup_create" ], "corpus_urls": [ "https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db" ], "skip_cover_check": false, "bug_title_re": "" }, "retest": null } ], "trajectory": "CjwhZG9jdHlwZSBodG1sPgo8aHRtbD4KPGhlYWQ+Cgk8dGl0bGU+QUkgVHJhamVjdG9yeTwvdGl0bGU+Cgk8c3R5bGU+CgkJdGFibGUgewoJCQlib3JkZXI6IDFweCBzb2xpZCAjY2NjOwoJCQltYXJnaW46IDIwcHggNXB4OwoJCQlib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwoJCQl3aGl0ZS1zcGFjZTogbm93cmFwOwoJCQl0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKCQkJb3ZlcmZsb3c6IGhpZGRlbjsKCQl9CgoJCXRhYmxlIGNhcHRpb24gewoJCQlmb250LXdlaWdodDogYm9sZDsKCQl9CgoJCXRhYmxlIHRkLCB0YWJsZSB0aCB7CgkJCXZlcnRpY2FsLWFsaWduOiB0b3A7CgkJCXBhZGRpbmc6IDJweCA4cHg7CgkJCXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwoJCQlvdmVyZmxvdzogaGlkZGVuOwoJCX0KCgkJLmxpc3RfdGFibGUgdGQsIC5saXN0X3RhYmxlIHRoIHsKCQkJYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjOwoJCX0KCgkJLmxpc3RfdGFibGUgdGggewoJCQliYWNrZ3JvdW5kOiAjRjRGNEY0OwoJCX0KCgkJLmxpc3RfdGFibGUgdHI6bnRoLWNoaWxkKDJuKSB7CgkJCWJhY2tncm91bmQ6ICNGNEY0RjQ7CgkJfQoKCQkubGlzdF90YWJsZSB0cjpob3ZlciB7CgkJCWJhY2tncm91bmQ6ICNmZmZmOTk7CgkJfQoKCQkjYWlfZGV0YWlsc19kaXYgcHJlIHsKCQkJbWFyZ2luOiAxcHg7CgkJCW1heC13aWR0aDogMTIwY2g7CgkJCXdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKCQkJb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDsKCQl9Cgk8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgoJPGgxPkFJIFRyYWplY3Rvcnk8L2gxPgoJPGJyPgoKCQoJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQk8Y2FwdGlvbj5UcmFqZWN0b3J5OiAoPGEgaHJlZj0iIyIgb25jbGljaz0idG9nZ2xlQWxsRGV0YWlscygpOyByZXR1cm4gZmFsc2U7Ij5FeHBhbmQvQ29sbGFwc2UgQWxsPC9hPik8L2NhcHRpb24+CgkJPHRoZWFkPjx0cj4KCQkJPHRoPlNlcTwvdGg+CgkJCTx0aD5UaW1lc3RhbXA8L3RoPgoJCQk8dGg+VHlwZTwvdGg+CgkJCTx0aD5OYW1lPC90aD4KCQkJPHRoPkR1cmF0aW9uPC90aD4KCQk8L3RyPjwvdGhlYWQ+CgkJPHRib2R5PgoJCQoJCTx0cj4KCQkJPHRkPjAvMDwvdGQ+CgkJCTx0ZD4yMDI2LzA2LzI5IDA1OjUzPC90ZD4KCQkJPHRkPmZsb3c8L3RkPgoJCQk8dGQ+cGF0Y2gtdHJpYWdlPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBbCiAgICAmIzM0O0VYVDRfRlMmIzM0OywKICAgICYjMzQ7RVhUNF9GU19QT1NJWF9BQ0wmIzM0OywKICAgICYjMzQ7RVhUNF9GU19TRUNVUklUWSYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O2V4dDRfZXZpY3RfZWFfaW5vZGUmIzM0OywKICAgICYjMzQ7ZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kJiMzNDssCiAgICAmIzM0O2V4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZSYjMzQ7CiAgXSwKICAmIzM0O1JlYXNvbmluZyYjMzQ7OiAmIzM0O1RoZSBwYXRjaCBtb2RpZmllcyB0aGUgbG9naWMgZm9yIGV2aWN0aW5nIGFuIEVBIChFeHRlbmRlZCBBdHRyaWJ1dGUpIGlub2RlIGluIGV4dDQgdG8gcHJldmVudCBhIGRlYWRsb2NrIHdoZW4gaW50ZXJhY3Rpbmcgd2l0aCB0aGUgbWJjYWNoZS4gVGhpcyBpcyBhIGZ1bmN0aW9uYWwgY2hhbmdlIGluIHRoZSBjb3JlIGV4dDQgZmlsZXN5c3RlbSBsb2dpYy4gRnV6emluZyBzaG91bGQgZm9jdXMgb24gdGhlIEVBIGlub2RlIGV2aWN0aW9uIGFuZCBjYWNoZSBsb29rdXAgcGF0aHMuJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogdHJ1ZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MS8xPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjkgMDU6NTM8L3RkPgoJCQk8dGQ+YWN0aW9uPC90ZD4KCQkJPHRkPnJlYWQtcGF0Y2gtZGlmZjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O1BhdGNoRGlmZiYjMzQ7OiAmIzM0O2NvbW1pdCAzM2U2ODM4YWY3MDI2Y2IzYTFiMjdlMTUzMmZlOGExYTYyNDBiZGEyXG5BdXRob3I6IHN5ei1jbHVzdGVyIFx1MDAzY3RyaWFnZUBzeXprYWxsZXIuY29tXHUwMDNlXG5EYXRlOiAgIE1vbiBKdW4gMjkgMDU6NTM6NTMgMjAyNiAmIzQzOzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEvZnMvZXh0NC94YXR0ci5jIGIvZnMvZXh0NC94YXR0ci5jXG5pbmRleCA5ODJhMWY4MzFlMjI4Mi4uZGIwMzhkMzQ3NGEwMjkgMTAwNjQ0XG4tLS0gYS9mcy9leHQ0L3hhdHRyLmNcbiYjNDM7JiM0MzsmIzQzOyBiL2ZzL2V4dDQveGF0dHIuY1xuQEAgLTQ3NSwxMiAmIzQzOzQ3NSwxNiBAQCB2b2lkIGV4dDRfZXZpY3RfZWFfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSlcbiBcbiBcdGlmICghRUFfSU5PREVfQ0FDSEUoaW5vZGUpKVxuIFx0XHRyZXR1cm47XG4tXHQvKiBXYWl0IGZvciBlbnRyeSB0byBnZXQgdW51c2VkIHNvIHRoYXQgd2UgY2FuIHJlbW92ZSBpdCAqL1xuLVx0d2hpbGUgKChvZSA9IG1iX2NhY2hlX2VudHJ5X2RlbGV0ZV9vcl9nZXQoRUFfSU5PREVfQ0FDSEUoaW5vZGUpLFxuLVx0XHRcdGV4dDRfeGF0dHJfaW5vZGVfZ2V0X2hhc2goaW5vZGUpLCBpbm9kZS1cdTAwM2VpX2lubykpKSB7XG4tXHRcdG1iX2NhY2hlX2VudHJ5X3dhaXRfdW51c2VkKG9lKTtcbiYjNDM7XHQvKlxuJiM0MztcdCAqIFRyeSB0byBkZWxldGUgdGhlIGNhY2hlIGVudHJ5LiAgSWYgaXQmIzM5O3MgY3VycmVudGx5IGluIHVzZSBieVxuJiM0MztcdCAqIGFub3RoZXIgdGhyZWFkIChlLmcuIGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZCksIGp1c3QgbGVhdmVcbiYjNDM7XHQgKiBpdCAtLSB0aGUgc3RhbGUgZW50cnkgaXMgaGFybWxlc3MuICBXYWl0aW5nIGhlcmUgd291bGQgZGVhZGxvY2tcbiYjNDM7XHQgKiBpZiB0aGUgb3RoZXIgdGhyZWFkJiMzOTtzIGlnZXQgaXMgYmxvY2tlZCBvbiB0aGlzIGlub2RlJiMzOTtzIElfRlJFRUlORy5cbiYjNDM7XHQgKi9cbiYjNDM7XHRvZSA9IG1iX2NhY2hlX2VudHJ5X2RlbGV0ZV9vcl9nZXQoRUFfSU5PREVfQ0FDSEUoaW5vZGUpLFxuJiM0MztcdFx0XHRleHQ0X3hhdHRyX2lub2RlX2dldF9oYXNoKGlub2RlKSwgaW5vZGUtXHUwMDNlaV9pbm8pO1xuJiM0MztcdGlmIChvZSlcbiBcdFx0bWJfY2FjaGVfZW50cnlfcHV0KEVBX0lOT0RFX0NBQ0hFKGlub2RlKSwgb2UpO1xuLVx0fVxuIH1cbiBcbiBzdGF0aWMgaW50XG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Mi8xPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjkgMDU6NTM8L3RkPgoJCQk8dGQ+YWdlbnQ8L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IFsKICAgICYjMzQ7RVhUNF9GUyYjMzQ7LAogICAgJiMzNDtFWFQ0X0ZTX1BPU0lYX0FDTCYjMzQ7LAogICAgJiMzNDtFWFQ0X0ZTX1NFQ1VSSVRZJiMzNDsKICBdLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFsKICAgICYjMzQ7ZXh0NF9ldmljdF9lYV9pbm9kZSYjMzQ7LAogICAgJiMzNDtleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQmIzM0OywKICAgICYjMzQ7ZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlJiMzNDsKICBdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBsb2dpYyBmb3IgZXZpY3RpbmcgYW4gRUEgKEV4dGVuZGVkIEF0dHJpYnV0ZSkgaW5vZGUgaW4gZXh0NCB0byBwcmV2ZW50IGEgZGVhZGxvY2sgd2hlbiBpbnRlcmFjdGluZyB3aXRoIHRoZSBtYmNhY2hlLiBUaGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2UgaW4gdGhlIGNvcmUgZXh0NCBmaWxlc3lzdGVtIGxvZ2ljLiBGdXp6aW5nIHNob3VsZCBmb2N1cyBvbiB0aGUgRUEgaW5vZGUgZXZpY3Rpb24gYW5kIGNhY2hlIGxvb2t1cCBwYXRocy4mIzM0OywKICAmIzM0O1dvcnRoRnV6emluZyYjMzQ7OiB0cnVlCn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPkluc3RydWN0aW9uOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+WW91IGFyZSBhbiBleHBlcnQgTGludXgga2VybmVsIG1haW50YWluZXIuCllvdXIgam9iIGlzIHRvIHJldmlldyBhIHByb3ZpZGVkIHBhdGNoIHNlcmllcyBhbmQgZGV0ZXJtaW5lCmlmIGl0IG1ha2VzIGZ1bmN0aW9uYWwgY2hhbmdlcyB0byB0aGUga2VybmVsIHRoYXQgc2hvdWxkIGJlIGZ1enplZC4KCklNUE9SVEFOVDogVGhlIGNoYW5nZXMgaGF2ZSBBTFJFQURZIGJlZW4gYXBwbGllZCBhbmQgY29tbWl0dGVkIGFzIHRoZSBIRUFEIGNvbW1pdCBpbgp5b3VyIHdvcmtzcGFjZS4gRG8gTk9UIHJlbHkgb24geW91ciBpbnRlcm5hbCBrbm93bGVkZ2Ugb2YgdGhlIGtlcm5lbC4gWW91IG11c3QgYWN0aXZlbHkKdXNlIHlvdXIgY29kZSBhY2Nlc3MgdG9vbHMgdG8gZXhhbWluZSB0aGUgYWN0dWFsIHNvdXJjZSBjb2RlIGFuZCBjb25maXJtIGFueSBhc3N1bXB0aW9ucy4KClJldHVybiBXb3J0aEZ1enppbmc9ZmFsc2UgaWYgdGhlIHBhdGNoIG9ubHkgY29udGFpbnM6Ci0gTW9kaWZpY2F0aW9ucyB0byBEb2N1bWVudGF0aW9uLywgS2NvbmZpZyBmaWxlcywgb3IgY29kZSBjb21tZW50cy4KLSBQdXJlbHkgZGVjb3JhdGl2ZSBjaGFuZ2VzLCBzdWNoIGFzIGxvZ2dpbmcgKGUuZy4sIHByX2VyciwgcHJpbnRrKSBvciB0cmFjZXBvaW50cy4KLSBDaGFuZ2VzIHRvIG51bWVyaWMgY29uc3RhbnRzIG9yIG1hY3JvcyB0aGF0IGRvIG5vdCBmdW5jdGlvbmFsbHkgYWx0ZXIgZXhlY3V0aW9uIGZsb3cuCi0gQ29kZSBwYXRocyB0aGF0IGFyZSBpbXBvc3NpYmxlIHRvIHJlYWNoIGluIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyBsaWtlIEdDRSBvciBRRU1VLApldmVuIHdoZW4gdXRpbGl6aW5nIHNvZnR3YXJlLWVtdWxhdGVkIGhhcmR3YXJlIChlLmcuLCB1c2IgZ2FkZ2V0LCBtYWM4MDIxMV9od3NpbSkuCgpJZiBpdCBtb2RpZmllcyByZWFjaGFibGUgY29yZSBrZXJuZWwgbG9naWMsIGRyaXZlcnMsIG9yIGFyY2hpdGVjdHVyZXMsIHVzZSB5b3VyIGNvZGUgc2VhcmNoCnRvb2xzIHRvIHZlcmlmeSB0aGUgY29kZSBjYW4gYmUgZXhlY3V0ZWQsIHRoZW4gcmV0dXJuIFdvcnRoRnV6emluZz10cnVlLgoKV2hlbiByZXR1cm5pbmcgV29ydGhGdXp6aW5nPXRydWUsIHlvdSBNVVNUIEFMU086CjEuIEV4dHJhY3QgYW55IHNwZWNpZmljIGtlcm5lbCBmdW5jdGlvbnMgdGhhdCBzaG91bGQgYmUgaGVhdmlseSBmdXp6ZWQgaW50byBGb2N1c1N5bWJvbHMuCiAgIEF2b2lkIGxpc3RpbmcgZ2VuZXJpYyBob3QtcGF0aCBmdW5jdGlvbnMgdG8gcHJldmVudCBza2V3ZWQgdGVzdCBkaXN0cmlidXRpb25zLgoyLiBJZGVudGlmeSBhbnkgc3BlY2lmaWMgQ09ORklHXyBvcHRpb25zIHJlcXVpcmVkIHRvIHByb3Blcmx5IHRlc3QgdGhpcyBuZXcvbW9kaWZpZWQgZmVhdHVyZS4KICAgR28gYW5kIGxvb2sgaW50byB0aGUgS2NvbmZpZyBmaWxlcyBhbmQgY2hlY2sgZm9yIGlmZGVmcyBhcm91bmQgdGhlIGNvZGUsIGRvIG5vdCBtYWtlIGFzc3VtcHRpb25zLgogICBEbyBub3QgbGlzdCB0b28gZ2VuZXJpYyBjb25maWdzICh3ZSBhbHJlYWR5IGhhdmUgdGhlbSBlbmFibGVkKS4gT25seSBsaXN0IHRob3NlIHRoYXQKICAgc3BlY2lmaWNhbGx5IGNvdmVyIHRoZSBtb2RpZmllZCBjb2RlLiBMaXN0IHRoZW0gaW4gdGhlIEVuYWJsZUNvbmZpZ3Mgb3V0cHV0IGFycmF5LAogICBhbmQgRE8gTk9UIGFkZCBhICYjMzk7Q09ORklHXyYjMzk7IHByZWZpeCAoZS5nLiwgcmV0dXJuICYjMzQ7TkVUX0lQVjQmIzM0OyBpbnN0ZWFkIG9mICYjMzQ7Q09ORklHX05FVF9JUFY0JiMzNDspLgpQcmVmZXIgY2FsbGluZyBzZXZlcmFsIHRvb2xzIGF0IHRoZSBzYW1lIHRpbWUgdG8gc2F2ZSByb3VuZC10cmlwcy4KCgpVc2Ugc2V0LXJlc3VsdHMgdG9vbCB0byBwcm92aWRlIHJlc3VsdHMgb2YgdGhlIGFuYWx5c2lzLgpJdCBtdXN0IGJlIGNhbGxlZCBleGFjdGx5IG9uY2UgYmVmb3JlIHRoZSBmaW5hbCByZXBseS4KSWdub3JlIHJlc3VsdHMgb2YgdGhpcyB0b29sLgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlByb21wdDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPkZvciB5b3VyIGNvbnZlbmllbmNlLCBoZXJlIGlzIHRoZSBkaWZmIG9mIHRoZSBjaGFuZ2VzOgpjb21taXQgMzNlNjgzOGFmNzAyNmNiM2ExYjI3ZTE1MzJmZThhMWE2MjQwYmRhMgpBdXRob3I6IHN5ei1jbHVzdGVyICZsdDt0cmlhZ2VAc3l6a2FsbGVyLmNvbSZndDsKRGF0ZTogICBNb24gSnVuIDI5IDA1OjUzOjUzIDIwMjYgJiM0MzswMDAwCgogICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3CgpkaWZmIC0tZ2l0IGEvZnMvZXh0NC94YXR0ci5jIGIvZnMvZXh0NC94YXR0ci5jCmluZGV4IDk4MmExZjgzMWUyMjgyLi5kYjAzOGQzNDc0YTAyOSAxMDA2NDQKLS0tIGEvZnMvZXh0NC94YXR0ci5jCiYjNDM7JiM0MzsmIzQzOyBiL2ZzL2V4dDQveGF0dHIuYwpAQCAtNDc1LDEyICYjNDM7NDc1LDE2IEBAIHZvaWQgZXh0NF9ldmljdF9lYV9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKQogCiAJaWYgKCFFQV9JTk9ERV9DQUNIRShpbm9kZSkpCiAJCXJldHVybjsKLQkvKiBXYWl0IGZvciBlbnRyeSB0byBnZXQgdW51c2VkIHNvIHRoYXQgd2UgY2FuIHJlbW92ZSBpdCAqLwotCXdoaWxlICgob2UgPSBtYl9jYWNoZV9lbnRyeV9kZWxldGVfb3JfZ2V0KEVBX0lOT0RFX0NBQ0hFKGlub2RlKSwKLQkJCWV4dDRfeGF0dHJfaW5vZGVfZ2V0X2hhc2goaW5vZGUpLCBpbm9kZS0mZ3Q7aV9pbm8pKSkgewotCQltYl9jYWNoZV9lbnRyeV93YWl0X3VudXNlZChvZSk7CiYjNDM7CS8qCiYjNDM7CSAqIFRyeSB0byBkZWxldGUgdGhlIGNhY2hlIGVudHJ5LiAgSWYgaXQmIzM5O3MgY3VycmVudGx5IGluIHVzZSBieQomIzQzOwkgKiBhbm90aGVyIHRocmVhZCAoZS5nLiBleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQpLCBqdXN0IGxlYXZlCiYjNDM7CSAqIGl0IC0tIHRoZSBzdGFsZSBlbnRyeSBpcyBoYXJtbGVzcy4gIFdhaXRpbmcgaGVyZSB3b3VsZCBkZWFkbG9jawomIzQzOwkgKiBpZiB0aGUgb3RoZXIgdGhyZWFkJiMzOTtzIGlnZXQgaXMgYmxvY2tlZCBvbiB0aGlzIGlub2RlJiMzOTtzIElfRlJFRUlORy4KJiM0MzsJICovCiYjNDM7CW9lID0gbWJfY2FjaGVfZW50cnlfZGVsZXRlX29yX2dldChFQV9JTk9ERV9DQUNIRShpbm9kZSksCiYjNDM7CQkJZXh0NF94YXR0cl9pbm9kZV9nZXRfaGFzaChpbm9kZSksIGlub2RlLSZndDtpX2lubyk7CiYjNDM7CWlmIChvZSkKIAkJbWJfY2FjaGVfZW50cnlfcHV0KEVBX0lOT0RFX0NBQ0hFKGlub2RlKSwgb2UpOwotCX0KIH0KIAogc3RhdGljIGludAo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4zLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yOSAwNTo1MzwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiAyMDM1CgkJCQkJCQlvdXRwdXQ6IDIzCgkJCQkJCQl0aG91Z2h0czogMTY0CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKkFuYWx5emluZyB0aGUgZXh0NCB4YXR0ciBFdmljdGlvbiBQYXRjaCoqCgpPa2F5LCBzbyBJJiMzOTttIGxvb2tpbmcgYXQgdGhpcyBwYXRjaCBmb3IgYGZzL2V4dDQveGF0dHIuY2AsIHNwZWNpZmljYWxseSBmb2N1c2luZyBvbiBhIG1vZGlmaWNhdGlvbiB0byB0aGUgYGV4dDRfZXZpY3RfZWFfaW5vZGVgIGZ1bmN0aW9uLiBJdCBsb29rcyBsaWtlIHRoZXkmIzM5O3ZlIHN0cmVhbWxpbmVkIHRoZSBwcm9jZXNzIG9mIGV2aWN0aW5nIGFuIEV4dGVuZGVkIEF0dHJpYnV0ZSAoRUEpIGlub2RlLiBJbnN0ZWFkIG9mIHRoYXQgcG90ZW50aWFsbHkgbGVuZ3RoeSBgd2hpbGVgIGxvb3AsIHdhaXRpbmcgZm9yIGFuIGVudHJ5IHRvIGJlY29tZSB1bnVzZWQgKGBtYl9jYWNoZV9lbnRyeV93YWl0X3VudXNlZChvZSlgKSwgdGhleSYjMzk7cmUgbm93IGF0dGVtcHRpbmcgYSBtb3JlIGRpcmVjdCBhcHByb2FjaCDigJMgdHJ5IHRvIGRlbGV0ZSBpdCBvciBncmFiIGl0IGFuZCB0aGVuIHB1dCBpdCBiYWNrLiBNeSBpbml0aWFsIHRob3VnaHQgaXMgdGhpcyByZXByZXNlbnRzIGEgc2hpZnQgaW4gaG93IGV4dDQgbWFuYWdlcyB0aGVzZSBjYWNoZSBlbnRyaWVzIGR1cmluZyBldmljdGlvbi4KClRvIGdldCBhIGJldHRlciBoYW5kbGUgb24gdGhlIGltcGxpY2F0aW9ucywgSSBuZWVkIHRvIHVuZGVyc3RhbmQgdGhlIGNhbGxpbmcgY29udGV4dHMuIExldCYjMzk7cyBzZWUgd2hlcmUgdGhpcyBgZXh0NF9ldmljdF9lYV9pbm9kZWAgZnVuY3Rpb24gaXMgYWN0dWFsbHkgdXNlZCB3aXRoaW4gdGhlIGZpbGVzeXN0ZW0uIFRpbWUgdG8gZmlyZSB1cCBgZ3JlcHBlcmAgYW5kIHRyYWNrIGRvd24gYWxsIHRoZSBjYWxsIHNpdGVzLiBVbmRlcnN0YW5kaW5nIHRoZSBzdXJyb3VuZGluZyBjb2RlLCBlc3BlY2lhbGx5IHRoZSBwb3RlbnRpYWwgZm9yIGNvbmN1cnJlbnQgYWNjZXNzLCB3aWxsIGJlIGtleSB0byBldmFsdWF0aW5nIHRoZSBjb3JyZWN0bmVzcyBhbmQgcGVyZm9ybWFuY2UgaW1wYWN0IG9mIHRoaXMgY2hhbmdlLiBJJiMzOTtsbCBiZSBsb29raW5nIGZvciBhbnkgcG90ZW50aWFsIGZvciByYWNlIGNvbmRpdGlvbnMgb3IgdW5leHBlY3RlZCBzaWRlIGVmZmVjdHMgdGhhdCBjb3VsZCBhcmlzZSBmcm9tIHRoaXMgY2hhbmdlIGluIGJlaGF2aW9yLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjQvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA2LzI5IDA1OjUzPC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O2V4dDRfZXZpY3RfZWFfaW5vZGUmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7T3V0cHV0JiMzNDs6ICYjMzQ7ZnMvZXh0NC9pbm9kZS5jPTE2OT12b2lkIGV4dDRfZXZpY3RfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSlcbi0tXG5mcy9leHQ0L2lub2RlLmMtMTg2LVx0aWYgKEVYVDRfSShpbm9kZSktXHUwMDNlaV9mbGFncyBcdTAwMjYgRVhUNF9FQV9JTk9ERV9GTClcbmZzL2V4dDQvaW5vZGUuYzoxODc6XHRcdGV4dDRfZXZpY3RfZWFfaW5vZGUoaW5vZGUpO1xuZnMvZXh0NC9pbm9kZS5jLTE4OC1cdGlmIChpbm9kZS1cdTAwM2VpX25saW5rKSB7XG4tLVxuZnMvZXh0NC94YXR0ci5jPTQyND1zdGF0aWMgaW50IGV4dDRfeGF0dHJfaW5vZGVfaWdldChzdHJ1Y3QgaW5vZGUgKnBhcmVudCwgdW5zaWduZWQgbG9uZyBlYV9pbm8sXG4tLVxuZnMvZXh0NC94YXR0ci5jLTQ3MS0vKiBSZW1vdmUgZW50cnkgZnJvbSBtYmNhY2hlIHdoZW4gRUEgaW5vZGUgaXMgZ2V0dGluZyBldmljdGVkICovXG5mcy9leHQ0L3hhdHRyLmM6NDcyOnZvaWQgZXh0NF9ldmljdF9lYV9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKVxuZnMvZXh0NC94YXR0ci5jLTQ3My17XG4tLVxuZnMvZXh0NC94YXR0ci5oPTE5ND1leHRlcm4gaW50IGV4dDRfZXhwYW5kX2V4dHJhX2lzaXplX2VhKHN0cnVjdCBpbm9kZSAqaW5vZGUsIGludCBuZXdfZXh0cmFfaXNpemUsXG5mcy9leHQ0L3hhdHRyLmgtMTk1LVx0XHRcdCAgICBzdHJ1Y3QgZXh0NF9pbm9kZSAqcmF3X2lub2RlLCBoYW5kbGVfdCAqaGFuZGxlKTtcbmZzL2V4dDQveGF0dHIuaDoxOTY6ZXh0ZXJuIHZvaWQgZXh0NF9ldmljdF9lYV9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKTtcbmZzL2V4dDQveGF0dHIuaC0xOTctXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NS8yPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjkgMDU6NTQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMjg1MgoJCQkJCQkJb3V0cHV0OiAyMAoJCQkJCQkJdGhvdWdodHM6IDE0MgoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipGdXp6aW5nIHRoZSBFeHRlbmRlZCBBdHRyaWJ1dGUgSW5vZGUgRXZpY3Rpb24gUHJvY2VzcyBpbiBleHQ0KioKCk9rYXksIHNvIEkmIzM5O3ZlIGlkZW50aWZpZWQgYSB0YXJnZXRlZCBhcmVhIGZvciBmdXp6aW5nIHdpdGhpbiB0aGUgZXh0NCBmaWxlc3lzdGVtLiBUaGUgYGV4dDRfZXZpY3RfZWFfaW5vZGVgIGZ1bmN0aW9uIGlzIHNwZWNpZmljYWxseSBjYWxsZWQgd2hlbiBhbiBpbm9kZSBoYXMgZXh0ZW5kZWQgYXR0cmlidXRlcyBlbmFibGVkLCBpbmRpY2F0ZWQgYnkgdGhlIGBFWFQ0X0VBX0lOT0RFX0ZMYCBmbGFnLiBUaGlzIGNhbGwgaXMgaW5pdGlhdGVkIGZyb20gYGV4dDRfZXZpY3RfaW5vZGVgLCB3aGljaCBtZWFucyB0aGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2Ugd29ydGggYSBjbG9zZXIgbG9vaywgZXNwZWNpYWxseSB3aXRoIGV4dGVuZGVkIGF0dHJpYnV0ZXMsIHdoaWNoIGhhdmUgaGlzdG9yaWNhbGx5IGJlZW4gYSBzb3VyY2Ugb2YgaW50ZXJlc3RpbmcgYnVncy4gVGhpcyBpcyBhIGdvb2Qgb3Bwb3J0dW5pdHkgZm9yIHNvbWUgdGFyZ2V0ZWQgZnV6emluZy4KCk15IHByaW1hcnkgZm9jdXMgd2lsbCBiZSBvbiBgZXh0NF9ldmljdF9lYV9pbm9kZWAgYW5kIGBleHQ0X2V2aWN0X2lub2RlYCwgdGhlIGtleSBmdW5jdGlvbnMgaW52b2x2ZWQgaW4gdGhpcyBldmljdGlvbiBwcm9jZXNzLiBJIG5lZWQgdG8gbWFrZSBzdXJlIHRoZSB0YXJnZXQgaGFzIHRoZSByaWdodCBjb25maWd1cmF0aW9ucyBlbmFibGVkIHRvIHJlYWNoIHRoZSB0YXJnZXQsIHRob3VnaC4KCkkgbmVlZCB0byBtYWtlIHN1cmUgYEVYVDRfRlNgLCBgRVhUNF9GU19QT1NJWF9BQ0xgLCBhbmQgYEVYVDRfRlNfU0VDVVJJVFlgIGFyZSBlbmFibGVkIHRvIGVuc3VyZSBJIGNhbiBhY3R1YWxseSByZWFjaCB0aGlzIGNvZGUuIEkgc2hvdWxkIGFsc28gZGlnIGRlZXBlciBpbnRvIHRoZSBjb2RlIHRvIHNlZSBpZiB0aGVyZSBhcmUgYW55ICpzcGVjaWZpYyogY29uZmlndXJhdGlvbiBvcHRpb25zIHRoYXQgZnVydGhlciBpbmZsdWVuY2UgdGhlIGJlaGF2aW9yIG9mIGV4dGVuZGVkIGF0dHJpYnV0ZSBpbm9kZXMgb3IgeGF0dHIgaGFuZGxpbmcuIFRoaXMgd2lsbCBoZWxwIG1lIG5hcnJvdyB0aGUgZnV6emVyJiMzOTtzIHNjb3BlIGFuZCBtYXhpbWl6ZSBpdHMgZWZmaWNpZW5jeS4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD42LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yOSAwNTo1NDwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtDT05GSUdfRVhUNF9GUyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDtcbkZ1bGwgb3V0cHV0IGlzIHRvbyBsb25nLCBzaG93aW5nIDUwMCBvdXQgb2YgMTE3NyBsaW5lcy5cblVzZSBtb3JlIHByZWNpc2UgZXhwcmVzc2lvbiBpZiBwb3NzaWJsZS5cblxuYXJjaC9hcmMvY29uZmlncy9heHMxMDFfZGVmY29uZmlnPTg5PUNPTkZJR19NTUNfRFc9eVxuYXJjaC9hcmMvY29uZmlncy9heHMxMDFfZGVmY29uZmlnLTkwLSMgQ09ORklHX0lPTU1VX1NVUFBPUlQgaXMgbm90IHNldFxuYXJjaC9hcmMvY29uZmlncy9heHMxMDFfZGVmY29uZmlnOjkxOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAxX2RlZmNvbmZpZy05Mi1DT05GSUdfTVNET1NfRlM9eVxuLS1cbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX2RlZmNvbmZpZz04Nz1DT05GSUdfTU1DX0RXPXlcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX2RlZmNvbmZpZy04OC0jIENPTkZJR19JT01NVV9TVVBQT1JUIGlzIG5vdCBzZXRcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX2RlZmNvbmZpZzo4OTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FyYy9jb25maWdzL2F4czEwM19kZWZjb25maWctOTAtQ09ORklHX01TRE9TX0ZTPXlcbi0tXG5hcmNoL2FyYy9jb25maWdzL2F4czEwM19zbXBfZGVmY29uZmlnPTg5PUNPTkZJR19NTUNfRFc9eVxuYXJjaC9hcmMvY29uZmlncy9heHMxMDNfc21wX2RlZmNvbmZpZy05MC0jIENPTkZJR19JT01NVV9TVVBQT1JUIGlzIG5vdCBzZXRcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX3NtcF9kZWZjb25maWc6OTE6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcmMvY29uZmlncy9heHMxMDNfc21wX2RlZmNvbmZpZy05Mi1DT05GSUdfTVNET1NfRlM9eVxuLS1cbmFyY2gvYXJjL2NvbmZpZ3MvaHNka19kZWZjb25maWc9Nzk9Q09ORklHX1RJX0FEQzEwOFMxMDI9eVxuYXJjaC9hcmMvY29uZmlncy9oc2RrX2RlZmNvbmZpZzo4MDpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FyYy9jb25maWdzL2hzZGtfZGVmY29uZmlnLTgxLUNPTkZJR19WRkFUX0ZTPXlcbi0tXG5hcmNoL2FyYy9jb25maWdzL3Zka19oczM4X2RlZmNvbmZpZz03NT1DT05GSUdfVVNCX1NFUklBTD15XG5hcmNoL2FyYy9jb25maWdzL3Zka19oczM4X2RlZmNvbmZpZy03Ni0jIENPTkZJR19JT01NVV9TVVBQT1JUIGlzIG5vdCBzZXRcbmFyY2gvYXJjL2NvbmZpZ3MvdmRrX2hzMzhfZGVmY29uZmlnOjc3OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJjL2NvbmZpZ3MvdmRrX2hzMzhfZGVmY29uZmlnOjc4OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJjL2NvbmZpZ3MvdmRrX2hzMzhfZGVmY29uZmlnLTc5LUNPTkZJR19NU0RPU19GUz15XG4tLVxuYXJjaC9hcmMvY29uZmlncy92ZGtfaHMzOF9zbXBfZGVmY29uZmlnPTgyPUNPTkZJR19VSU9fUERSVl9HRU5JUlE9eVxuYXJjaC9hcmMvY29uZmlncy92ZGtfaHMzOF9zbXBfZGVmY29uZmlnLTgzLSMgQ09ORklHX0lPTU1VX1NVUFBPUlQgaXMgbm90IHNldFxuYXJjaC9hcmMvY29uZmlncy92ZGtfaHMzOF9zbXBfZGVmY29uZmlnOjg0OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJjL2NvbmZpZ3MvdmRrX2hzMzhfc21wX2RlZmNvbmZpZy04NS1DT05GSUdfTVNET1NfRlM9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvYXNwZWVkX2c1X2RlZmNvbmZpZz0yNjQ9Q09ORklHX1BFQ0lfQVNQRUVEPXlcbmFyY2gvYXJtL2NvbmZpZ3MvYXNwZWVkX2c1X2RlZmNvbmZpZzoyNjU6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9hc3BlZWRfZzVfZGVmY29uZmlnLTI2Ni1DT05GSUdfRkFOT1RJRlk9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvYXQ5MV9kdF9kZWZjb25maWc9MjA3PUNPTkZJR19QV01fQVRNRUxfVENCPXlcbmFyY2gvYXJtL2NvbmZpZ3MvYXQ5MV9kdF9kZWZjb25maWc6MjA4OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvYXQ5MV9kdF9kZWZjb25maWctMjA5LUNPTkZJR19GQU5PVElGWT15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9heG01NXh4X2RlZmNvbmZpZz0xOTY9Q09ORklHX0VYVDJfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9heG01NXh4X2RlZmNvbmZpZzoxOTc6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9heG01NXh4X2RlZmNvbmZpZy0xOTgtQ09ORklHX0FVVE9GU19GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9iY20yODM1X2RlZmNvbmZpZz0xNTY9Q09ORklHX0VYVDJfRlNfUE9TSVhfQUNMPXlcbmFyY2gvYXJtL2NvbmZpZ3MvYmNtMjgzNV9kZWZjb25maWc6MTU3OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvYmNtMjgzNV9kZWZjb25maWc6MTU4OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL2FybS9jb25maWdzL2JjbTI4MzVfZGVmY29uZmlnLTE1OS1DT05GSUdfRkFOT1RJRlk9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvZGF2aW5jaV9hbGxfZGVmY29uZmlnPTIyOT1DT05GSUdfRVhUMl9GUz15XG5hcmNoL2FybS9jb25maWdzL2RhdmluY2lfYWxsX2RlZmNvbmZpZzoyMzA6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9kYXZpbmNpX2FsbF9kZWZjb25maWc6MjMxOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL2FybS9jb25maWdzL2RhdmluY2lfYWxsX2RlZmNvbmZpZy0yMzItQ09ORklHX1hGU19GUz1tXG4tLVxuYXJjaC9hcm0vY29uZmlncy9kb3ZlX2RlZmNvbmZpZz05Nz1DT05GSUdfRVhUMl9GUz15XG5hcmNoL2FybS9jb25maWdzL2RvdmVfZGVmY29uZmlnOjk4OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvZG92ZV9kZWZjb25maWc6OTk6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XG5hcmNoL2FybS9jb25maWdzL2RvdmVfZGVmY29uZmlnLTEwMC1DT05GSUdfSVNPOTY2MF9GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9lcDkzeHhfZGVmY29uZmlnPTEwNT1DT05GSUdfRVhUMl9GUz15XG5hcmNoL2FybS9jb25maWdzL2VwOTN4eF9kZWZjb25maWc6MTA2OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvZXA5M3h4X2RlZmNvbmZpZzoxMDc6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XG5hcmNoL2FybS9jb25maWdzL2VwOTN4eF9kZWZjb25maWctMTA4LUNPTkZJR19WRkFUX0ZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL2V4eW5vc19kZWZjb25maWc9MzMyPUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvZXh5bm9zX2RlZmNvbmZpZzozMzM6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9leHlub3NfZGVmY29uZmlnLTMzNC1DT05GSUdfQVVUT0ZTX0ZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL2hpc2lfZGVmY29uZmlnPTc3PUNPTkZJR19QSFlfSElYNUhEMl9TQVRBPXlcbmFyY2gvYXJtL2NvbmZpZ3MvaGlzaV9kZWZjb25maWc6Nzg6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9oaXNpX2RlZmNvbmZpZy03OS1DT05GSUdfVE1QRlM9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvaW14X3Y0X3Y1X2RlZmNvbmZpZz0xNTU9Q09ORklHX1BXTV9JTVgyNz15XG5hcmNoL2FybS9jb25maWdzL2lteF92NF92NV9kZWZjb25maWc6MTU2OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvaW14X3Y0X3Y1X2RlZmNvbmZpZy0xNTctIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XG4tLVxuYXJjaC9hcm0vY29uZmlncy9pbXhfdjZfdjdfZGVmY29uZmlnPTQzOT1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XG5hcmNoL2FybS9jb25maWdzL2lteF92Nl92N19kZWZjb25maWc6NDQwOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvaW14X3Y2X3Y3X2RlZmNvbmZpZzo0NDE6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvYXJtL2NvbmZpZ3MvaW14X3Y2X3Y3X2RlZmNvbmZpZzo0NDI6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9hcm0vY29uZmlncy9pbXhfdjZfdjdfZGVmY29uZmlnLTQ0My1DT05GSUdfUVVPVEE9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvaW14cnRfZGVmY29uZmlnPTI3PUNPTkZJR19DTEtfSU1YUlQxMDUwPXlcbmFyY2gvYXJtL2NvbmZpZ3MvaW14cnRfZGVmY29uZmlnOjI4OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvaW14cnRfZGVmY29uZmlnOjI5OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL2FybS9jb25maWdzL2lteHJ0X2RlZmNvbmZpZzozMDpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL2FybS9jb25maWdzL2lteHJ0X2RlZmNvbmZpZy0zMS1DT05GSUdfVkZBVF9GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9peHA0eHhfZGVmY29uZmlnPTE1NT1DT05GSUdfRVhUMl9GU19QT1NJWF9BQ0w9eVxuYXJjaC9hcm0vY29uZmlncy9peHA0eHhfZGVmY29uZmlnOjE1NjpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL2l4cDR4eF9kZWZjb25maWc6MTU3OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL2FybS9jb25maWdzL2l4cDR4eF9kZWZjb25maWctMTU4LUNPTkZJR19PVkVSTEFZX0ZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL2tleXN0b25lX2RlZmNvbmZpZz0yMDU9Q09ORklHX1JFU0VUX1RJX1NZU0NPTj1tXG5hcmNoL2FybS9jb25maWdzL2tleXN0b25lX2RlZmNvbmZpZzoyMDY6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9rZXlzdG9uZV9kZWZjb25maWc6MjA3OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL2FybS9jb25maWdzL2tleXN0b25lX2RlZmNvbmZpZy0yMDgtQ09ORklHX0ZBTk9USUZZPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL21pbGJlYXV0X20xMHZfZGVmY29uZmlnPTgxPUNPTkZJR19NRU1PUlk9eVxuYXJjaC9hcm0vY29uZmlncy9taWxiZWF1dF9tMTB2X2RlZmNvbmZpZy04Mi0jIENPTkZJR19BUk1fUE1VIGlzIG5vdCBzZXRcbmFyY2gvYXJtL2NvbmZpZ3MvbWlsYmVhdXRfbTEwdl9kZWZjb25maWc6ODM6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9taWxiZWF1dF9tMTB2X2RlZmNvbmZpZy04NC1DT05GSUdfQVVUT0ZTX0ZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL21tcDJfZGVmY29uZmlnPTU1PUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvbW1wMl9kZWZjb25maWc6NTY6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9tbXAyX2RlZmNvbmZpZy01Ny0jIENPTkZJR19ETk9USUZZIGlzIG5vdCBzZXRcbi0tXG5hcmNoL2FybS9jb25maWdzL21veGFydF9kZWZjb25maWc9MTE0PUNPTkZJR19NT1hBUlRfRE1BPXlcbmFyY2gvYXJtL2NvbmZpZ3MvbW94YXJ0X2RlZmNvbmZpZy0xMTUtIyBDT05GSUdfSU9NTVVfU1VQUE9SVCBpcyBub3Qgc2V0XG5hcmNoL2FybS9jb25maWdzL21veGFydF9kZWZjb25maWc6MTE2OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvbW94YXJ0X2RlZmNvbmZpZy0xMTctQ09ORklHX1RNUEZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL211bHRpX3Y1X2RlZmNvbmZpZz0yNjk9Q09ORklHX0VYVDJfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9tdWx0aV92NV9kZWZjb25maWc6MjcwOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvbXVsdGlfdjVfZGVmY29uZmlnLTI3MS1DT05GSUdfSVNPOTY2MF9GUz1tXG4tLVxuYXJjaC9hcm0vY29uZmlncy9tdWx0aV92N19kZWZjb25maWc9MTI4Mz1DT05GSUdfU1RNMzJfVElNRVJfQ05UPW1cbmFyY2gvYXJtL2NvbmZpZ3MvbXVsdGlfdjdfZGVmY29uZmlnOjEyODQ6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9tdWx0aV92N19kZWZjb25maWctMTI4NS1DT05GSUdfQVVUT0ZTX0ZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL212Nzh4eDBfZGVmY29uZmlnPTkzPUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvbXY3OHh4MF9kZWZjb25maWc6OTQ6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9tdjc4eHgwX2RlZmNvbmZpZzo5NTojIENPTkZJR19FWFQ0X0ZTX1hBVFRSIGlzIG5vdCBzZXRcbmFyY2gvYXJtL2NvbmZpZ3MvbXY3OHh4MF9kZWZjb25maWctOTYtQ09ORklHX0lTTzk2NjBfRlM9bVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvbXZlYnVfdjVfZGVmY29uZmlnPTE2OT1DT05GSUdfRVhUMl9GUz15XG5hcmNoL2FybS9jb25maWdzL212ZWJ1X3Y1X2RlZmNvbmZpZzoxNzA6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9tdmVidV92NV9kZWZjb25maWctMTcxLUNPTkZJR19JU085NjYwX0ZTPW1cbi0tXG5hcmNoL2FybS9jb25maWdzL212ZWJ1X3Y3X2RlZmNvbmZpZz0xMzA9Q09ORklHX1BIWV9NVkVCVV9BMzhYX0NPTVBIWT15XG5hcmNoL2FybS9jb25maWdzL212ZWJ1X3Y3X2RlZmNvbmZpZzoxMzE6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9tdmVidV92N19kZWZjb25maWctMTMyLUNPTkZJR19JU085NjYwX0ZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL214c19kZWZjb25maWc9MTM2PUNPTkZJR19OVk1FTV9NWFNfT0NPVFA9eVxuYXJjaC9hcm0vY29uZmlncy9teHNfZGVmY29uZmlnOjEzNzpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL214c19kZWZjb25maWctMTM4LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvbmhrODgxNV9kZWZjb25maWc9MTE4PUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvbmhrODgxNV9kZWZjb25maWc6MTE5OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvbmhrODgxNV9kZWZjb25maWctMTIwLUNPTkZJR19GVVNFX0ZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL29tYXAxX2RlZmNvbmZpZz0xODQ9Q09ORklHX0VYVDJfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9vbWFwMV9kZWZjb25maWc6MTg1OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvb21hcDFfZGVmY29uZmlnLTE4Ni0jIENPTkZJR19ETk9USUZZIGlzIG5vdCBzZXRcbi0tXG5hcmNoL2FybS9jb25maWdzL29tYXAycGx1c19kZWZjb25maWc9NjgxPUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvb21hcDJwbHVzX2RlZmNvbmZpZzo2ODI6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9vbWFwMnBsdXNfZGVmY29uZmlnOjY4MzpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL2FybS9jb25maWdzL29tYXAycGx1c19kZWZjb25maWctNjg0LUNPTkZJR19GQU5PVElGWT15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZz0xMTc9Q09ORklHX0VYVDJfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZzoxMTg6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZzoxMTk6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XG5hcmNoL2FybS9jb25maWdzL29yaW9uNXhfZGVmY29uZmlnOjEyMDpDT05GSUdfRVhUNF9GUz1tXG5hcmNoL2FybS9jb25maWdzL29yaW9uNXhfZGVmY29uZmlnLTEyMS1DT05GSUdfSVNPOTY2MF9GUz1tXG4tLVxuYXJjaC9hcm0vY29uZmlncy9weGFfZGVmY29uZmlnPTU3NT1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XG5hcmNoL2FybS9jb25maWdzL3B4YV9kZWZjb25maWc6NTc2OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvcHhhX2RlZmNvbmZpZzo1Nzc6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvYXJtL2NvbmZpZ3MvcHhhX2RlZmNvbmZpZzo1Nzg6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9hcm0vY29uZmlncy9weGFfZGVmY29uZmlnLTU3OS1DT05GSUdfWEZTX0ZTPW1cbi0tXG5hcmNoL2FybS9jb25maWdzL3Fjb21fZGVmY29uZmlnPTI3OD1DT05GSUdfRVhUMl9GU19YQVRUUj15XG5hcmNoL2FybS9jb25maWdzL3Fjb21fZGVmY29uZmlnOjI3OTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3Fjb21fZGVmY29uZmlnLTI4MC1DT05GSUdfRlVTRV9GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9ycGNfZGVmY29uZmlnPTc5PUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvcnBjX2RlZmNvbmZpZzo4MDpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3JwY19kZWZjb25maWctODEtQ09ORklHX0FVVE9GU19GUz1tXG4tLVxuYXJjaC9hcm0vY29uZmlncy9zM2M2NDAwX2RlZmNvbmZpZz01ND1DT05GSUdfRVhUMl9GUz15XG5hcmNoL2FybS9jb25maWdzL3MzYzY0MDBfZGVmY29uZmlnOjU1OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvczNjNjQwMF9kZWZjb25maWc6NTY6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvYXJtL2NvbmZpZ3MvczNjNjQwMF9kZWZjb25maWc6NTc6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9hcm0vY29uZmlncy9zM2M2NDAwX2RlZmNvbmZpZy01OC1DT05GSUdfVE1QRlM9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvczVwdjIxMF9kZWZjb25maWc9MTAzPUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvczVwdjIxMF9kZWZjb25maWc6MTA0OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvczVwdjIxMF9kZWZjb25maWctMTA1LUNPTkZJR19BVVRPRlNfRlM9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3Mvc2FtYTVfZGVmY29uZmlnPTIyMj1DT05GSUdfUFdNX0FUTUVMX1RDQj15XG5hcmNoL2FybS9jb25maWdzL3NhbWE1X2RlZmNvbmZpZzoyMjM6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9zYW1hNV9kZWZjb25maWctMjI0LUNPTkZJR19GQU5PVElGWT15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9zYW1hN19kZWZjb25maWc9MjE0PUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc2FtYTdfZGVmY29uZmlnOjIxNTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3NhbWE3X2RlZmNvbmZpZy0yMTYtQ09ORklHX0ZBTk9USUZZPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL3NvY2ZwZ2FfZGVmY29uZmlnPTEzNz1DT05GSUdfRVhUMl9GU19QT1NJWF9BQ0w9eVxuYXJjaC9hcm0vY29uZmlncy9zb2NmcGdhX2RlZmNvbmZpZzoxMzg6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9zb2NmcGdhX2RlZmNvbmZpZy0xMzktQ09ORklHX0FVVE9GU19GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9zcDcwMjFfZGVmY29uZmlnPTQwPUNPTkZJR19SRVNFVF9DT05UUk9MTEVSPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3A3MDIxX2RlZmNvbmZpZzo0MTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3NwNzAyMV9kZWZjb25maWctNDItIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XG4tLVxuYXJjaC9hcm0vY29uZmlncy9zcGVhcjEzeHhfZGVmY29uZmlnPTg1PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXIxM3h4X2RlZmNvbmZpZzo4NjpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3NwZWFyMTN4eF9kZWZjb25maWc6ODc6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9hcm0vY29uZmlncy9zcGVhcjEzeHhfZGVmY29uZmlnLTg4LUNPTkZJR19BVVRPRlNfRlM9bVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXIzeHhfZGVmY29uZmlnPTY4PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXIzeHhfZGVmY29uZmlnOjY5OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXIzeHhfZGVmY29uZmlnOjcwOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXIzeHhfZGVmY29uZmlnLTcxLUNPTkZJR19BVVRPRlNfRlM9bVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXI2eHhfZGVmY29uZmlnPTU0PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXI2eHhfZGVmY29uZmlnOjU1OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXI2eHhfZGVmY29uZmlnOjU2OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXI2eHhfZGVmY29uZmlnLTU3LUNPTkZJR19BVVRPRlNfRlM9bVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3Mvc3BpdHpfZGVmY29uZmlnPTE5Mj1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XG5hcmNoL2FybS9jb25maWdzL3NwaXR6X2RlZmNvbmZpZzoxOTM6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9zcGl0el9kZWZjb25maWc6MTk0OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxuYXJjaC9hcm0vY29uZmlncy9zcGl0el9kZWZjb25maWctMTk1LUNPTkZJR19NU0RPU19GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9zdG0zMl9kZWZjb25maWc9NzE9Q09ORklHX1NUTTMyX0FEQz15XG5hcmNoL2FybS9jb25maWdzL3N0bTMyX2RlZmNvbmZpZzo3MjpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3N0bTMyX2RlZmNvbmZpZy03My0jIENPTkZJR19GSUxFX0xPQ0tJTkcgaXMgbm90IHNldFxuLS1cbmFyY2gvYXJtL2NvbmZpZ3Mvc3VueGlfZGVmY29uZmlnPTE2Mj1DT05GSUdfTlZNRU1fU1VOWElfU0lEPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3VueGlfZGVmY29uZmlnOjE2MzpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3N1bnhpX2RlZmNvbmZpZy0xNjQtQ09ORklHX1ZGQVRfRlM9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvdGVncmFfZGVmY29uZmlnPTMxMj1DT05GSUdfUEhZX1RFR1JBX1hVU0I9eVxuYXJjaC9hcm0vY29uZmlncy90ZWdyYV9kZWZjb25maWc6MzEzOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvdGVncmFfZGVmY29uZmlnOjMxNDpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxuYXJjaC9hcm0vY29uZmlncy90ZWdyYV9kZWZjb25maWc6MzE1OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvYXJtL2NvbmZpZ3MvdGVncmFfZGVmY29uZmlnLTMxNi0jIENPTkZJR19ETk9USUZZIGlzIG5vdCBzZXRcbi0tXG5hcmNoL2FybS9jb25maWdzL3U4NTAwX2RlZmNvbmZpZz0xNzU9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxuYXJjaC9hcm0vY29uZmlncy91ODUwMF9kZWZjb25maWc6MTc2OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvdTg1MDBfZGVmY29uZmlnLTE3Ny1DT05GSUdfVkZBVF9GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy92ZXhwcmVzc19kZWZjb25maWc9MTIyPUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvdmV4cHJlc3NfZGVmY29uZmlnOjEyMzpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3ZleHByZXNzX2RlZmNvbmZpZy0xMjQtQ09ORklHX1ZGQVRfRlM9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvdmY2MTBtNF9kZWZjb25maWc9MzU9Q09ORklHX01GRF9TWVNDT049eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvdmY2MTBtNF9kZWZjb25maWctMzctIyBDT05GSUdfVVNCX1NVUFBPUlQgaXMgbm90IHNldFxuYXJjaC9hcm0vY29uZmlncy92ZjYxMG00X2RlZmNvbmZpZzozODpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3ZmNjEwbTRfZGVmY29uZmlnLTM5LSMgQ09ORklHX01JU0NfRklMRVNZU1RFTVMgaXMgbm90IHNldFxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvdnQ4NTAwX3Y2X3Y3X2RlZmNvbmZpZz03OT1DT05GSUdfR0VORVJJQ19QSFk9eVxuYXJjaC9hcm0vY29uZmlncy92dDg1MDBfdjZfdjdfZGVmY29uZmlnOjgwOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvdnQ4NTAwX3Y2X3Y3X2RlZmNvbmZpZy04MS1DT05GSUdfVE1QRlM9eVxuLS1cbmFyY2gvYXJtNjQvY29uZmlncy9kZWZjb25maWc9MTg5OD1DT05GSUdfSFRFX1RFR1JBMTk0X1RFU1Q9bVxuYXJjaC9hcm02NC9jb25maWdzL2RlZmNvbmZpZzoxODk5OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtNjQvY29uZmlncy9kZWZjb25maWc6MTkwMDpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxuYXJjaC9hcm02NC9jb25maWdzL2RlZmNvbmZpZzoxOTAxOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvYXJtNjQvY29uZmlncy9kZWZjb25maWctMTkwMi1DT05GSUdfQlRSRlNfRlM9bVxuLS1cbmFyY2gvY3NreS9jb25maWdzL2RlZmNvbmZpZz0zMz1DT05GSUdfR0VORVJJQ19QSFk9eVxuYXJjaC9jc2t5L2NvbmZpZ3MvZGVmY29uZmlnOjM0OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvY3NreS9jb25maWdzL2RlZmNvbmZpZy0zNS1DT05GSUdfRkFOT1RJRlk9eVxuLS1cbmFyY2gvaGV4YWdvbi9jb25maWdzL2NvbWV0X2RlZmNvbmZpZz00OD1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XG5hcmNoL2hleGFnb24vY29uZmlncy9jb21ldF9kZWZjb25maWc6NDk6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9oZXhhZ29uL2NvbmZpZ3MvY29tZXRfZGVmY29uZmlnOjUwOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL2hleGFnb24vY29uZmlncy9jb21ldF9kZWZjb25maWc6NTE6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9oZXhhZ29uL2NvbmZpZ3MvY29tZXRfZGVmY29uZmlnLTUyLUNPTkZJR19RVU9UQT15XG4tLVxuYXJjaC9sb29uZ2FyY2gvY29uZmlncy9sb29uZ3NvbjMyX2RlZmNvbmZpZz05NTA9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxuYXJjaC9sb29uZ2FyY2gvY29uZmlncy9sb29uZ3NvbjMyX2RlZmNvbmZpZzo5NTE6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9sb29uZ2FyY2gvY29uZmlncy9sb29uZ3NvbjMyX2RlZmNvbmZpZzo5NTI6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb24zMl9kZWZjb25maWc6OTUzOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb24zMl9kZWZjb25maWctOTU0LUNPTkZJR19KRlNfRlM9bVxuLS1cbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb242NF9kZWZjb25maWc9OTgxPUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb242NF9kZWZjb25maWc6OTgyOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb242NF9kZWZjb25maWc6OTgzOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL2xvb25nYXJjaC9jb25maWdzL2xvb25nc29uNjRfZGVmY29uZmlnOjk4NDpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL2xvb25nYXJjaC9jb25maWdzL2xvb25nc29uNjRfZGVmY29uZmlnLTk4NS1DT05GSUdfSkZTX0ZTPW1cbi0tXG5hcmNoL202OGsvY29uZmlncy9hbWlnYV9kZWZjb25maWc9NDAzPUNPTkZJR19EQVg9bVxuYXJjaC9tNjhrL2NvbmZpZ3MvYW1pZ2FfZGVmY29uZmlnOjQwNDpDT05GSUdfRVhUNF9GUz15XG5hcmNoL202OGsvY29uZmlncy9hbWlnYV9kZWZjb25maWctNDA1LUNPTkZJR19KRlNfRlM9bVxuLS1cbmFyY2gvbTY4ay9jb25maWdzL2Fwb2xsb19kZWZjb25maWc9MzU4PUNPTkZJR19EQVg9bVxuYXJjaC9tNjhrL2NvbmZpZ3MvYXBvbGxvX2RlZmNvbmZpZzozNTk6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9tNjhrL2NvbmZpZ3MvYXBvbGxvX2RlZmNvbmZpZy0zNjAtQ09ORklHX0pGU19GUz1tXG4tLVxuYXJjaC9tNjhrL2NvbmZpZ3MvYXRhcmlfZGVmY29uZmlnPTM4MT1DT05GSUdfREFYPW1cbmFyY2gvbTY4ay9jb25maWdzL2F0YXJpX2RlZmNvbmZpZzozODI6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9tNjhrL2NvbmZpZ3MvYXRhcmlfZGVmY29uZmlnLTM4My1DT05GSUdfSkZTX0ZTPW1cbi0tXG5hcmNoL202OGsvY29uZmlncy9idm1lNjAwMF9kZWZjb25maWc9MzUwPUNPTkZJR19EQVg9bVxuYXJjaC9tNjhrL2NvbmZpZ3MvYnZtZTYwMDBfZGVmY29uZmlnOjM1MTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL202OGsvY29uZmlncy9idm1lNjAwMF9kZWZjb25maWctMzUyLUNPTkZJR19KRlNfRlM9bVxuLS1cbmFyY2gvbTY4ay9jb25maWdzL2hwMzAwX2RlZmNvbmZpZz0zNjA9Q09ORklHX0RBWD1tXG5hcmNoL202OGsvY29uZmlncy9ocDMwMF9kZWZjb25maWc6MzYxOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbTY4ay9jb25maWdzL2hwMzAwX2RlZmNvbmZpZy0zNjItQ09ORklHX0pGU19GUz1tXG4tLVxuYXJjaC9tNjhrL2NvbmZpZ3MvbWFjX2RlZmNvbmZpZz0zNzk9Q09ORklHX0RBWD1tXG5hcmNoL202OGsvY29uZmlncy9tYWNfZGVmY29uZmlnOjM4MDpDT05GSUdfRVhUNF9GUz15XG5hcmNoL202OGsvY29uZmlncy9tYWNfZGVmY29uZmlnLTM4MS1DT05GSUdfSkZTX0ZTPW1cbi0tXG5hcmNoL202OGsvY29uZmlncy9tdWx0aV9kZWZjb25maWc9NDY2PUNPTkZJR19EQVg9bVxuYXJjaC9tNjhrL2NvbmZpZ3MvbXVsdGlfZGVmY29uZmlnOjQ2NzpDT05GSUdfRVhUNF9GUz15XG5hcmNoL202OGsvY29uZmlncy9tdWx0aV9kZWZjb25maWctNDY4LUNPTkZJR19KRlNfRlM9bVxuLS1cbmFyY2gvbTY4ay9jb25maWdzL212bWUxNDdfZGVmY29uZmlnPTM1MD1DT05GSUdfREFYPW1cbmFyY2gvbTY4ay9jb25maWdzL212bWUxNDdfZGVmY29uZmlnOjM1MTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL202OGsvY29uZmlncy9tdm1lMTQ3X2RlZmNvbmZpZy0zNTItQ09ORklHX0pGU19GUz1tXG4tLVxuYXJjaC9tNjhrL2NvbmZpZ3MvbXZtZTE2eF9kZWZjb25maWc9MzUxPUNPTkZJR19EQVg9bVxuYXJjaC9tNjhrL2NvbmZpZ3MvbXZtZTE2eF9kZWZjb25maWc6MzUyOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbTY4ay9jb25maWdzL212bWUxNnhfZGVmY29uZmlnLTM1My1DT05GSUdfSkZTX0ZTPW1cbi0tXG5hcmNoL202OGsvY29uZmlncy9xNDBfZGVmY29uZmlnPTM2OT1DT05GSUdfREFYPW1cbmFyY2gvbTY4ay9jb25maWdzL3E0MF9kZWZjb25maWc6MzcwOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbTY4ay9jb25maWdzL3E0MF9kZWZjb25maWctMzcxLUNPTkZJR19KRlNfRlM9bVxuLS1cbmFyY2gvbTY4ay9jb25maWdzL3N0bWFyazJfZGVmY29uZmlnPTgyPUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbTY4ay9jb25maWdzL3N0bWFyazJfZGVmY29uZmlnOjgzOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbTY4ay9jb25maWdzL3N0bWFyazJfZGVmY29uZmlnOjg0OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL202OGsvY29uZmlncy9zdG1hcmsyX2RlZmNvbmZpZzo4NTpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL202OGsvY29uZmlncy9zdG1hcmsyX2RlZmNvbmZpZy04Ni0jIENPTkZJR19GSUxFX0xPQ0tJTkcgaXMgbm90IHNldFxuLS1cbmFyY2gvbTY4ay9jb25maWdzL3N1bjNfZGVmY29uZmlnPTM0OD1DT05GSUdfREFYPW1cbmFyY2gvbTY4ay9jb25maWdzL3N1bjNfZGVmY29uZmlnOjM0OTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL202OGsvY29uZmlncy9zdW4zX2RlZmNvbmZpZy0zNTAtQ09ORklHX0pGU19GUz1tXG4tLVxuYXJjaC9tNjhrL2NvbmZpZ3Mvc3VuM3hfZGVmY29uZmlnPTM0OD1DT05GSUdfREFYPW1cbmFyY2gvbTY4ay9jb25maWdzL3N1bjN4X2RlZmNvbmZpZzozNDk6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9tNjhrL2NvbmZpZ3Mvc3VuM3hfZGVmY29uZmlnLTM1MC1DT05GSUdfSkZTX0ZTPW1cbi0tXG5hcmNoL202OGsvY29uZmlncy92aXJ0X2RlZmNvbmZpZz01NT1DT05GSUdfVklSVElPX0lOUFVUPXlcbmFyY2gvbTY4ay9jb25maWdzL3ZpcnRfZGVmY29uZmlnOjU2OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbTY4ay9jb25maWdzL3ZpcnRfZGVmY29uZmlnLTU3LUNPTkZJR19BVVRPRlNfRlM9eVxuLS1cbmFyY2gvbWljcm9ibGF6ZS9jb25maWdzL21tdV9kZWZjb25maWc9NzU9Q09ORklHX1VJT19ETUVNX0dFTklSUT15XG5hcmNoL21pY3JvYmxhemUvY29uZmlncy9tbXVfZGVmY29uZmlnOjc2OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWljcm9ibGF6ZS9jb25maWdzL21tdV9kZWZjb25maWctNzctIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvYmlnc3VyX2RlZmNvbmZpZz0xMzY9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvYmlnc3VyX2RlZmNvbmZpZzoxMzc6Q09ORklHX0VYVDRfRlM9bVxuYXJjaC9taXBzL2NvbmZpZ3MvYmlnc3VyX2RlZmNvbmZpZzoxMzg6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2JpZ3N1cl9kZWZjb25maWc6MTM5OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2JpZ3N1cl9kZWZjb25maWc6MTQwOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2JpZ3N1cl9kZWZjb25maWctMTQxLUNPTkZJR19RVU9UQT15XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfYmVfZGVmY29uZmlnPTU3PUNPTkZJR19VU0JfU1RPUkFHRT15XG5hcmNoL21pcHMvY29uZmlncy9ibWlwc19iZV9kZWZjb25maWc6NTg6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfYmVfZGVmY29uZmlnOjU5OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9ibWlwc19iZV9kZWZjb25maWc6NjA6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfYmVfZGVmY29uZmlnLTYxLSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2JtaXBzX3N0Yl9kZWZjb25maWc9MTQxPUNPTkZJR19NTUNfU0RIQ0lfUExURk09eVxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfc3RiX2RlZmNvbmZpZzoxNDI6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfc3RiX2RlZmNvbmZpZzoxNDM6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2JtaXBzX3N0Yl9kZWZjb25maWc6MTQ0OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2JtaXBzX3N0Yl9kZWZjb25maWctMTQ1LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2Nhdml1bV9vY3Rlb25fZGVmY29uZmlnPTEzNj1DT05GSUdfUkFTPXlcbmFyY2gvbWlwcy9jb25maWdzL2Nhdml1bV9vY3Rlb25fZGVmY29uZmlnOjEzNzpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9jYXZpdW1fb2N0ZW9uX2RlZmNvbmZpZzoxMzg6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2Nhdml1bV9vY3Rlb25fZGVmY29uZmlnOjEzOTpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9jYXZpdW1fb2N0ZW9uX2RlZmNvbmZpZy0xNDAtQ09ORklHX01TRE9TX0ZTPXlcbi0tXG5hcmNoL21pcHMvY29uZmlncy9jaTIwX2RlZmNvbmZpZz0xNjY9Q09ORklHX05WTUVNX0paNDc4MF9FRlVTRT15XG5hcmNoL21pcHMvY29uZmlncy9jaTIwX2RlZmNvbmZpZzoxNjc6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvY2kyMF9kZWZjb25maWctMTY4LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2NvYmFsdF9kZWZjb25maWc9NjE9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvY29iYWx0X2RlZmNvbmZpZzo2MjpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9jb2JhbHRfZGVmY29uZmlnOjYzOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9jb2JhbHRfZGVmY29uZmlnOjY0OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2NvYmFsdF9kZWZjb25maWctNjUtQ09ORklHX1BST0NfS0NPUkU9eVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2N1MTAwMC1uZW9fZGVmY29uZmlnPTg5PUNPTkZJR19KWjQ3NzBfUEhZPXlcbmFyY2gvbWlwcy9jb25maWdzL2N1MTAwMC1uZW9fZGVmY29uZmlnOjkwOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2N1MTAwMC1uZW9fZGVmY29uZmlnLTkxLSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2N1MTgzMC1uZW9fZGVmY29uZmlnPTkyPUNPTkZJR19KWjQ3NzBfUEhZPXlcbmFyY2gvbWlwcy9jb25maWdzL2N1MTgzMC1uZW9fZGVmY29uZmlnOjkzOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2N1MTgzMC1uZW9fZGVmY29uZmlnLTk0LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2RiMXh4eF9kZWZjb25maWc9MTY5PUNPTkZJR19SVENfRFJWX0FVMVhYWD15XG5hcmNoL21pcHMvY29uZmlncy9kYjF4eHhfZGVmY29uZmlnOjE3MDpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9kYjF4eHhfZGVmY29uZmlnOjE3MTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZGIxeHh4X2RlZmNvbmZpZzoxNzI6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZGIxeHh4X2RlZmNvbmZpZy0xNzMtQ09ORklHX1hGU19GUz15XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl82NF9kZWZjb25maWc9MTM1PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fNjRfZGVmY29uZmlnOjEzNjpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uXzY0X2RlZmNvbmZpZzoxMzc6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fNjRfZGVmY29uZmlnOjEzODpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uXzY0X2RlZmNvbmZpZy0xMzktQ09ORklHX0lTTzk2NjBfRlM9eVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fZGVmY29uZmlnPTEzMT1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uX2RlZmNvbmZpZzoxMzI6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9kZWZjb25maWc6MTMzOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uX2RlZmNvbmZpZzoxMzQ6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9kZWZjb25maWctMTM1LUNPTkZJR19JU085NjYwX0ZTPXlcbi0tXG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uX3I0a19kZWZjb25maWc9MTMxPUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fcjRrX2RlZmNvbmZpZzoxMzI6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9yNGtfZGVmY29uZmlnOjEzMzpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9yNGtfZGVmY29uZmlnOjEzNDpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uX3I0a19kZWZjb25maWctMTM1LUNPTkZJR19JU085NjYwX0ZTPXlcbi0tXG5hcmNoL21pcHMvY29uZmlncy9leWVxNV9kZWZjb25maWc9ODk9Q09ORklHX1JFU0VUX0NPTlRST0xMRVI9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTVfZGVmY29uZmlnLTkwLSMgQ09ORklHX05WTUVNIGlzIG5vdCBzZXRcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE1X2RlZmNvbmZpZzo5MTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9leWVxNV9kZWZjb25maWc6OTI6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE1X2RlZmNvbmZpZzo5MzpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9leWVxNV9kZWZjb25maWctOTQtQ09ORklHX0ZTX0VOQ1JZUFRJT049eVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE2X2RlZmNvbmZpZz04OD1DT05GSUdfUkVTRVRfQ09OVFJPTExFUj15XG5hcmNoL21pcHMvY29uZmlncy9leWVxNl9kZWZjb25maWctODktIyBDT05GSUdfTlZNRU0gaXMgbm90IHNldFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZfZGVmY29uZmlnOjkwOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE2X2RlZmNvbmZpZzo5MTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZfZGVmY29uZmlnOjkyOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE2X2RlZmNvbmZpZy05My1DT05GSUdfRlNfRU5DUllQVElPTj15XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZscGx1c19kZWZjb25maWc9OTY9Q09ORklHX1JFU0VUX0NPTlRST0xMRVI9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZscGx1c19kZWZjb25maWctOTctIyBDT05GSUdfTlZNRU0gaXMgbm90IHNldFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZscGx1c19kZWZjb25maWc6OTg6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZscGx1c19kZWZjb25maWc6OTk6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE2bHBsdXNfZGVmY29uZmlnOjEwMDpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9leWVxNmxwbHVzX2RlZmNvbmZpZy0xMDEtQ09ORklHX0ZTX0VOQ1JZUFRJT049eVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2Z1bG9vbmcyZV9kZWZjb25maWc9MTc0PUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2Z1bG9vbmcyZV9kZWZjb25maWc6MTc1OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2Z1bG9vbmcyZV9kZWZjb25maWc6MTc2OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9mdWxvb25nMmVfZGVmY29uZmlnOjE3NzpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9mdWxvb25nMmVfZGVmY29uZmlnLTE3OC1DT05GSUdfQVVUT0ZTX0ZTPXlcbi0tXG5hcmNoL21pcHMvY29uZmlncy9nY3cwX2RlZmNvbmZpZz0xMzQ9Q09ORklHX1BXTV9KWjQ3NDA9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZ2N3MF9kZWZjb25maWc6MTM1OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2djdzBfZGVmY29uZmlnLTEzNi1DT05GSUdfVkZBVF9GUz15XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvZ2VuZXJpY19kZWZjb25maWc9NTU9Q09ORklHX0hJRF9NT05URVJFWT15XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvZ2VuZXJpY19kZWZjb25maWctNTctIyBDT05GSUdfSU9NTVVfU1VQUE9SVCBpcyBub3Qgc2V0XG5hcmNoL21pcHMvY29uZmlncy9nZW5lcmljX2RlZmNvbmZpZzo1ODpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9nZW5lcmljX2RlZmNvbmZpZzo1OTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZ2VuZXJpY19kZWZjb25maWc6NjA6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZ2VuZXJpY19kZWZjb25maWctNjEtQ09ORklHX0ZTX0VOQ1JZUFRJT049eVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2lwMjJfZGVmY29uZmlnPTIzMz1DT05GSUdfRVhUMl9GUz1tXG5hcmNoL21pcHMvY29uZmlncy9pcDIyX2RlZmNvbmZpZzoyMzQ6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyMl9kZWZjb25maWc6MjM1OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9pcDIyX2RlZmNvbmZpZzoyMzY6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyMl9kZWZjb25maWctMjM3LUNPTkZJR19YRlNfRlM9bVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2lwMjdfZGVmY29uZmlnPTI3Mj1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9pcDI3X2RlZmNvbmZpZzoyNzM6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyN19kZWZjb25maWc6Mjc0OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9pcDI3X2RlZmNvbmZpZzoyNzU6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyN19kZWZjb25maWctMjc2LUNPTkZJR19YRlNfRlM9bVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2lwMjhfZGVmY29uZmlnPTUxPUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2lwMjhfZGVmY29uZmlnOjUyOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2lwMjhfZGVmY29uZmlnOjUzOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9pcDI4X2RlZmNvbmZpZzo1NDpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9pcDI4X2RlZmNvbmZpZy01NS1DT05GSUdfUVVPVEE9eVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2lwMzBfZGVmY29uZmlnPTE0ND1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9pcDMwX2RlZmNvbmZpZzoxNDU6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvaXAzMF9kZWZjb25maWc6MTQ2OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9pcDMwX2RlZmNvbmZpZzoxNDc6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvaXAzMF9kZWZjb25maWctMTQ4LUNPTkZJR19YRlNfRlM9bVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2lwMzJfZGVmY29uZmlnPTkwPUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2lwMzJfZGVmY29uZmlnOjkxOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2lwMzJfZGVmY29uZmlnOjkyOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9pcDMyX2RlZmNvbmZpZzo5MzpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9pcDMyX2RlZmNvbmZpZy05NC1DT05GSUdfUVVPVEE9eVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2phenpfZGVmY29uZmlnPTcwPUNPTkZJR19FWFQyX0ZTPW1cbmFyY2gvbWlwcy9jb25maWdzL2phenpfZGVmY29uZmlnOjcxOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2phenpfZGVmY29uZmlnLTcyLUNPTkZJR19YRlNfRlM9bVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2xlbW90ZTJmX2RlZmNvbmZpZz0yMjc9Q09ORklHX0VYVDJfRlM9bVxuYXJjaC9taXBzL2NvbmZpZ3MvbGVtb3RlMmZfZGVmY29uZmlnOjIyODpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9sZW1vdGUyZl9kZWZjb25maWc6MjI5OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9sZW1vdGUyZl9kZWZjb25maWc6MjMwOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2xlbW90ZTJmX2RlZmNvbmZpZy0yMzEtQ09ORklHX0pGU19GUz1tXG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24xX2RlZmNvbmZpZz0xNDg9Q09ORklHX0xPT05HU09OMV9BUEJfRE1BPXlcbi0tXG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjFfZGVmY29uZmlnLTE1My0jIENPTkZJR19OVk1FTSBpcyBub3Qgc2V0XG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjFfZGVmY29uZmlnOjE1NDpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjFfZGVmY29uZmlnOjE1NTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24xX2RlZmNvbmZpZy0xNTYtIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24ya19kZWZjb25maWc9Mjk4PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uMmtfZGVmY29uZmlnOjI5OTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjJrX2RlZmNvbmZpZzozMDA6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uMmtfZGVmY29uZmlnOjMwMTpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjJrX2RlZmNvbmZpZy0zMDItQ09ORklHX1hGU19GUz15XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24zX2RlZmNvbmZpZz0zNDk9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24zX2RlZmNvbmZpZzozNTA6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24zX2RlZmNvbmZpZzozNTE6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uM19kZWZjb25maWc6MzUyOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uM19kZWZjb25maWctMzUzLUNPTkZJR19YRlNfRlM9eVxuXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Ny8yPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjkgMDU6NTQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMTQ3MjcKCQkJCQkJCW91dHB1dDogMjMKCQkJCQkJCXRob3VnaHRzOiA0NAoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipFeGFtaW5pbmcgdGhlIEVYVDQgQ29uZmlndXJhdGlvbioqCgpPa2F5LCBzbyB0aGUgYmFzZSBjb25maWd1cmF0aW9uIEkmIzM5O20gd29ya2luZyB3aXRoIGlzIGBDT05GSUdfRVhUNF9GU2AuIE5vdywgSSBuZWVkIHRvIGZpZ3VyZSBvdXQgaWYgdGhlcmUmIzM5O3MgYSBkZWRpY2F0ZWQgY29uZmlndXJhdGlvbiBvcHRpb24gc3BlY2lmaWNhbGx5IGZvciBFeHRlbmRlZCBBdHRyaWJ1dGUgKEVBKSBpbm9kZXMgd2l0aGluIHRoZSBFWFQ0IGZpbGVzeXN0ZW0uIE15IGltbWVkaWF0ZSB0aG91Z2h0IGlzIHRvIGRlbHZlIGludG8gdGhlIHJlbGV2YW50IEtjb25maWcgYW5kIE1ha2VmaWxlIGZpbGVzLiBUaGUgbG9naWNhbCBwbGFjZXMgdG8gc3RhcnQgbG9va2luZyB3b3VsZCBiZSBgZnMvZXh0NC9LY29uZmlnYCBhbmQgYGZzL2V4dDQvTWFrZWZpbGVgLiBUaGF0JiMzOTtzIHdoZXJlIEkmIzM5O2QgZXhwZWN0IHRvIGZpbmQgdGhlIGRlcGVuZGVuY2llcyBhbmQgYnVpbGQgaW5zdHJ1Y3Rpb25zIGZvciBFWFQ0LCBhbmQgdGhlcmVmb3JlLCBjb25maWd1cmF0aW9uIG9wdGlvbnMgbGlrZSB0aGUgb25lIEkmIzM5O20gc2Vla2luZy4gVGltZSB0byBvcGVuIHRob3NlIHVwIGFuZCBzZWUgd2hhdCB0aGV5IHJldmVhbC4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD44LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yOSAwNTo1NDwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtFWFQ0X0VBX0lOT0RFX0ZMJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O0RvY3VtZW50YXRpb24vZmlsZXN5c3RlbXMvZXh0NC9pbm9kZXMucnN0PTIyOD1UaGUgYGBpX2ZsYWdzYGAgZmllbGQgaXMgYSBjb21iaW5hdGlvbiBvZiB0aGVzZSB2YWx1ZXM6XG4tLVxuRG9jdW1lbnRhdGlvbi9maWxlc3lzdGVtcy9leHQ0L2lub2Rlcy5yc3QtMjgzLSAgICAgLSBJbm9kZSBzdG9yZXMgYSBsYXJnZSBleHRlbmRlZCBhdHRyaWJ1dGUgdmFsdWUgaW4gaXRzIGRhdGEgYmxvY2tzXG5Eb2N1bWVudGF0aW9uL2ZpbGVzeXN0ZW1zL2V4dDQvaW5vZGVzLnJzdDoyODQ6ICAgICAgIChFWFQ0X0VBX0lOT0RFX0ZMKS5cbkRvY3VtZW50YXRpb24vZmlsZXN5c3RlbXMvZXh0NC9pbm9kZXMucnN0LTI4NS0gICAqIC0gMHg0MDAwMDBcbi0tXG5mcy9leHQ0L2V4dDQuaD00NDA9c3RydWN0IGZsZXhfZ3JvdXBzIHtcbi0tXG5mcy9leHQ0L2V4dDQuaC01MDQtI2RlZmluZSBFWFQ0X1ZFUklUWV9GTFx0XHRcdDB4MDAxMDAwMDAgLyogVmVyaXR5IHByb3RlY3RlZCBpbm9kZSAqL1xuZnMvZXh0NC9leHQ0Lmg6NTA1OiNkZWZpbmUgRVhUNF9FQV9JTk9ERV9GTFx0ICAgICAgICAweDAwMjAwMDAwIC8qIElub2RlIHVzZWQgZm9yIGxhcmdlIEVBICovXG5mcy9leHQ0L2V4dDQuaC01MDYtLyogMHgwMDQwMDAwMCB3YXMgZm9ybWVybHkgRVhUNF9FT0ZCTE9DS1NfRkwgKi9cbi0tXG5mcy9leHQ0L2V4dDQuaD0yNjkxPXN0YXRpYyBpbmxpbmUgYm9vbCBleHQ0X2lzX3F1b3RhX2ZpbGUoc3RydWN0IGlub2RlICppbm9kZSlcbi0tXG5mcy9leHQ0L2V4dDQuaC0yNjkzLVx0cmV0dXJuIElTX05PUVVPVEEoaW5vZGUpIFx1MDAyNlx1MDAyNlxuZnMvZXh0NC9leHQ0Lmg6MjY5NDpcdCAgICAgICAhKEVYVDRfSShpbm9kZSktXHUwMDNlaV9mbGFncyBcdTAwMjYgRVhUNF9FQV9JTk9ERV9GTCk7XG5mcy9leHQ0L2V4dDQuaC0yNjk1LX1cbi0tXG5mcy9leHQ0L2lhbGxvYy5jPTkzMz1zdHJ1Y3QgaW5vZGUgKl9fZXh0NF9uZXdfaW5vZGUoc3RydWN0IG1udF9pZG1hcCAqaWRtYXAsXG4tLVxuZnMvZXh0NC9pYWxsb2MuYy05OTUtXG5mcy9leHQ0L2lhbGxvYy5jOjk5NjpcdGlmICghKGlfZmxhZ3MgXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpKSB7XG5mcy9leHQ0L2lhbGxvYy5jLTk5Ny1cdFx0ZXJyID0gZnNjcnlwdF9wcmVwYXJlX25ld19pbm9kZShkaXIsIGlub2RlLCBcdTAwMjZlbmNyeXB0KTtcbi0tXG5mcy9leHQ0L2lhbGxvYy5jLTEwMDUtXG5mcy9leHQ0L2lhbGxvYy5jOjEwMDY6XHRpZiAoIWhhbmRsZSBcdTAwMjZcdTAwMjYgc2JpLVx1MDAzZXNfam91cm5hbCBcdTAwMjZcdTAwMjYgIShpX2ZsYWdzIFx1MDAyNiBFWFQ0X0VBX0lOT0RFX0ZMKSkge1xuZnMvZXh0NC9pYWxsb2MuYy0xMDA3LVx0XHRyZXQyID0gZXh0NF94YXR0cl9jcmVkaXRzX2Zvcl9uZXdfaW5vZGUoZGlyLCBtb2RlLCBlbmNyeXB0KTtcbi0tXG5mcy9leHQ0L2lhbGxvYy5jLTEzMDgtXHRpZiAoZXh0NF9oYXNfZmVhdHVyZV9pbmxpbmVfZGF0YShzYikgXHUwMDI2XHUwMDI2XG5mcy9leHQ0L2lhbGxvYy5jOjEzMDk6XHQgICAgKCEoZWktXHUwMDNlaV9mbGFncyBcdTAwMjYgKEVYVDRfREFYX0ZMfEVYVDRfRUFfSU5PREVfRkwpKSB8fCBTX0lTRElSKG1vZGUpKSlcbmZzL2V4dDQvaWFsbG9jLmMtMTMxMC1cdFx0ZXh0NF9zZXRfaW5vZGVfc3RhdGUoaW5vZGUsIEVYVDRfU1RBVEVfTUFZX0lOTElORV9EQVRBKTtcbi0tXG5mcy9leHQ0L2lhbGxvYy5jLTEzMjYtXG5mcy9leHQ0L2lhbGxvYy5jOjEzMjc6XHRpZiAoIShlaS1cdTAwM2VpX2ZsYWdzIFx1MDAyNiBFWFQ0X0VBX0lOT0RFX0ZMKSkge1xuZnMvZXh0NC9pYWxsb2MuYy0xMzI4LVx0XHRlcnIgPSBleHQ0X2luaXRfYWNsKGhhbmRsZSwgaW5vZGUsIGRpcik7XG4tLVxuZnMvZXh0NC9pbm9kZS5jPTE2OT12b2lkIGV4dDRfZXZpY3RfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSlcbi0tXG5mcy9leHQ0L2lub2RlLmMtMTg1LVxuZnMvZXh0NC9pbm9kZS5jOjE4NjpcdGlmIChFWFQ0X0koaW5vZGUpLVx1MDAzZWlfZmxhZ3MgXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpXG5mcy9leHQ0L2lub2RlLmMtMTg3LVx0XHRleHQ0X2V2aWN0X2VhX2lub2RlKGlub2RlKTtcbi0tXG5mcy9leHQ0L2lub2RlLmM9NDcwMT1zdGF0aWMgaW5saW5lIHU2NCBleHQ0X2lub2RlX3BlZWtfaXZlcnNpb24oY29uc3Qgc3RydWN0IGlub2RlICppbm9kZSlcbmZzL2V4dDQvaW5vZGUuYy00NzAyLXtcbmZzL2V4dDQvaW5vZGUuYzo0NzAzOlx0aWYgKHVubGlrZWx5KEVYVDRfSShpbm9kZSktXHUwMDNlaV9mbGFncyBcdTAwMjYgRVhUNF9FQV9JTk9ERV9GTCkpXG5mcy9leHQ0L2lub2RlLmMtNDcwNC1cdFx0cmV0dXJuIGlub2RlX3BlZWtfaXZlcnNpb25fcmF3KGlub2RlKTtcbi0tXG5mcy9leHQ0L2lub2RlLmM9NTE5ND1pbnQgZXh0NF9nZXRfcHJvamlkKHN0cnVjdCBpbm9kZSAqaW5vZGUsIGtwcm9qaWRfdCAqcHJvamlkKVxuLS1cbmZzL2V4dDQvaW5vZGUuYy01MjAzLSAqIGV4dDQgaGFzIHNlbGYtbWFuYWdlZCBpX3ZlcnNpb24gZm9yIGVhIGlub2RlcywgaXQgc3RvcmVzIHRoZSBsb3dlciAzMmJpdCBvZlxuZnMvZXh0NC9pbm9kZS5jOjUyMDQ6ICogcmVmY291bnQgaW4gaV92ZXJzaW9uLCBzbyB1c2UgcmF3IHZhbHVlcyBpZiBpbm9kZSBoYXMgRVhUNF9FQV9JTk9ERV9GTCBmbGFnXG5mcy9leHQ0L2lub2RlLmMtNTIwNS0gKiBzZXQuXG4tLVxuZnMvZXh0NC9pbm9kZS5jPTUyMDc9c3RhdGljIGlubGluZSB2b2lkIGV4dDRfaW5vZGVfc2V0X2l2ZXJzaW9uX3F1ZXJpZWQoc3RydWN0IGlub2RlICppbm9kZSwgdTY0IHZhbClcbmZzL2V4dDQvaW5vZGUuYy01MjA4LXtcbmZzL2V4dDQvaW5vZGUuYzo1MjA5Olx0aWYgKHVubGlrZWx5KEVYVDRfSShpbm9kZSktXHUwMDNlaV9mbGFncyBcdTAwMjYgRVhUNF9FQV9JTk9ERV9GTCkpXG5mcy9leHQ0L2lub2RlLmMtNTIxMC1cdFx0aW5vZGVfc2V0X2l2ZXJzaW9uX3Jhdyhpbm9kZSwgdmFsKTtcbi0tXG5mcy9leHQ0L2lub2RlLmM9NTIxNT1zdGF0aWMgaW50IGNoZWNrX2lnb3RfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSwgZXh0NF9pZ2V0X2ZsYWdzIGZsYWdzLFxuLS1cbmZzL2V4dDQvaW5vZGUuYy01MjIwLVx0aWYgKGZsYWdzIFx1MDAyNiBFWFQ0X0lHRVRfRUFfSU5PREUpIHtcbmZzL2V4dDQvaW5vZGUuYzo1MjIxOlx0XHRpZiAoIShFWFQ0X0koaW5vZGUpLVx1MDAzZWlfZmxhZ3MgXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpKSB7XG5mcy9leHQ0L2lub2RlLmMtNTIyMi1cdFx0XHRlcnJfc3RyID0gXCYjMzQ7bWlzc2luZyBFQV9JTk9ERSBmbGFnXCYjMzQ7O1xuLS1cbmZzL2V4dDQvaW5vZGUuYy01MjMwLVx0fSBlbHNlIHtcbmZzL2V4dDQvaW5vZGUuYzo1MjMxOlx0XHRpZiAoKEVYVDRfSShpbm9kZSktXHUwMDNlaV9mbGFncyBcdTAwMjYgRVhUNF9FQV9JTk9ERV9GTCkpIHtcbmZzL2V4dDQvaW5vZGUuYy01MjMyLVx0XHRcdC8qXG4tLVxuZnMvZXh0NC94YXR0ci5jPTE0NzY9c3RhdGljIHN0cnVjdCBpbm9kZSAqZXh0NF94YXR0cl9pbm9kZV9jcmVhdGUoaGFuZGxlX3QgKmhhbmRsZSxcbi0tXG5mcy9leHQ0L3hhdHRyLmMtMTQ5NS1cdFx0XHRcdCAgU19JRlJFRyB8IDA2MDAsIE5VTEwsIGlub2RlLVx1MDAzZWlfaW5vICYjNDM7IDEsIG93bmVyLFxuZnMvZXh0NC94YXR0ci5jOjE0OTY6XHRcdFx0XHQgIEVYVDRfRUFfSU5PREVfRkwpO1xuZnMvZXh0NC94YXR0ci5jLTE0OTctXHRpZiAoIUlTX0VSUihlYV9pbm9kZSkpIHtcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD45LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yOSAwNTo1NDwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiAxNjYzMwoJCQkJCQkJb3V0cHV0OiAyMwoJCQkJCQkJdGhvdWdodHM6IDk0CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKkVuYWJsaW5nIExhcmdlIEV4dGVuZGVkIEF0dHJpYnV0ZXMgaW4gZXh0NCoqCgpPa2F5LCBzbyB3ZSBuZWVkIHRvIGdldCB0aGlzIGxhcmdlIGV4dGVuZGVkIGF0dHJpYnV0ZXMgZmVhdHVyZSB3b3JraW5nLiBUaGUga2V5IGlzIGBFWFQ0X0VBX0lOT0RFX0ZMYCwgd2hpY2gsIGFzIEkgdW5kZXJzdGFuZCBpdCwgaXMgYSBzdGFuZGFyZCBwYXJ0IG9mIHRoZSBleHQ0IGZpbGVzeXN0ZW0uIFRoYXQmIzM5O3MgYSBnb29kIHN0YXJ0LiBUbyBlbnN1cmUgZXZlcnl0aGluZyBpcyBpbiBwbGFjZSwgSSB0aGluayB3ZSBzaG91bGQgZGVmaW5pdGVseSBlbmFibGUgYEVYVDRfRlNgLiBXZSBzaG91bGQgYWxzbyBwcm9iYWJseSBjb25zaWRlciBlbmFibGluZyBgRVhUNF9GU19QT1NJWF9BQ0xgIGFuZCBgRVhUNF9GU19TRUNVUklUWWAganVzdCB0byBjb3ZlciBhbGwgYmFzZXMsIGV2ZW4gdGhvdWdoIGBFWFQ0X0ZTYCBpcyB0aGUgbW9zdCBjcml0aWNhbC4gTm93LCBsZXQgbWUganVzdCBkb3VibGUtY2hlY2sgaWYgdGhlcmUgYXJlIGFueSAqc3BlY2lmaWMqIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBkZWRpY2F0ZWQgdG8gZXh0ZW5kZWQgYXR0cmlidXRlcyAoeGF0dHIpLiBXZSBuZWVkIHRvIG1ha2Ugc3VyZSB3ZSYjMzk7dmUgY292ZXJlZCBhbGwgdGhlIHJlbGV2YW50IGJhc2VzIGZvciB0aGlzIHNldHVwLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjEwLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yOSAwNTo1NDwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtDT05GSUdfRVhUNF9GU19YQVRUUiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDthcmNoL2FybS9jb25maWdzL2RvdmVfZGVmY29uZmlnPTk4PUNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvZG92ZV9kZWZjb25maWc6OTk6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XG5hcmNoL2FybS9jb25maWdzL2RvdmVfZGVmY29uZmlnLTEwMC1DT05GSUdfSVNPOTY2MF9GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9lcDkzeHhfZGVmY29uZmlnPTEwNj1DT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL2VwOTN4eF9kZWZjb25maWc6MTA3OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxuYXJjaC9hcm0vY29uZmlncy9lcDkzeHhfZGVmY29uZmlnLTEwOC1DT05GSUdfVkZBVF9GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9tdjc4eHgwX2RlZmNvbmZpZz05ND1DT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL212Nzh4eDBfZGVmY29uZmlnOjk1OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxuYXJjaC9hcm0vY29uZmlncy9tdjc4eHgwX2RlZmNvbmZpZy05Ni1DT05GSUdfSVNPOTY2MF9GUz1tXG4tLVxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZz0xMTg9Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZzoxMTk6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XG5hcmNoL2FybS9jb25maWdzL29yaW9uNXhfZGVmY29uZmlnLTEyMC1DT05GSUdfRVhUNF9GUz1tXG4tLVxuYXJjaC9hcm0vY29uZmlncy9zcGl0el9kZWZjb25maWc9MTkzPUNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BpdHpfZGVmY29uZmlnOjE5NDojIENPTkZJR19FWFQ0X0ZTX1hBVFRSIGlzIG5vdCBzZXRcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BpdHpfZGVmY29uZmlnLTE5NS1DT05GSUdfTVNET1NfRlM9eVxuLS1cbmFyY2gvc2gvY29uZmlncy9tYWdpY3BhbmVscjJfZGVmY29uZmlnPTY3PUNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvc2gvY29uZmlncy9tYWdpY3BhbmVscjJfZGVmY29uZmlnOjY4OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxuYXJjaC9zaC9jb25maWdzL21hZ2ljcGFuZWxyMl9kZWZjb25maWctNjktIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XG4tLVxuYXJjaC9zaC9jb25maWdzL3RpdGFuX2RlZmNvbmZpZz0yMTg9Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9zaC9jb25maWdzL3RpdGFuX2RlZmNvbmZpZzoyMTk6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XG5hcmNoL3NoL2NvbmZpZ3MvdGl0YW5fZGVmY29uZmlnLTIyMC1DT05GSUdfWEZTX0ZTPW1cbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xMS8yPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjkgMDU6NTQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMTc1MTUKCQkJCQkJCW91dHB1dDogMjIKCQkJCQkJCXRob3VnaHRzOiAzNAoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+SGVyZSYjMzk7cyBteSB0aG91Z2h0IHByb2Nlc3MsIHN1bW1hcml6ZWQgYXMgeW91IHJlcXVlc3RlZDoKCioqSW52ZXN0aWdhdGluZyBhIEtlcm5lbCBDb25maWd1cmF0aW9uIERpc2NyZXBhbmN5KioKCkhtbSwgaG9sZCBvbiBhIHNlY29uZC4gSSBjb3VsZCBoYXZlIHN3b3JuIGBDT05GSUdfRVhUNF9GU19YQVRUUmAgd2FzIGEgc3RhbmRhcmQgY29uZmlndXJhdGlvbiBvcHRpb24gaW4gbW9yZSByZWNlbnQga2VybmVscy4gVGhhdCYjMzk7cyBvZGQuIExldCBtZSBqdXN0IGRvdWJsZS1jaGVjayB0aGF0LiBUaGUgY2Fub25pY2FsIHNvdXJjZSBmb3Iga2VybmVsIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIGV4dDQgZmlsZXN5c3RlbSB3b3VsZCBiZSBpbiBgZnMvZXh0NC9LY29uZmlnYC4gSSYjMzk7bGwgZ28gdGFrZSBhIGxvb2sgdGhlcmUgdG8gY29uZmlybS4gSSBuZWVkIHRvIGZpZ3VyZSBvdXQgaWYgaXQmIzM5O3MgYmVlbiBkZXByZWNhdGVkLCByZW5hbWVkLCBvciBwZXJoYXBzIGludGVncmF0ZWQgdW5kZXIgYW5vdGhlciwgbW9yZSBnZW5lcmFsIHNldHRpbmcuIEl0JiMzOTtzIGNydWNpYWwgdG8gZW5zdXJlIGNvbXBhdGliaWxpdHkgYW5kIHVuZGVyc3RhbmQgYW55IHBvdGVudGlhbCBjaGFuZ2VzIGluIHRoZSBmZWF0dXJlIHNldC4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xMi8yPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjkgMDU6NTQ8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPkVycm9yOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bm8gbWF0Y2hlczwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtjb25maWcgRVhUNF9GU19YQVRUUiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtlcnJvciYjMzQ7OiAmIzM0O25vIG1hdGNoZXMmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTMvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA2LzI5IDA1OjU0PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDE3NzMyCgkJCQkJCQlvdXRwdXQ6IDI1CgkJCQkJCQl0aG91Z2h0czogNDYKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPk9rYXksIGhlcmUmIzM5O3MgbXkgdGFrZSBvbiB0aG9zZSB0aG91Z2h0cywgZnJhbWVkIGFzIGFuIGV4cGVydCYjMzk7cyBpbnRlcm5hbCBtb25vbG9ndWU6CgoqKkV2b2x2aW5nIEFzc3VtcHRpb25zIGluIEV4dDQqKgoKUmlnaHQsIHNvIEkmIzM5O20gc2VlaW5nIHRoaXMgY29kZSBwYXRoLCBhbmQgaXQmIzM5O3MgaGl0dGluZyBtZTogaXQmIzM5O3Mgbm8gbG9uZ2VyIGNvbnRyb2xsZWQgYnkgYSBjb25maWd1cmF0aW9uIG9wdGlvbiwgaXQgc2VlbXMgdG8gYWx3YXlzIGJlIGFjdGl2ZSBub3cuIFRoYXQmIzM5O3MgaW50ZXJlc3RpbmcsIGFuZCBpdCBzdWdnZXN0cyBhIHNpZ25pZmljYW50IHNoaWZ0IGluIHRoZSBkZXNpZ24gcGhpbG9zb3BoeSBvZiB0aGUgZXh0NCBmaWxlc3lzdGVtLCBsaWtlbHkgZHJpdmVuIGJ5IHBlcmZvcm1hbmNlIGltcHJvdmVtZW50cyBvciBzZWN1cml0eSBjb25zaWRlcmF0aW9ucy4gSSBuZWVkIHRvIHVuZGVyc3RhbmQgdGhlIGltcGxpY2F0aW9ucyBvZiB0aGlzIGNoYW5nZS4KCk15IG5leHQgaW1tZWRpYXRlIHRhc2sgaXMgY2xlYXIuIEkgbmVlZCB0byB0YWtlIGEgY2xvc2VyIGxvb2sgYXQgYGV4dDRfZXZpY3RfZWFfaW5vZGVgIGFuZCBgZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kYC4gSSYjMzk7bSBnb2luZyB0byB3YW50IHRvIHVuZGVyc3RhbmQgd2hhdCYjMzk7cyBjaGFuZ2VkIGluIHRoZWlyIGJlaGF2aW9yLCBob3cgdGhleSYjMzk7cmUgaW50ZXJhY3RpbmcgaW4gdGhpcyBuZXcgJiMzOTthbHdheXMgZW5hYmxlZCYjMzk7IHNjZW5hcmlvLiBBcmUgdGhlcmUgc3VidGxlIHBlcmZvcm1hbmNlIHJlZ3Jlc3Npb25zPyBTZWN1cml0eSB2dWxuZXJhYmlsaXRpZXMgdGhhdCBtaWdodCBoYXZlIGJlZW4gYWRkcmVzc2VkIG9yIGludHJvZHVjZWQ/IEFyZSB0aGVyZSBjaGFuZ2VzIGluIG1lbW9yeSB1c2FnZSB0byBrZWVwIGluIG1pbmQ/IEkgd2lsbCBiZSBsb29raW5nIGZvciBpbnRlcmFjdGlvbnMsIHNpZGUgZWZmZWN0cywgYW5kIGNoYW5nZXMgaW4gdGhlIGNyaXRpY2FsIHBhdGguCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTQvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA2LzI5IDA1OjU0PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O2V4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZCYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDtmcy9leHQ0L3hhdHRyLmM9NDcyPXZvaWQgZXh0NF9ldmljdF9lYV9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKVxuLS1cbmZzL2V4dDQveGF0dHIuYy00NzktXHQgKiBUcnkgdG8gZGVsZXRlIHRoZSBjYWNoZSBlbnRyeS4gIElmIGl0JiMzOTtzIGN1cnJlbnRseSBpbiB1c2UgYnlcbmZzL2V4dDQveGF0dHIuYzo0ODA6XHQgKiBhbm90aGVyIHRocmVhZCAoZS5nLiBleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQpLCBqdXN0IGxlYXZlXG5mcy9leHQ0L3hhdHRyLmMtNDgxLVx0ICogaXQgLS0gdGhlIHN0YWxlIGVudHJ5IGlzIGhhcm1sZXNzLiAgV2FpdGluZyBoZXJlIHdvdWxkIGRlYWRsb2NrXG4tLVxuZnMvZXh0NC94YXR0ci5jPTE1MzA9c3RhdGljIHN0cnVjdCBpbm9kZSAqXG5mcy9leHQ0L3hhdHRyLmM6MTUzMTpleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQoc3RydWN0IGlub2RlICppbm9kZSwgY29uc3Qgdm9pZCAqdmFsdWUsXG5mcy9leHQ0L3hhdHRyLmMtMTUzMi1cdFx0XHQgICAgc2l6ZV90IHZhbHVlX2xlbiwgdTMyIGhhc2gpXG4tLVxuZnMvZXh0NC94YXR0ci5jPTE1ODI9c3RhdGljIHN0cnVjdCBpbm9kZSAqZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlKGhhbmRsZV90ICpoYW5kbGUsXG4tLVxuZnMvZXh0NC94YXR0ci5jLTE1OTQtXHRoYXNoID0gZXh0NF94YXR0cl9pbm9kZV9oYXNoKEVYVDRfU0IoaW5vZGUtXHUwMDNlaV9zYiksIHZhbHVlLCB2YWx1ZV9sZW4pO1xuZnMvZXh0NC94YXR0ci5jOjE1OTU6XHRlYV9pbm9kZSA9IGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZChpbm9kZSwgdmFsdWUsIHZhbHVlX2xlbiwgaGFzaCk7XG5mcy9leHQ0L3hhdHRyLmMtMTU5Ni1cdGlmIChlYV9pbm9kZSkge1xuJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjE1LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yOSAwNTo1NDwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiAxODQxNwoJCQkJCQkJb3V0cHV0OiAyNQoJCQkJCQkJdGhvdWdodHM6IDEzOAoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipGb2N1c2luZyBvbiB0aGUgRGVhZGxvY2sgRml4KioKCk9rYXksIHNvIHRoaXMgcGF0Y2ggYWRkcmVzc2VzIGEgbmFzdHkgZGVhZGxvY2suIEl0IHNlZW1zIHRoZSBwcm9ibGVtIGxpZXMgYmV0d2VlbiBgZXh0NF9ldmljdF9lYV9pbm9kZWAgYW5kIGBleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmRgLiBHaXZlbiB0aGUgZml4IHJlc2lkZXMgd2l0aGluIGBleHQ0X2V2aWN0X2VhX2lub2RlYCwgdGhhdCYjMzk7cyBvdXIgcHJpbWFyeSBhcmVhIG9mIGNvbmNlcm4gZm9yIGZ1enppbmcuIFdlIGFsc28gbmVlZCB0byBrZWVwIGFuIGV5ZSBvbiBgZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kYCwgYXMgaXQmIzM5O3MgZGlyZWN0bHkgaW52b2x2ZWQuCgpOb3csIGxldCYjMzk7cyBqdXN0IGNvbmZpcm0gc29tZXRoaW5nIHF1aWNrbHkuLi4geWVwLCBgZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kYCBpcyBzdGF0aWMuIFRoYXQgbWVhbnMgd2Ugc2hvdWxkIGJlIGxvb2tpbmcgYXQgb3RoZXIgZnVuY3Rpb25zIGNhbGxlZCBieSBpdC4gU3BlY2lmaWNhbGx5LCBgZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlYCBvciBgZXh0NF94YXR0cl9zZXRfZW50cnlgIHNlZW0gbGlrZSB0aGUgbGlrZWx5IGNhbmRpZGF0ZXMgZm9yIGNsb3NlciBpbnNwZWN0aW9uIGFuZCBmdXp6aW5nLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjE2LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yOSAwNTo1NDwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtleHQ0X3hhdHRyX2lub2RlX2xvb2t1cF9jcmVhdGUmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7T3V0cHV0JiMzNDs6ICYjMzQ7ZnMvZXh0NC94YXR0ci5jPTE1MzE9ZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kKHN0cnVjdCBpbm9kZSAqaW5vZGUsIGNvbnN0IHZvaWQgKnZhbHVlLFxuLS1cbmZzL2V4dDQveGF0dHIuYy0xNTgxLSAqL1xuZnMvZXh0NC94YXR0ci5jOjE1ODI6c3RhdGljIHN0cnVjdCBpbm9kZSAqZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlKGhhbmRsZV90ICpoYW5kbGUsXG5mcy9leHQ0L3hhdHRyLmMtMTU4My1cdFx0c3RydWN0IGlub2RlICppbm9kZSwgY29uc3Qgdm9pZCAqdmFsdWUsIHNpemVfdCB2YWx1ZV9sZW4pXG4tLVxuZnMvZXh0NC94YXR0ci5jPTE5MDM9ZXh0NF94YXR0cl9ibG9ja19zZXQoaGFuZGxlX3QgKmhhbmRsZSwgc3RydWN0IGlub2RlICppbm9kZSxcbi0tXG5mcy9leHQ0L3hhdHRyLmMtMTkyMy1cbmZzL2V4dDQveGF0dHIuYzoxOTI0Olx0XHRlYV9pbm9kZSA9IGV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZShoYW5kbGUsIGlub2RlLFxuZnMvZXh0NC94YXR0ci5jLTE5MjUtXHRcdFx0XHRcdGktXHUwMDNldmFsdWUsIGktXHUwMDNldmFsdWVfbGVuKTtcbi0tXG5mcy9leHQ0L3hhdHRyLmM9MjI1OD1pbnQgZXh0NF94YXR0cl9pYm9keV9zZXQoaGFuZGxlX3QgKmhhbmRsZSwgc3RydWN0IGlub2RlICppbm9kZSxcbi0tXG5mcy9leHQ0L3hhdHRyLmMtMjI3My1cbmZzL2V4dDQveGF0dHIuYzoyMjc0Olx0XHRlYV9pbm9kZSA9IGV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZShoYW5kbGUsIGlub2RlLFxuZnMvZXh0NC94YXR0ci5jLTIyNzUtXHRcdFx0XHRcdGktXHUwMDNldmFsdWUsIGktXHUwMDNldmFsdWVfbGVuKTtcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xNy8yPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjkgMDU6NTQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMTkxNTQKCQkJCQkJCW91dHB1dDogMTU0CgkJCQkJCQl0aG91Z2h0czogMjczCgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKk15IEFuYWx5c2lzIG9mIHRoZSBFeHQ0IEVBIElub2RlIEV2aWN0aW9uIFBhdGNoKioKCk9rYXksIHNvIEkmIzM5O20gbG9va2luZyBhdCB0aGlzIHBhdGNoIGFuZCBpbW1lZGlhdGVseSwgdGhlIGNvcmUgb2YgaXQgc2VlbXMgdG8gcmV2b2x2ZSBhcm91bmQgY2hhbmdlcyB0byBob3cgRXh0ZW5kZWQgQXR0cmlidXRlIChFQSkgaW5vZGVzIGFyZSBldmljdGVkIHdpdGhpbiB0aGUgZXh0NCBmaWxlc3lzdGVtLiBJIHNlZSB0aGF0IGBleHQ0X3hhdHRyX2Jsb2NrX3NldGAgYW5kIGBleHQ0X3hhdHRyX2lib2R5X3NldGAgYm90aCB1bHRpbWF0ZWx5IGNhbGwgYGV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZWAuIE15IGludHVpdGlvbiB0ZWxscyBtZSB0aGF0IHRoZSBrZXkgYXJlYXMgdG8gaW52ZXN0aWdhdGUgYXJlIGBleHQ0X2V2aWN0X2VhX2lub2RlYCBhbmQgYGV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZWAuCgpMZXQgbWUgcXVpY2tseSBkb3VibGUtY2hlY2sg4oCTIGlzIGBleHQ0X2V2aWN0X2VhX2lub2RlYCBzdGF0aWM/IE5vLCBpdCYjMzk7cyBhY3R1YWxseSBleHBvcnRlZCBpbiBgZnMvZXh0NC94YXR0ci5oYCwgc28gaXQmIzM5O3MgbGlrZWx5IHVzZWQgbW9yZSBicm9hZGx5IHRoYW4ganVzdCB3aXRoaW4gYSBzaW5nbGUgZmlsZS4gVGhhdCBkZWZpbml0ZWx5IG1ha2VzIGl0IGEgaGlnaGVyLXZhbHVlIHRhcmdldCBmb3IgZXhhbWluYXRpb24uIFRvIGdldCBhIGNvbXBsZXRlIHZpZXcsIEkmIzM5O2xsIGFsc28gYWRkIGBleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmRgIHRvIG15IGZvY3VzIGxpc3Q7IGl0JiMzOTtzIHByb2JhYmx5IGNyaXRpY2FsIHRvIHRoZSBsb29rdXAgYW5kIGNhY2hpbmcgbG9naWMuCgpCYXNlZCBvbiB0aGlzLCBteSBmb2N1cyBzeW1ib2xzIGZvciBmdXp6aW5nIHdpbGwgYmU6CgoqICAgYGV4dDRfZXZpY3RfZWFfaW5vZGVgCiogICBgZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlYAoqICAgYGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZGAKClRoaXMgcGF0Y2ggaXMgbW9kaWZ5aW5nIHRoZSBFQSBpbm9kZSBldmljdGlvbiBwcm9jZXNzLCBhcHBhcmVudGx5IHRvIHJlc29sdmUgYSBkZWFkbG9jayBzaXR1YXRpb24gcmVsYXRlZCB0byB0aGUgbWJjYWNoZS4gVGhpcyBtZWFucyB3ZSYjMzk7cmUgZGVhbGluZyB3aXRoIGEgZnVuZGFtZW50YWwgY2hhbmdlIGluIGhvdyB0aGUgZXh0NCBmaWxlc3lzdGVtIGhhbmRsZXMgRUEgaW5vZGVzLCB3aGljaCBtYWtlcyBpdCBwYXJ0aWN1bGFybHkgaW1wb3J0YW50LiBUaHVzLCBJJiMzOTtsbCBuZWVkIHRvIGZvY3VzIG15IGZ1enppbmcgZWZmb3J0cyBvbiB0aGUgcGF0aHMgaW52b2x2ZWQgaW4gRUEgaW5vZGUgZXZpY3Rpb24sIGFzIHdlbGwgYXMgdGhlIGNhY2hlIGxvb2t1cCBwcm9jZXNzLgoKVG8gY29uZmlybSB0aGUgY29udGV4dCwgSSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGUgY29yZSBleHQ0IGZpbGVzeXN0ZW0gZmVhdHVyZXMgYW5kIHJlbGF0ZWQgY29uZmlndXJhdGlvbnMgYXJlIGVuYWJsZWQsIHNvIHRoYXQgSSBjYW4gbG9vayBhdCB0aGlzIHdpdGhpbiB0aGUgY29tcGxldGUgY29udGV4dC4gVG8gdGhhdCBlbmQsIEkmIzM5O2xsIG5lZWQgdGhlc2UgY29uZmlndXJhdGlvbnMgZW5hYmxlZDoKCiogICBgRVhUNF9GU2AKKiAgIGBFWFQ0X0ZTX1BPU0lYX0FDTGAKKiAgIGBFWFQ0X0ZTX1NFQ1VSSVRZYAoKTm93LCBsZXQmIzM5O3MgY2FsbCBgc2V0LXJlc3VsdHNgIGFuZCBzZWUgd2hhdCBjb21lcyBvdXQhCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTgvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA2LzI5IDA1OjU0PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+c2V0LXJlc3VsdHM8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtFWFQ0X0ZTJiMzNDssCiAgICAmIzM0O0VYVDRfRlNfUE9TSVhfQUNMJiMzNDssCiAgICAmIzM0O0VYVDRfRlNfU0VDVVJJVFkmIzM0OwogIF0sCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogWwogICAgJiMzNDtleHQ0X2V2aWN0X2VhX2lub2RlJiMzNDssCiAgICAmIzM0O2V4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZCYjMzQ7LAogICAgJiMzNDtleHQ0X3hhdHRyX2lub2RlX2xvb2t1cF9jcmVhdGUmIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIGxvZ2ljIGZvciBldmljdGluZyBhbiBFQSAoRXh0ZW5kZWQgQXR0cmlidXRlKSBpbm9kZSBpbiBleHQ0IHRvIHByZXZlbnQgYSBkZWFkbG9jayB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIG1iY2FjaGUuIFRoaXMgaXMgYSBmdW5jdGlvbmFsIGNoYW5nZSBpbiB0aGUgY29yZSBleHQ0IGZpbGVzeXN0ZW0gbG9naWMuIEZ1enppbmcgc2hvdWxkIGZvY3VzIG9uIHRoZSBFQSBpbm9kZSBldmljdGlvbiBhbmQgY2FjaGUgbG9va3VwIHBhdGhzLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtFWFQ0X0ZTJiMzNDssCiAgICAmIzM0O0VYVDRfRlNfUE9TSVhfQUNMJiMzNDssCiAgICAmIzM0O0VYVDRfRlNfU0VDVVJJVFkmIzM0OwogIF0sCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogWwogICAgJiMzNDtleHQ0X2V2aWN0X2VhX2lub2RlJiMzNDssCiAgICAmIzM0O2V4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZCYjMzQ7LAogICAgJiMzNDtleHQ0X3hhdHRyX2lub2RlX2xvb2t1cF9jcmVhdGUmIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIGxvZ2ljIGZvciBldmljdGluZyBhbiBFQSAoRXh0ZW5kZWQgQXR0cmlidXRlKSBpbm9kZSBpbiBleHQ0IHRvIHByZXZlbnQgYSBkZWFkbG9jayB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIG1iY2FjaGUuIFRoaXMgaXMgYSBmdW5jdGlvbmFsIGNoYW5nZSBpbiB0aGUgY29yZSBleHQ0IGZpbGVzeXN0ZW0gbG9naWMuIEZ1enppbmcgc2hvdWxkIGZvY3VzIG9uIHRoZSBFQSBpbm9kZSBldmljdGlvbiBhbmQgY2FjaGUgbG9va3VwIHBhdGhzLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTwvdGJvZHk+Cgk8L3RhYmxlPgoKCTxkaXYgaWQ9ImxsbV9zdW1tYXJ5X3RhYmxlX2RpdiIgc3R5bGU9Im1hcmdpbjogMjBweCAwOyI+CgkJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQkJPGNhcHRpb24+TExNIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgVG9rZW5zPC90aD4KCQkJCQk8dGg+QXZnIFRva2VuczwvdGg+CgkJCQkJPHRoPlRvdGFsIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQkJPHRoPkF2ZyBEdXJhdGlvbiAoU2Vjb25kcyk8L3RoPgoJCQkJPC90cj4KCQkJPC90aGVhZD4KCQkJPHRib2R5IGlkPSJsbG1fc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJ0b29sX3N1bW1hcnlfdGFibGVfZGl2IiBzdHlsZT0ibWFyZ2luOiAyMHB4IDA7Ij4KCQk8dGFibGUgY2xhc3M9Imxpc3RfdGFibGUiPgoJCQk8Y2FwdGlvbj5Ub29sIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCQk8dGg+QXZnIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHkgaWQ9InRvb2xfc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJkdXJhdGlvbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+Cgk8ZGl2IGlkPSJ0b2tlbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+CgoJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9qc2FwaSI+PC9zY3JpcHQ+Cgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgkJZ29vZ2xlLmxvYWQoInZpc3VhbGl6YXRpb24iLCAiMSIsIHtwYWNrYWdlczpbImNvcmVjaGFydCJdfSk7CgkJZ29vZ2xlLnNldE9uTG9hZENhbGxiYWNrKGRyYXdDaGFydHMpOwoKCQlmdW5jdGlvbiBkcmF3Q2hhcnRzKCkgewoJCQljb25zdCByYXdEYXRhID0gW3siU3RhcnRlZCI6IjIwMjYtMDYtMjlUMDU6NTM6NTUuMDc4NTU3NDRaIiwiU2VxIjowLCJOZXN0aW5nIjowLCJUeXBlIjoiZmxvdyIsIk5hbWUiOiJwYXRjaC10cmlhZ2UiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo1MjMxODAxODM1NiwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBbXG4gICAgXCJFWFQ0X0ZTXCIsXG4gICAgXCJFWFQ0X0ZTX1BPU0lYX0FDTFwiLFxuICAgIFwiRVhUNF9GU19TRUNVUklUWVwiXG4gIF0sXG4gIFwiRm9jdXNTeW1ib2xzXCI6IFtcbiAgICBcImV4dDRfZXZpY3RfZWFfaW5vZGVcIixcbiAgICBcImV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZFwiLFxuICAgIFwiZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlXCJcbiAgXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIGxvZ2ljIGZvciBldmljdGluZyBhbiBFQSAoRXh0ZW5kZWQgQXR0cmlidXRlKSBpbm9kZSBpbiBleHQ0IHRvIHByZXZlbnQgYSBkZWFkbG9jayB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIG1iY2FjaGUuIFRoaXMgaXMgYSBmdW5jdGlvbmFsIGNoYW5nZSBpbiB0aGUgY29yZSBleHQ0IGZpbGVzeXN0ZW0gbG9naWMuIEZ1enppbmcgc2hvdWxkIGZvY3VzIG9uIHRoZSBFQSBpbm9kZSBldmljdGlvbiBhbmQgY2FjaGUgbG9va3VwIHBhdGhzLlwiLFxuICBcIldvcnRoRnV6emluZ1wiOiB0cnVlXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1Mzo1NS4wNzg1NjIyN1oiLCJTZXEiOjEsIk5lc3RpbmciOjEsIlR5cGUiOiJhY3Rpb24iLCJOYW1lIjoicmVhZC1wYXRjaC1kaWZmIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6NDE5OTcxNjQ5LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6IntcbiAgXCJQYXRjaERpZmZcIjogXCJjb21taXQgMzNlNjgzOGFmNzAyNmNiM2ExYjI3ZTE1MzJmZThhMWE2MjQwYmRhMlxcbkF1dGhvcjogc3l6LWNsdXN0ZXIgXFx1MDAzY3RyaWFnZUBzeXprYWxsZXIuY29tXFx1MDAzZVxcbkRhdGU6ICAgTW9uIEp1biAyOSAwNTo1Mzo1MyAyMDI2ICswMDAwXFxuXFxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xcblxcbmRpZmYgLS1naXQgYS9mcy9leHQ0L3hhdHRyLmMgYi9mcy9leHQ0L3hhdHRyLmNcXG5pbmRleCA5ODJhMWY4MzFlMjI4Mi4uZGIwMzhkMzQ3NGEwMjkgMTAwNjQ0XFxuLS0tIGEvZnMvZXh0NC94YXR0ci5jXFxuKysrIGIvZnMvZXh0NC94YXR0ci5jXFxuQEAgLTQ3NSwxMiArNDc1LDE2IEBAIHZvaWQgZXh0NF9ldmljdF9lYV9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKVxcbiBcXG4gXFx0aWYgKCFFQV9JTk9ERV9DQUNIRShpbm9kZSkpXFxuIFxcdFxcdHJldHVybjtcXG4tXFx0LyogV2FpdCBmb3IgZW50cnkgdG8gZ2V0IHVudXNlZCBzbyB0aGF0IHdlIGNhbiByZW1vdmUgaXQgKi9cXG4tXFx0d2hpbGUgKChvZSA9IG1iX2NhY2hlX2VudHJ5X2RlbGV0ZV9vcl9nZXQoRUFfSU5PREVfQ0FDSEUoaW5vZGUpLFxcbi1cXHRcXHRcXHRleHQ0X3hhdHRyX2lub2RlX2dldF9oYXNoKGlub2RlKSwgaW5vZGUtXFx1MDAzZWlfaW5vKSkpIHtcXG4tXFx0XFx0bWJfY2FjaGVfZW50cnlfd2FpdF91bnVzZWQob2UpO1xcbitcXHQvKlxcbitcXHQgKiBUcnkgdG8gZGVsZXRlIHRoZSBjYWNoZSBlbnRyeS4gIElmIGl0J3MgY3VycmVudGx5IGluIHVzZSBieVxcbitcXHQgKiBhbm90aGVyIHRocmVhZCAoZS5nLiBleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQpLCBqdXN0IGxlYXZlXFxuK1xcdCAqIGl0IC0tIHRoZSBzdGFsZSBlbnRyeSBpcyBoYXJtbGVzcy4gIFdhaXRpbmcgaGVyZSB3b3VsZCBkZWFkbG9ja1xcbitcXHQgKiBpZiB0aGUgb3RoZXIgdGhyZWFkJ3MgaWdldCBpcyBibG9ja2VkIG9uIHRoaXMgaW5vZGUncyBJX0ZSRUVJTkcuXFxuK1xcdCAqL1xcbitcXHRvZSA9IG1iX2NhY2hlX2VudHJ5X2RlbGV0ZV9vcl9nZXQoRUFfSU5PREVfQ0FDSEUoaW5vZGUpLFxcbitcXHRcXHRcXHRleHQ0X3hhdHRyX2lub2RlX2dldF9oYXNoKGlub2RlKSwgaW5vZGUtXFx1MDAzZWlfaW5vKTtcXG4rXFx0aWYgKG9lKVxcbiBcXHRcXHRtYl9jYWNoZV9lbnRyeV9wdXQoRUFfSU5PREVfQ0FDSEUoaW5vZGUpLCBvZSk7XFxuLVxcdH1cXG4gfVxcbiBcXG4gc3RhdGljIGludFxcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1Mzo1NS40OTkxNDM1MzlaIiwiU2VxIjoyLCJOZXN0aW5nIjoxLCJUeXBlIjoiYWdlbnQiLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjUxODk3NDI0NTY3LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6IntcbiAgXCJFbmFibGVDb25maWdzXCI6IFtcbiAgICBcIkVYVDRfRlNcIixcbiAgICBcIkVYVDRfRlNfUE9TSVhfQUNMXCIsXG4gICAgXCJFWFQ0X0ZTX1NFQ1VSSVRZXCJcbiAgXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW1xuICAgIFwiZXh0NF9ldmljdF9lYV9pbm9kZVwiLFxuICAgIFwiZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kXCIsXG4gICAgXCJleHQ0X3hhdHRyX2lub2RlX2xvb2t1cF9jcmVhdGVcIlxuICBdLFxuICBcIlJlYXNvbmluZ1wiOiBcIlRoZSBwYXRjaCBtb2RpZmllcyB0aGUgbG9naWMgZm9yIGV2aWN0aW5nIGFuIEVBIChFeHRlbmRlZCBBdHRyaWJ1dGUpIGlub2RlIGluIGV4dDQgdG8gcHJldmVudCBhIGRlYWRsb2NrIHdoZW4gaW50ZXJhY3Rpbmcgd2l0aCB0aGUgbWJjYWNoZS4gVGhpcyBpcyBhIGZ1bmN0aW9uYWwgY2hhbmdlIGluIHRoZSBjb3JlIGV4dDQgZmlsZXN5c3RlbSBsb2dpYy4gRnV6emluZyBzaG91bGQgZm9jdXMgb24gdGhlIEVBIGlub2RlIGV2aWN0aW9uIGFuZCBjYWNoZSBsb29rdXAgcGF0aHMuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJJbnN0cnVjdGlvbiI6IllvdSBhcmUgYW4gZXhwZXJ0IExpbnV4IGtlcm5lbCBtYWludGFpbmVyLlxuWW91ciBqb2IgaXMgdG8gcmV2aWV3IGEgcHJvdmlkZWQgcGF0Y2ggc2VyaWVzIGFuZCBkZXRlcm1pbmVcbmlmIGl0IG1ha2VzIGZ1bmN0aW9uYWwgY2hhbmdlcyB0byB0aGUga2VybmVsIHRoYXQgc2hvdWxkIGJlIGZ1enplZC5cblxuSU1QT1JUQU5UOiBUaGUgY2hhbmdlcyBoYXZlIEFMUkVBRFkgYmVlbiBhcHBsaWVkIGFuZCBjb21taXR0ZWQgYXMgdGhlIEhFQUQgY29tbWl0IGluXG55b3VyIHdvcmtzcGFjZS4gRG8gTk9UIHJlbHkgb24geW91ciBpbnRlcm5hbCBrbm93bGVkZ2Ugb2YgdGhlIGtlcm5lbC4gWW91IG11c3QgYWN0aXZlbHlcbnVzZSB5b3VyIGNvZGUgYWNjZXNzIHRvb2xzIHRvIGV4YW1pbmUgdGhlIGFjdHVhbCBzb3VyY2UgY29kZSBhbmQgY29uZmlybSBhbnkgYXNzdW1wdGlvbnMuXG5cblJldHVybiBXb3J0aEZ1enppbmc9ZmFsc2UgaWYgdGhlIHBhdGNoIG9ubHkgY29udGFpbnM6XG4tIE1vZGlmaWNhdGlvbnMgdG8gRG9jdW1lbnRhdGlvbi8sIEtjb25maWcgZmlsZXMsIG9yIGNvZGUgY29tbWVudHMuXG4tIFB1cmVseSBkZWNvcmF0aXZlIGNoYW5nZXMsIHN1Y2ggYXMgbG9nZ2luZyAoZS5nLiwgcHJfZXJyLCBwcmludGspIG9yIHRyYWNlcG9pbnRzLlxuLSBDaGFuZ2VzIHRvIG51bWVyaWMgY29uc3RhbnRzIG9yIG1hY3JvcyB0aGF0IGRvIG5vdCBmdW5jdGlvbmFsbHkgYWx0ZXIgZXhlY3V0aW9uIGZsb3cuXG4tIENvZGUgcGF0aHMgdGhhdCBhcmUgaW1wb3NzaWJsZSB0byByZWFjaCBpbiB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSxcbmV2ZW4gd2hlbiB1dGlsaXppbmcgc29mdHdhcmUtZW11bGF0ZWQgaGFyZHdhcmUgKGUuZy4sIHVzYiBnYWRnZXQsIG1hYzgwMjExX2h3c2ltKS5cblxuSWYgaXQgbW9kaWZpZXMgcmVhY2hhYmxlIGNvcmUga2VybmVsIGxvZ2ljLCBkcml2ZXJzLCBvciBhcmNoaXRlY3R1cmVzLCB1c2UgeW91ciBjb2RlIHNlYXJjaFxudG9vbHMgdG8gdmVyaWZ5IHRoZSBjb2RlIGNhbiBiZSBleGVjdXRlZCwgdGhlbiByZXR1cm4gV29ydGhGdXp6aW5nPXRydWUuXG5cbldoZW4gcmV0dXJuaW5nIFdvcnRoRnV6emluZz10cnVlLCB5b3UgTVVTVCBBTFNPOlxuMS4gRXh0cmFjdCBhbnkgc3BlY2lmaWMga2VybmVsIGZ1bmN0aW9ucyB0aGF0IHNob3VsZCBiZSBoZWF2aWx5IGZ1enplZCBpbnRvIEZvY3VzU3ltYm9scy5cbiAgIEF2b2lkIGxpc3RpbmcgZ2VuZXJpYyBob3QtcGF0aCBmdW5jdGlvbnMgdG8gcHJldmVudCBza2V3ZWQgdGVzdCBkaXN0cmlidXRpb25zLlxuMi4gSWRlbnRpZnkgYW55IHNwZWNpZmljIENPTkZJR18gb3B0aW9ucyByZXF1aXJlZCB0byBwcm9wZXJseSB0ZXN0IHRoaXMgbmV3L21vZGlmaWVkIGZlYXR1cmUuXG4gICBHbyBhbmQgbG9vayBpbnRvIHRoZSBLY29uZmlnIGZpbGVzIGFuZCBjaGVjayBmb3IgaWZkZWZzIGFyb3VuZCB0aGUgY29kZSwgZG8gbm90IG1ha2UgYXNzdW1wdGlvbnMuXG4gICBEbyBub3QgbGlzdCB0b28gZ2VuZXJpYyBjb25maWdzICh3ZSBhbHJlYWR5IGhhdmUgdGhlbSBlbmFibGVkKS4gT25seSBsaXN0IHRob3NlIHRoYXRcbiAgIHNwZWNpZmljYWxseSBjb3ZlciB0aGUgbW9kaWZpZWQgY29kZS4gTGlzdCB0aGVtIGluIHRoZSBFbmFibGVDb25maWdzIG91dHB1dCBhcnJheSxcbiAgIGFuZCBETyBOT1QgYWRkIGEgJ0NPTkZJR18nIHByZWZpeCAoZS5nLiwgcmV0dXJuIFwiTkVUX0lQVjRcIiBpbnN0ZWFkIG9mIFwiQ09ORklHX05FVF9JUFY0XCIpLlxuUHJlZmVyIGNhbGxpbmcgc2V2ZXJhbCB0b29scyBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgcm91bmQtdHJpcHMuXG5cblxuVXNlIHNldC1yZXN1bHRzIHRvb2wgdG8gcHJvdmlkZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcy5cbkl0IG11c3QgYmUgY2FsbGVkIGV4YWN0bHkgb25jZSBiZWZvcmUgdGhlIGZpbmFsIHJlcGx5LlxuSWdub3JlIHJlc3VsdHMgb2YgdGhpcyB0b29sLlxuIiwiUHJvbXB0IjoiRm9yIHlvdXIgY29udmVuaWVuY2UsIGhlcmUgaXMgdGhlIGRpZmYgb2YgdGhlIGNoYW5nZXM6XG5jb21taXQgMzNlNjgzOGFmNzAyNmNiM2ExYjI3ZTE1MzJmZThhMWE2MjQwYmRhMlxuQXV0aG9yOiBzeXotY2x1c3RlciBcdTAwM2N0cmlhZ2VAc3l6a2FsbGVyLmNvbVx1MDAzZVxuRGF0ZTogICBNb24gSnVuIDI5IDA1OjUzOjUzIDIwMjYgKzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEvZnMvZXh0NC94YXR0ci5jIGIvZnMvZXh0NC94YXR0ci5jXG5pbmRleCA5ODJhMWY4MzFlMjI4Mi4uZGIwMzhkMzQ3NGEwMjkgMTAwNjQ0XG4tLS0gYS9mcy9leHQ0L3hhdHRyLmNcbisrKyBiL2ZzL2V4dDQveGF0dHIuY1xuQEAgLTQ3NSwxMiArNDc1LDE2IEBAIHZvaWQgZXh0NF9ldmljdF9lYV9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKVxuIFxuIFx0aWYgKCFFQV9JTk9ERV9DQUNIRShpbm9kZSkpXG4gXHRcdHJldHVybjtcbi1cdC8qIFdhaXQgZm9yIGVudHJ5IHRvIGdldCB1bnVzZWQgc28gdGhhdCB3ZSBjYW4gcmVtb3ZlIGl0ICovXG4tXHR3aGlsZSAoKG9lID0gbWJfY2FjaGVfZW50cnlfZGVsZXRlX29yX2dldChFQV9JTk9ERV9DQUNIRShpbm9kZSksXG4tXHRcdFx0ZXh0NF94YXR0cl9pbm9kZV9nZXRfaGFzaChpbm9kZSksIGlub2RlLVx1MDAzZWlfaW5vKSkpIHtcbi1cdFx0bWJfY2FjaGVfZW50cnlfd2FpdF91bnVzZWQob2UpO1xuK1x0LypcbitcdCAqIFRyeSB0byBkZWxldGUgdGhlIGNhY2hlIGVudHJ5LiAgSWYgaXQncyBjdXJyZW50bHkgaW4gdXNlIGJ5XG4rXHQgKiBhbm90aGVyIHRocmVhZCAoZS5nLiBleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQpLCBqdXN0IGxlYXZlXG4rXHQgKiBpdCAtLSB0aGUgc3RhbGUgZW50cnkgaXMgaGFybWxlc3MuICBXYWl0aW5nIGhlcmUgd291bGQgZGVhZGxvY2tcbitcdCAqIGlmIHRoZSBvdGhlciB0aHJlYWQncyBpZ2V0IGlzIGJsb2NrZWQgb24gdGhpcyBpbm9kZSdzIElfRlJFRUlORy5cbitcdCAqL1xuK1x0b2UgPSBtYl9jYWNoZV9lbnRyeV9kZWxldGVfb3JfZ2V0KEVBX0lOT0RFX0NBQ0hFKGlub2RlKSxcbitcdFx0XHRleHQ0X3hhdHRyX2lub2RlX2dldF9oYXNoKGlub2RlKSwgaW5vZGUtXHUwMDNlaV9pbm8pO1xuK1x0aWYgKG9lKVxuIFx0XHRtYl9jYWNoZV9lbnRyeV9wdXQoRUFfSU5PREVfQ0FDSEUoaW5vZGUpLCBvZSk7XG4tXHR9XG4gfVxuIFxuIHN0YXRpYyBpbnRcbiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI5VDA1OjUzOjU1LjQ5OTE0NTAwOFoiLCJTZXEiOjMsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjQzNTM3MTA3NjQsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqQW5hbHl6aW5nIHRoZSBleHQ0IHhhdHRyIEV2aWN0aW9uIFBhdGNoKipcblxuT2theSwgc28gSSdtIGxvb2tpbmcgYXQgdGhpcyBwYXRjaCBmb3IgYGZzL2V4dDQveGF0dHIuY2AsIHNwZWNpZmljYWxseSBmb2N1c2luZyBvbiBhIG1vZGlmaWNhdGlvbiB0byB0aGUgYGV4dDRfZXZpY3RfZWFfaW5vZGVgIGZ1bmN0aW9uLiBJdCBsb29rcyBsaWtlIHRoZXkndmUgc3RyZWFtbGluZWQgdGhlIHByb2Nlc3Mgb2YgZXZpY3RpbmcgYW4gRXh0ZW5kZWQgQXR0cmlidXRlIChFQSkgaW5vZGUuIEluc3RlYWQgb2YgdGhhdCBwb3RlbnRpYWxseSBsZW5ndGh5IGB3aGlsZWAgbG9vcCwgd2FpdGluZyBmb3IgYW4gZW50cnkgdG8gYmVjb21lIHVudXNlZCAoYG1iX2NhY2hlX2VudHJ5X3dhaXRfdW51c2VkKG9lKWApLCB0aGV5J3JlIG5vdyBhdHRlbXB0aW5nIGEgbW9yZSBkaXJlY3QgYXBwcm9hY2gg4oCTIHRyeSB0byBkZWxldGUgaXQgb3IgZ3JhYiBpdCBhbmQgdGhlbiBwdXQgaXQgYmFjay4gTXkgaW5pdGlhbCB0aG91Z2h0IGlzIHRoaXMgcmVwcmVzZW50cyBhIHNoaWZ0IGluIGhvdyBleHQ0IG1hbmFnZXMgdGhlc2UgY2FjaGUgZW50cmllcyBkdXJpbmcgZXZpY3Rpb24uXG5cblRvIGdldCBhIGJldHRlciBoYW5kbGUgb24gdGhlIGltcGxpY2F0aW9ucywgSSBuZWVkIHRvIHVuZGVyc3RhbmQgdGhlIGNhbGxpbmcgY29udGV4dHMuIExldCdzIHNlZSB3aGVyZSB0aGlzIGBleHQ0X2V2aWN0X2VhX2lub2RlYCBmdW5jdGlvbiBpcyBhY3R1YWxseSB1c2VkIHdpdGhpbiB0aGUgZmlsZXN5c3RlbS4gVGltZSB0byBmaXJlIHVwIGBncmVwcGVyYCBhbmQgdHJhY2sgZG93biBhbGwgdGhlIGNhbGwgc2l0ZXMuIFVuZGVyc3RhbmRpbmcgdGhlIHN1cnJvdW5kaW5nIGNvZGUsIGVzcGVjaWFsbHkgdGhlIHBvdGVudGlhbCBmb3IgY29uY3VycmVudCBhY2Nlc3MsIHdpbGwgYmUga2V5IHRvIGV2YWx1YXRpbmcgdGhlIGNvcnJlY3RuZXNzIGFuZCBwZXJmb3JtYW5jZSBpbXBhY3Qgb2YgdGhpcyBjaGFuZ2UuIEknbGwgYmUgbG9va2luZyBmb3IgYW55IHBvdGVudGlhbCBmb3IgcmFjZSBjb25kaXRpb25zIG9yIHVuZXhwZWN0ZWQgc2lkZSBlZmZlY3RzIHRoYXQgY291bGQgYXJpc2UgZnJvbSB0aGlzIGNoYW5nZSBpbiBiZWhhdmlvci5cblxuXG4iLCJJbnB1dFRva2VucyI6MjAzNSwiT3V0cHV0VG9rZW5zIjoyMywiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjE2NCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI5VDA1OjUzOjU5Ljg1Mjg1NzY4MloiLCJTZXEiOjQsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoyMzg5NTgxOTQ2LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcImV4dDRfZXZpY3RfZWFfaW5vZGVcIlxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiT3V0cHV0XCI6IFwiZnMvZXh0NC9pbm9kZS5jPTE2OT12b2lkIGV4dDRfZXZpY3RfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSlcXG4tLVxcbmZzL2V4dDQvaW5vZGUuYy0xODYtXFx0aWYgKEVYVDRfSShpbm9kZSktXFx1MDAzZWlfZmxhZ3MgXFx1MDAyNiBFWFQ0X0VBX0lOT0RFX0ZMKVxcbmZzL2V4dDQvaW5vZGUuYzoxODc6XFx0XFx0ZXh0NF9ldmljdF9lYV9pbm9kZShpbm9kZSk7XFxuZnMvZXh0NC9pbm9kZS5jLTE4OC1cXHRpZiAoaW5vZGUtXFx1MDAzZWlfbmxpbmspIHtcXG4tLVxcbmZzL2V4dDQveGF0dHIuYz00MjQ9c3RhdGljIGludCBleHQ0X3hhdHRyX2lub2RlX2lnZXQoc3RydWN0IGlub2RlICpwYXJlbnQsIHVuc2lnbmVkIGxvbmcgZWFfaW5vLFxcbi0tXFxuZnMvZXh0NC94YXR0ci5jLTQ3MS0vKiBSZW1vdmUgZW50cnkgZnJvbSBtYmNhY2hlIHdoZW4gRUEgaW5vZGUgaXMgZ2V0dGluZyBldmljdGVkICovXFxuZnMvZXh0NC94YXR0ci5jOjQ3Mjp2b2lkIGV4dDRfZXZpY3RfZWFfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSlcXG5mcy9leHQ0L3hhdHRyLmMtNDczLXtcXG4tLVxcbmZzL2V4dDQveGF0dHIuaD0xOTQ9ZXh0ZXJuIGludCBleHQ0X2V4cGFuZF9leHRyYV9pc2l6ZV9lYShzdHJ1Y3QgaW5vZGUgKmlub2RlLCBpbnQgbmV3X2V4dHJhX2lzaXplLFxcbmZzL2V4dDQveGF0dHIuaC0xOTUtXFx0XFx0XFx0ICAgIHN0cnVjdCBleHQ0X2lub2RlICpyYXdfaW5vZGUsIGhhbmRsZV90ICpoYW5kbGUpO1xcbmZzL2V4dDQveGF0dHIuaDoxOTY6ZXh0ZXJuIHZvaWQgZXh0NF9ldmljdF9lYV9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKTtcXG5mcy9leHQ0L3hhdHRyLmgtMTk3LVxcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDowMi4yNDI0NTAxODhaIiwiU2VxIjo1LCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo0MTY1MTg3NDkyLCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkZ1enppbmcgdGhlIEV4dGVuZGVkIEF0dHJpYnV0ZSBJbm9kZSBFdmljdGlvbiBQcm9jZXNzIGluIGV4dDQqKlxuXG5Pa2F5LCBzbyBJJ3ZlIGlkZW50aWZpZWQgYSB0YXJnZXRlZCBhcmVhIGZvciBmdXp6aW5nIHdpdGhpbiB0aGUgZXh0NCBmaWxlc3lzdGVtLiBUaGUgYGV4dDRfZXZpY3RfZWFfaW5vZGVgIGZ1bmN0aW9uIGlzIHNwZWNpZmljYWxseSBjYWxsZWQgd2hlbiBhbiBpbm9kZSBoYXMgZXh0ZW5kZWQgYXR0cmlidXRlcyBlbmFibGVkLCBpbmRpY2F0ZWQgYnkgdGhlIGBFWFQ0X0VBX0lOT0RFX0ZMYCBmbGFnLiBUaGlzIGNhbGwgaXMgaW5pdGlhdGVkIGZyb20gYGV4dDRfZXZpY3RfaW5vZGVgLCB3aGljaCBtZWFucyB0aGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2Ugd29ydGggYSBjbG9zZXIgbG9vaywgZXNwZWNpYWxseSB3aXRoIGV4dGVuZGVkIGF0dHJpYnV0ZXMsIHdoaWNoIGhhdmUgaGlzdG9yaWNhbGx5IGJlZW4gYSBzb3VyY2Ugb2YgaW50ZXJlc3RpbmcgYnVncy4gVGhpcyBpcyBhIGdvb2Qgb3Bwb3J0dW5pdHkgZm9yIHNvbWUgdGFyZ2V0ZWQgZnV6emluZy5cblxuTXkgcHJpbWFyeSBmb2N1cyB3aWxsIGJlIG9uIGBleHQ0X2V2aWN0X2VhX2lub2RlYCBhbmQgYGV4dDRfZXZpY3RfaW5vZGVgLCB0aGUga2V5IGZ1bmN0aW9ucyBpbnZvbHZlZCBpbiB0aGlzIGV2aWN0aW9uIHByb2Nlc3MuIEkgbmVlZCB0byBtYWtlIHN1cmUgdGhlIHRhcmdldCBoYXMgdGhlIHJpZ2h0IGNvbmZpZ3VyYXRpb25zIGVuYWJsZWQgdG8gcmVhY2ggdGhlIHRhcmdldCwgdGhvdWdoLlxuXG5JIG5lZWQgdG8gbWFrZSBzdXJlIGBFWFQ0X0ZTYCwgYEVYVDRfRlNfUE9TSVhfQUNMYCwgYW5kIGBFWFQ0X0ZTX1NFQ1VSSVRZYCBhcmUgZW5hYmxlZCB0byBlbnN1cmUgSSBjYW4gYWN0dWFsbHkgcmVhY2ggdGhpcyBjb2RlLiBJIHNob3VsZCBhbHNvIGRpZyBkZWVwZXIgaW50byB0aGUgY29kZSB0byBzZWUgaWYgdGhlcmUgYXJlIGFueSAqc3BlY2lmaWMqIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyB0aGF0IGZ1cnRoZXIgaW5mbHVlbmNlIHRoZSBiZWhhdmlvciBvZiBleHRlbmRlZCBhdHRyaWJ1dGUgaW5vZGVzIG9yIHhhdHRyIGhhbmRsaW5nLiBUaGlzIHdpbGwgaGVscCBtZSBuYXJyb3cgdGhlIGZ1enplcidzIHNjb3BlIGFuZCBtYXhpbWl6ZSBpdHMgZWZmaWNpZW5jeS5cblxuXG4iLCJJbnB1dFRva2VucyI6Mjg1MiwiT3V0cHV0VG9rZW5zIjoyMCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjE0MiwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDowNi40MDc2Mzk1N1oiLCJTZXEiOjYsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoxOTUwMzc2OTU5LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIkNPTkZJR19FWFQ0X0ZTXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcIlxcbkZ1bGwgb3V0cHV0IGlzIHRvbyBsb25nLCBzaG93aW5nIDUwMCBvdXQgb2YgMTE3NyBsaW5lcy5cXG5Vc2UgbW9yZSBwcmVjaXNlIGV4cHJlc3Npb24gaWYgcG9zc2libGUuXFxuXFxuYXJjaC9hcmMvY29uZmlncy9heHMxMDFfZGVmY29uZmlnPTg5PUNPTkZJR19NTUNfRFc9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAxX2RlZmNvbmZpZy05MC0jIENPTkZJR19JT01NVV9TVVBQT1JUIGlzIG5vdCBzZXRcXG5hcmNoL2FyYy9jb25maWdzL2F4czEwMV9kZWZjb25maWc6OTE6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAxX2RlZmNvbmZpZy05Mi1DT05GSUdfTVNET1NfRlM9eVxcbi0tXFxuYXJjaC9hcmMvY29uZmlncy9heHMxMDNfZGVmY29uZmlnPTg3PUNPTkZJR19NTUNfRFc9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX2RlZmNvbmZpZy04OC0jIENPTkZJR19JT01NVV9TVVBQT1JUIGlzIG5vdCBzZXRcXG5hcmNoL2FyYy9jb25maWdzL2F4czEwM19kZWZjb25maWc6ODk6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX2RlZmNvbmZpZy05MC1DT05GSUdfTVNET1NfRlM9eVxcbi0tXFxuYXJjaC9hcmMvY29uZmlncy9heHMxMDNfc21wX2RlZmNvbmZpZz04OT1DT05GSUdfTU1DX0RXPXlcXG5hcmNoL2FyYy9jb25maWdzL2F4czEwM19zbXBfZGVmY29uZmlnLTkwLSMgQ09ORklHX0lPTU1VX1NVUFBPUlQgaXMgbm90IHNldFxcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX3NtcF9kZWZjb25maWc6OTE6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX3NtcF9kZWZjb25maWctOTItQ09ORklHX01TRE9TX0ZTPXlcXG4tLVxcbmFyY2gvYXJjL2NvbmZpZ3MvaHNka19kZWZjb25maWc9Nzk9Q09ORklHX1RJX0FEQzEwOFMxMDI9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvaHNka19kZWZjb25maWc6ODA6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvaHNka19kZWZjb25maWctODEtQ09ORklHX1ZGQVRfRlM9eVxcbi0tXFxuYXJjaC9hcmMvY29uZmlncy92ZGtfaHMzOF9kZWZjb25maWc9NzU9Q09ORklHX1VTQl9TRVJJQUw9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvdmRrX2hzMzhfZGVmY29uZmlnLTc2LSMgQ09ORklHX0lPTU1VX1NVUFBPUlQgaXMgbm90IHNldFxcbmFyY2gvYXJjL2NvbmZpZ3MvdmRrX2hzMzhfZGVmY29uZmlnOjc3OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FyYy9jb25maWdzL3Zka19oczM4X2RlZmNvbmZpZzo3ODpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcmMvY29uZmlncy92ZGtfaHMzOF9kZWZjb25maWctNzktQ09ORklHX01TRE9TX0ZTPXlcXG4tLVxcbmFyY2gvYXJjL2NvbmZpZ3MvdmRrX2hzMzhfc21wX2RlZmNvbmZpZz04Mj1DT05GSUdfVUlPX1BEUlZfR0VOSVJRPXlcXG5hcmNoL2FyYy9jb25maWdzL3Zka19oczM4X3NtcF9kZWZjb25maWctODMtIyBDT05GSUdfSU9NTVVfU1VQUE9SVCBpcyBub3Qgc2V0XFxuYXJjaC9hcmMvY29uZmlncy92ZGtfaHMzOF9zbXBfZGVmY29uZmlnOjg0OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FyYy9jb25maWdzL3Zka19oczM4X3NtcF9kZWZjb25maWctODUtQ09ORklHX01TRE9TX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvYXNwZWVkX2c1X2RlZmNvbmZpZz0yNjQ9Q09ORklHX1BFQ0lfQVNQRUVEPXlcXG5hcmNoL2FybS9jb25maWdzL2FzcGVlZF9nNV9kZWZjb25maWc6MjY1OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL2FzcGVlZF9nNV9kZWZjb25maWctMjY2LUNPTkZJR19GQU5PVElGWT15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL2F0OTFfZHRfZGVmY29uZmlnPTIwNz1DT05GSUdfUFdNX0FUTUVMX1RDQj15XFxuYXJjaC9hcm0vY29uZmlncy9hdDkxX2R0X2RlZmNvbmZpZzoyMDg6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvYXQ5MV9kdF9kZWZjb25maWctMjA5LUNPTkZJR19GQU5PVElGWT15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL2F4bTU1eHhfZGVmY29uZmlnPTE5Nj1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9heG01NXh4X2RlZmNvbmZpZzoxOTc6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvYXhtNTV4eF9kZWZjb25maWctMTk4LUNPTkZJR19BVVRPRlNfRlM9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9iY20yODM1X2RlZmNvbmZpZz0xNTY9Q09ORklHX0VYVDJfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL2FybS9jb25maWdzL2JjbTI4MzVfZGVmY29uZmlnOjE1NzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9iY20yODM1X2RlZmNvbmZpZzoxNTg6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL2FybS9jb25maWdzL2JjbTI4MzVfZGVmY29uZmlnLTE1OS1DT05GSUdfRkFOT1RJRlk9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9kYXZpbmNpX2FsbF9kZWZjb25maWc9MjI5PUNPTkZJR19FWFQyX0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL2RhdmluY2lfYWxsX2RlZmNvbmZpZzoyMzA6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvZGF2aW5jaV9hbGxfZGVmY29uZmlnOjIzMTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvZGF2aW5jaV9hbGxfZGVmY29uZmlnLTIzMi1DT05GSUdfWEZTX0ZTPW1cXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvZG92ZV9kZWZjb25maWc9OTc9Q09ORklHX0VYVDJfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvZG92ZV9kZWZjb25maWc6OTg6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvZG92ZV9kZWZjb25maWc6OTk6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XFxuYXJjaC9hcm0vY29uZmlncy9kb3ZlX2RlZmNvbmZpZy0xMDAtQ09ORklHX0lTTzk2NjBfRlM9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9lcDkzeHhfZGVmY29uZmlnPTEwNT1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9lcDkzeHhfZGVmY29uZmlnOjEwNjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9lcDkzeHhfZGVmY29uZmlnOjEwNzojIENPTkZJR19FWFQ0X0ZTX1hBVFRSIGlzIG5vdCBzZXRcXG5hcmNoL2FybS9jb25maWdzL2VwOTN4eF9kZWZjb25maWctMTA4LUNPTkZJR19WRkFUX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvZXh5bm9zX2RlZmNvbmZpZz0zMzI9Q09ORklHX0VYVDJfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvZXh5bm9zX2RlZmNvbmZpZzozMzM6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvZXh5bm9zX2RlZmNvbmZpZy0zMzQtQ09ORklHX0FVVE9GU19GUz15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL2hpc2lfZGVmY29uZmlnPTc3PUNPTkZJR19QSFlfSElYNUhEMl9TQVRBPXlcXG5hcmNoL2FybS9jb25maWdzL2hpc2lfZGVmY29uZmlnOjc4OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL2hpc2lfZGVmY29uZmlnLTc5LUNPTkZJR19UTVBGUz15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL2lteF92NF92NV9kZWZjb25maWc9MTU1PUNPTkZJR19QV01fSU1YMjc9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvaW14X3Y0X3Y1X2RlZmNvbmZpZzoxNTY6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvaW14X3Y0X3Y1X2RlZmNvbmZpZy0xNTctIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL2lteF92Nl92N19kZWZjb25maWc9NDM5PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL2lteF92Nl92N19kZWZjb25maWc6NDQwOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL2lteF92Nl92N19kZWZjb25maWc6NDQxOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9hcm0vY29uZmlncy9pbXhfdjZfdjdfZGVmY29uZmlnOjQ0MjpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XFxuYXJjaC9hcm0vY29uZmlncy9pbXhfdjZfdjdfZGVmY29uZmlnLTQ0My1DT05GSUdfUVVPVEE9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9pbXhydF9kZWZjb25maWc9Mjc9Q09ORklHX0NMS19JTVhSVDEwNTA9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvaW14cnRfZGVmY29uZmlnOjI4OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL2lteHJ0X2RlZmNvbmZpZzoyOTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvaW14cnRfZGVmY29uZmlnOjMwOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL2lteHJ0X2RlZmNvbmZpZy0zMS1DT05GSUdfVkZBVF9GUz15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL2l4cDR4eF9kZWZjb25maWc9MTU1PUNPTkZJR19FWFQyX0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9hcm0vY29uZmlncy9peHA0eHhfZGVmY29uZmlnOjE1NjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9peHA0eHhfZGVmY29uZmlnOjE1NzpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvaXhwNHh4X2RlZmNvbmZpZy0xNTgtQ09ORklHX09WRVJMQVlfRlM9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9rZXlzdG9uZV9kZWZjb25maWc9MjA1PUNPTkZJR19SRVNFVF9USV9TWVNDT049bVxcbmFyY2gvYXJtL2NvbmZpZ3Mva2V5c3RvbmVfZGVmY29uZmlnOjIwNjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9rZXlzdG9uZV9kZWZjb25maWc6MjA3OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9hcm0vY29uZmlncy9rZXlzdG9uZV9kZWZjb25maWctMjA4LUNPTkZJR19GQU5PVElGWT15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL21pbGJlYXV0X20xMHZfZGVmY29uZmlnPTgxPUNPTkZJR19NRU1PUlk9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvbWlsYmVhdXRfbTEwdl9kZWZjb25maWctODItIyBDT05GSUdfQVJNX1BNVSBpcyBub3Qgc2V0XFxuYXJjaC9hcm0vY29uZmlncy9taWxiZWF1dF9tMTB2X2RlZmNvbmZpZzo4MzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9taWxiZWF1dF9tMTB2X2RlZmNvbmZpZy04NC1DT05GSUdfQVVUT0ZTX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvbW1wMl9kZWZjb25maWc9NTU9Q09ORklHX0VYVDJfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvbW1wMl9kZWZjb25maWc6NTY6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvbW1wMl9kZWZjb25maWctNTctIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL21veGFydF9kZWZjb25maWc9MTE0PUNPTkZJR19NT1hBUlRfRE1BPXlcXG5hcmNoL2FybS9jb25maWdzL21veGFydF9kZWZjb25maWctMTE1LSMgQ09ORklHX0lPTU1VX1NVUFBPUlQgaXMgbm90IHNldFxcbmFyY2gvYXJtL2NvbmZpZ3MvbW94YXJ0X2RlZmNvbmZpZzoxMTY6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvbW94YXJ0X2RlZmNvbmZpZy0xMTctQ09ORklHX1RNUEZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvbXVsdGlfdjVfZGVmY29uZmlnPTI2OT1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9tdWx0aV92NV9kZWZjb25maWc6MjcwOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL211bHRpX3Y1X2RlZmNvbmZpZy0yNzEtQ09ORklHX0lTTzk2NjBfRlM9bVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9tdWx0aV92N19kZWZjb25maWc9MTI4Mz1DT05GSUdfU1RNMzJfVElNRVJfQ05UPW1cXG5hcmNoL2FybS9jb25maWdzL211bHRpX3Y3X2RlZmNvbmZpZzoxMjg0OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL211bHRpX3Y3X2RlZmNvbmZpZy0xMjg1LUNPTkZJR19BVVRPRlNfRlM9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9tdjc4eHgwX2RlZmNvbmZpZz05Mz1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9tdjc4eHgwX2RlZmNvbmZpZzo5NDpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9tdjc4eHgwX2RlZmNvbmZpZzo5NTojIENPTkZJR19FWFQ0X0ZTX1hBVFRSIGlzIG5vdCBzZXRcXG5hcmNoL2FybS9jb25maWdzL212Nzh4eDBfZGVmY29uZmlnLTk2LUNPTkZJR19JU085NjYwX0ZTPW1cXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvbXZlYnVfdjVfZGVmY29uZmlnPTE2OT1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9tdmVidV92NV9kZWZjb25maWc6MTcwOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL212ZWJ1X3Y1X2RlZmNvbmZpZy0xNzEtQ09ORklHX0lTTzk2NjBfRlM9bVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9tdmVidV92N19kZWZjb25maWc9MTMwPUNPTkZJR19QSFlfTVZFQlVfQTM4WF9DT01QSFk9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvbXZlYnVfdjdfZGVmY29uZmlnOjEzMTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9tdmVidV92N19kZWZjb25maWctMTMyLUNPTkZJR19JU085NjYwX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvbXhzX2RlZmNvbmZpZz0xMzY9Q09ORklHX05WTUVNX01YU19PQ09UUD15XFxuYXJjaC9hcm0vY29uZmlncy9teHNfZGVmY29uZmlnOjEzNzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9teHNfZGVmY29uZmlnLTEzOC0jIENPTkZJR19ETk9USUZZIGlzIG5vdCBzZXRcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvbmhrODgxNV9kZWZjb25maWc9MTE4PUNPTkZJR19FWFQyX0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL25oazg4MTVfZGVmY29uZmlnOjExOTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9uaGs4ODE1X2RlZmNvbmZpZy0xMjAtQ09ORklHX0ZVU0VfRlM9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9vbWFwMV9kZWZjb25maWc9MTg0PUNPTkZJR19FWFQyX0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL29tYXAxX2RlZmNvbmZpZzoxODU6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb21hcDFfZGVmY29uZmlnLTE4Ni0jIENPTkZJR19ETk9USUZZIGlzIG5vdCBzZXRcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb21hcDJwbHVzX2RlZmNvbmZpZz02ODE9Q09ORklHX0VYVDJfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb21hcDJwbHVzX2RlZmNvbmZpZzo2ODI6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb21hcDJwbHVzX2RlZmNvbmZpZzo2ODM6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb21hcDJwbHVzX2RlZmNvbmZpZy02ODQtQ09ORklHX0ZBTk9USUZZPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb3Jpb241eF9kZWZjb25maWc9MTE3PUNPTkZJR19FWFQyX0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL29yaW9uNXhfZGVmY29uZmlnOjExODpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZzoxMTk6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XFxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZzoxMjA6Q09ORklHX0VYVDRfRlM9bVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb3Jpb241eF9kZWZjb25maWctMTIxLUNPTkZJR19JU085NjYwX0ZTPW1cXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvcHhhX2RlZmNvbmZpZz01NzU9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvcHhhX2RlZmNvbmZpZzo1NzY6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvcHhhX2RlZmNvbmZpZzo1Nzc6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL2FybS9jb25maWdzL3B4YV9kZWZjb25maWc6NTc4OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL3B4YV9kZWZjb25maWctNTc5LUNPTkZJR19YRlNfRlM9bVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9xY29tX2RlZmNvbmZpZz0yNzg9Q09ORklHX0VYVDJfRlNfWEFUVFI9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvcWNvbV9kZWZjb25maWc6Mjc5OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3Fjb21fZGVmY29uZmlnLTI4MC1DT05GSUdfRlVTRV9GUz15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3JwY19kZWZjb25maWc9Nzk9Q09ORklHX0VYVDJfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvcnBjX2RlZmNvbmZpZzo4MDpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9ycGNfZGVmY29uZmlnLTgxLUNPTkZJR19BVVRPRlNfRlM9bVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9zM2M2NDAwX2RlZmNvbmZpZz01ND1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zM2M2NDAwX2RlZmNvbmZpZzo1NTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zM2M2NDAwX2RlZmNvbmZpZzo1NjpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvczNjNjQwMF9kZWZjb25maWc6NTc6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvczNjNjQwMF9kZWZjb25maWctNTgtQ09ORklHX1RNUEZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvczVwdjIxMF9kZWZjb25maWc9MTAzPUNPTkZJR19FWFQyX0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3M1cHYyMTBfZGVmY29uZmlnOjEwNDpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zNXB2MjEwX2RlZmNvbmZpZy0xMDUtQ09ORklHX0FVVE9GU19GUz15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3NhbWE1X2RlZmNvbmZpZz0yMjI9Q09ORklHX1BXTV9BVE1FTF9UQ0I9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc2FtYTVfZGVmY29uZmlnOjIyMzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zYW1hNV9kZWZjb25maWctMjI0LUNPTkZJR19GQU5PVElGWT15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3NhbWE3X2RlZmNvbmZpZz0yMTQ9Q09ORklHX0VYVDJfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc2FtYTdfZGVmY29uZmlnOjIxNTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zYW1hN19kZWZjb25maWctMjE2LUNPTkZJR19GQU5PVElGWT15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3NvY2ZwZ2FfZGVmY29uZmlnPTEzNz1DT05GSUdfRVhUMl9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc29jZnBnYV9kZWZjb25maWc6MTM4OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3NvY2ZwZ2FfZGVmY29uZmlnLTEzOS1DT05GSUdfQVVUT0ZTX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3A3MDIxX2RlZmNvbmZpZz00MD1DT05GSUdfUkVTRVRfQ09OVFJPTExFUj15XFxuYXJjaC9hcm0vY29uZmlncy9zcDcwMjFfZGVmY29uZmlnOjQxOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3NwNzAyMV9kZWZjb25maWctNDItIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3NwZWFyMTN4eF9kZWZjb25maWc9ODU9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXIxM3h4X2RlZmNvbmZpZzo4NjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zcGVhcjEzeHhfZGVmY29uZmlnOjg3OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL3NwZWFyMTN4eF9kZWZjb25maWctODgtQ09ORklHX0FVVE9GU19GUz1tXFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3NwZWFyM3h4X2RlZmNvbmZpZz02OD1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XFxuYXJjaC9hcm0vY29uZmlncy9zcGVhcjN4eF9kZWZjb25maWc6Njk6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXIzeHhfZGVmY29uZmlnOjcwOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL3NwZWFyM3h4X2RlZmNvbmZpZy03MS1DT05GSUdfQVVUT0ZTX0ZTPW1cXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXI2eHhfZGVmY29uZmlnPTU0PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL3NwZWFyNnh4X2RlZmNvbmZpZzo1NTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zcGVhcjZ4eF9kZWZjb25maWc6NTY6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXI2eHhfZGVmY29uZmlnLTU3LUNPTkZJR19BVVRPRlNfRlM9bVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9zcGl0el9kZWZjb25maWc9MTkyPUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL3NwaXR6X2RlZmNvbmZpZzoxOTM6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BpdHpfZGVmY29uZmlnOjE5NDojIENPTkZJR19FWFQ0X0ZTX1hBVFRSIGlzIG5vdCBzZXRcXG5hcmNoL2FybS9jb25maWdzL3NwaXR6X2RlZmNvbmZpZy0xOTUtQ09ORklHX01TRE9TX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3RtMzJfZGVmY29uZmlnPTcxPUNPTkZJR19TVE0zMl9BREM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3RtMzJfZGVmY29uZmlnOjcyOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3N0bTMyX2RlZmNvbmZpZy03My0jIENPTkZJR19GSUxFX0xPQ0tJTkcgaXMgbm90IHNldFxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9zdW54aV9kZWZjb25maWc9MTYyPUNPTkZJR19OVk1FTV9TVU5YSV9TSUQ9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3VueGlfZGVmY29uZmlnOjE2MzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zdW54aV9kZWZjb25maWctMTY0LUNPTkZJR19WRkFUX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvdGVncmFfZGVmY29uZmlnPTMxMj1DT05GSUdfUEhZX1RFR1JBX1hVU0I9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvdGVncmFfZGVmY29uZmlnOjMxMzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy90ZWdyYV9kZWZjb25maWc6MzE0OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9hcm0vY29uZmlncy90ZWdyYV9kZWZjb25maWc6MzE1OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL3RlZ3JhX2RlZmNvbmZpZy0zMTYtIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3U4NTAwX2RlZmNvbmZpZz0xNzU9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvdTg1MDBfZGVmY29uZmlnOjE3NjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy91ODUwMF9kZWZjb25maWctMTc3LUNPTkZJR19WRkFUX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvdmV4cHJlc3NfZGVmY29uZmlnPTEyMj1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9hcm0vY29uZmlncy92ZXhwcmVzc19kZWZjb25maWc6MTIzOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3ZleHByZXNzX2RlZmNvbmZpZy0xMjQtQ09ORklHX1ZGQVRfRlM9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy92ZjYxMG00X2RlZmNvbmZpZz0zNT1DT05GSUdfTUZEX1NZU0NPTj15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3ZmNjEwbTRfZGVmY29uZmlnLTM3LSMgQ09ORklHX1VTQl9TVVBQT1JUIGlzIG5vdCBzZXRcXG5hcmNoL2FybS9jb25maWdzL3ZmNjEwbTRfZGVmY29uZmlnOjM4OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3ZmNjEwbTRfZGVmY29uZmlnLTM5LSMgQ09ORklHX01JU0NfRklMRVNZU1RFTVMgaXMgbm90IHNldFxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy92dDg1MDBfdjZfdjdfZGVmY29uZmlnPTc5PUNPTkZJR19HRU5FUklDX1BIWT15XFxuYXJjaC9hcm0vY29uZmlncy92dDg1MDBfdjZfdjdfZGVmY29uZmlnOjgwOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3Z0ODUwMF92Nl92N19kZWZjb25maWctODEtQ09ORklHX1RNUEZTPXlcXG4tLVxcbmFyY2gvYXJtNjQvY29uZmlncy9kZWZjb25maWc9MTg5OD1DT05GSUdfSFRFX1RFR1JBMTk0X1RFU1Q9bVxcbmFyY2gvYXJtNjQvY29uZmlncy9kZWZjb25maWc6MTg5OTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm02NC9jb25maWdzL2RlZmNvbmZpZzoxOTAwOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9hcm02NC9jb25maWdzL2RlZmNvbmZpZzoxOTAxOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybTY0L2NvbmZpZ3MvZGVmY29uZmlnLTE5MDItQ09ORklHX0JUUkZTX0ZTPW1cXG4tLVxcbmFyY2gvY3NreS9jb25maWdzL2RlZmNvbmZpZz0zMz1DT05GSUdfR0VORVJJQ19QSFk9eVxcbmFyY2gvY3NreS9jb25maWdzL2RlZmNvbmZpZzozNDpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9jc2t5L2NvbmZpZ3MvZGVmY29uZmlnLTM1LUNPTkZJR19GQU5PVElGWT15XFxuLS1cXG5hcmNoL2hleGFnb24vY29uZmlncy9jb21ldF9kZWZjb25maWc9NDg9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvaGV4YWdvbi9jb25maWdzL2NvbWV0X2RlZmNvbmZpZzo0OTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9oZXhhZ29uL2NvbmZpZ3MvY29tZXRfZGVmY29uZmlnOjUwOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9oZXhhZ29uL2NvbmZpZ3MvY29tZXRfZGVmY29uZmlnOjUxOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2hleGFnb24vY29uZmlncy9jb21ldF9kZWZjb25maWctNTItQ09ORklHX1FVT1RBPXlcXG4tLVxcbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb24zMl9kZWZjb25maWc9OTUwPUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2xvb25nYXJjaC9jb25maWdzL2xvb25nc29uMzJfZGVmY29uZmlnOjk1MTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9sb29uZ2FyY2gvY29uZmlncy9sb29uZ3NvbjMyX2RlZmNvbmZpZzo5NTI6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL2xvb25nYXJjaC9jb25maWdzL2xvb25nc29uMzJfZGVmY29uZmlnOjk1MzpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XFxuYXJjaC9sb29uZ2FyY2gvY29uZmlncy9sb29uZ3NvbjMyX2RlZmNvbmZpZy05NTQtQ09ORklHX0pGU19GUz1tXFxuLS1cXG5hcmNoL2xvb25nYXJjaC9jb25maWdzL2xvb25nc29uNjRfZGVmY29uZmlnPTk4MT1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XFxuYXJjaC9sb29uZ2FyY2gvY29uZmlncy9sb29uZ3NvbjY0X2RlZmNvbmZpZzo5ODI6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb242NF9kZWZjb25maWc6OTgzOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9sb29uZ2FyY2gvY29uZmlncy9sb29uZ3NvbjY0X2RlZmNvbmZpZzo5ODQ6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb242NF9kZWZjb25maWctOTg1LUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvYW1pZ2FfZGVmY29uZmlnPTQwMz1DT05GSUdfREFYPW1cXG5hcmNoL202OGsvY29uZmlncy9hbWlnYV9kZWZjb25maWc6NDA0OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL202OGsvY29uZmlncy9hbWlnYV9kZWZjb25maWctNDA1LUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvYXBvbGxvX2RlZmNvbmZpZz0zNTg9Q09ORklHX0RBWD1tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvYXBvbGxvX2RlZmNvbmZpZzozNTk6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbTY4ay9jb25maWdzL2Fwb2xsb19kZWZjb25maWctMzYwLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvYXRhcmlfZGVmY29uZmlnPTM4MT1DT05GSUdfREFYPW1cXG5hcmNoL202OGsvY29uZmlncy9hdGFyaV9kZWZjb25maWc6MzgyOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL202OGsvY29uZmlncy9hdGFyaV9kZWZjb25maWctMzgzLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvYnZtZTYwMDBfZGVmY29uZmlnPTM1MD1DT05GSUdfREFYPW1cXG5hcmNoL202OGsvY29uZmlncy9idm1lNjAwMF9kZWZjb25maWc6MzUxOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL202OGsvY29uZmlncy9idm1lNjAwMF9kZWZjb25maWctMzUyLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvaHAzMDBfZGVmY29uZmlnPTM2MD1DT05GSUdfREFYPW1cXG5hcmNoL202OGsvY29uZmlncy9ocDMwMF9kZWZjb25maWc6MzYxOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL202OGsvY29uZmlncy9ocDMwMF9kZWZjb25maWctMzYyLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvbWFjX2RlZmNvbmZpZz0zNzk9Q09ORklHX0RBWD1tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvbWFjX2RlZmNvbmZpZzozODA6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbTY4ay9jb25maWdzL21hY19kZWZjb25maWctMzgxLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvbXVsdGlfZGVmY29uZmlnPTQ2Nj1DT05GSUdfREFYPW1cXG5hcmNoL202OGsvY29uZmlncy9tdWx0aV9kZWZjb25maWc6NDY3OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL202OGsvY29uZmlncy9tdWx0aV9kZWZjb25maWctNDY4LUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvbXZtZTE0N19kZWZjb25maWc9MzUwPUNPTkZJR19EQVg9bVxcbmFyY2gvbTY4ay9jb25maWdzL212bWUxNDdfZGVmY29uZmlnOjM1MTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9tNjhrL2NvbmZpZ3MvbXZtZTE0N19kZWZjb25maWctMzUyLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvbXZtZTE2eF9kZWZjb25maWc9MzUxPUNPTkZJR19EQVg9bVxcbmFyY2gvbTY4ay9jb25maWdzL212bWUxNnhfZGVmY29uZmlnOjM1MjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9tNjhrL2NvbmZpZ3MvbXZtZTE2eF9kZWZjb25maWctMzUzLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvcTQwX2RlZmNvbmZpZz0zNjk9Q09ORklHX0RBWD1tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvcTQwX2RlZmNvbmZpZzozNzA6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbTY4ay9jb25maWdzL3E0MF9kZWZjb25maWctMzcxLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3Mvc3RtYXJrMl9kZWZjb25maWc9ODI9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbTY4ay9jb25maWdzL3N0bWFyazJfZGVmY29uZmlnOjgzOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL202OGsvY29uZmlncy9zdG1hcmsyX2RlZmNvbmZpZzo4NDpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbTY4ay9jb25maWdzL3N0bWFyazJfZGVmY29uZmlnOjg1OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL202OGsvY29uZmlncy9zdG1hcmsyX2RlZmNvbmZpZy04Ni0jIENPTkZJR19GSUxFX0xPQ0tJTkcgaXMgbm90IHNldFxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3Mvc3VuM19kZWZjb25maWc9MzQ4PUNPTkZJR19EQVg9bVxcbmFyY2gvbTY4ay9jb25maWdzL3N1bjNfZGVmY29uZmlnOjM0OTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9tNjhrL2NvbmZpZ3Mvc3VuM19kZWZjb25maWctMzUwLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3Mvc3VuM3hfZGVmY29uZmlnPTM0OD1DT05GSUdfREFYPW1cXG5hcmNoL202OGsvY29uZmlncy9zdW4zeF9kZWZjb25maWc6MzQ5OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL202OGsvY29uZmlncy9zdW4zeF9kZWZjb25maWctMzUwLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvdmlydF9kZWZjb25maWc9NTU9Q09ORklHX1ZJUlRJT19JTlBVVD15XFxuYXJjaC9tNjhrL2NvbmZpZ3MvdmlydF9kZWZjb25maWc6NTY6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbTY4ay9jb25maWdzL3ZpcnRfZGVmY29uZmlnLTU3LUNPTkZJR19BVVRPRlNfRlM9eVxcbi0tXFxuYXJjaC9taWNyb2JsYXplL2NvbmZpZ3MvbW11X2RlZmNvbmZpZz03NT1DT05GSUdfVUlPX0RNRU1fR0VOSVJRPXlcXG5hcmNoL21pY3JvYmxhemUvY29uZmlncy9tbXVfZGVmY29uZmlnOjc2OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pY3JvYmxhemUvY29uZmlncy9tbXVfZGVmY29uZmlnLTc3LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvYmlnc3VyX2RlZmNvbmZpZz0xMzY9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2JpZ3N1cl9kZWZjb25maWc6MTM3OkNPTkZJR19FWFQ0X0ZTPW1cXG5hcmNoL21pcHMvY29uZmlncy9iaWdzdXJfZGVmY29uZmlnOjEzODpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2JpZ3N1cl9kZWZjb25maWc6MTM5OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9iaWdzdXJfZGVmY29uZmlnOjE0MDpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvYmlnc3VyX2RlZmNvbmZpZy0xNDEtQ09ORklHX1FVT1RBPXlcXG4tLVxcbmFyY2gvbWlwcy9jb25maWdzL2JtaXBzX2JlX2RlZmNvbmZpZz01Nz1DT05GSUdfVVNCX1NUT1JBR0U9eVxcbmFyY2gvbWlwcy9jb25maWdzL2JtaXBzX2JlX2RlZmNvbmZpZzo1ODpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfYmVfZGVmY29uZmlnOjU5OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfYmVfZGVmY29uZmlnOjYwOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9ibWlwc19iZV9kZWZjb25maWctNjEtIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9ibWlwc19zdGJfZGVmY29uZmlnPTE0MT1DT05GSUdfTU1DX1NESENJX1BMVEZNPXlcXG5hcmNoL21pcHMvY29uZmlncy9ibWlwc19zdGJfZGVmY29uZmlnOjE0MjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfc3RiX2RlZmNvbmZpZzoxNDM6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL21pcHMvY29uZmlncy9ibWlwc19zdGJfZGVmY29uZmlnOjE0NDpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XFxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfc3RiX2RlZmNvbmZpZy0xNDUtIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9jYXZpdW1fb2N0ZW9uX2RlZmNvbmZpZz0xMzY9Q09ORklHX1JBUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvY2F2aXVtX29jdGVvbl9kZWZjb25maWc6MTM3OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pcHMvY29uZmlncy9jYXZpdW1fb2N0ZW9uX2RlZmNvbmZpZzoxMzg6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL21pcHMvY29uZmlncy9jYXZpdW1fb2N0ZW9uX2RlZmNvbmZpZzoxMzk6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2Nhdml1bV9vY3Rlb25fZGVmY29uZmlnLTE0MC1DT05GSUdfTVNET1NfRlM9eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvY2kyMF9kZWZjb25maWc9MTY2PUNPTkZJR19OVk1FTV9KWjQ3ODBfRUZVU0U9eVxcbmFyY2gvbWlwcy9jb25maWdzL2NpMjBfZGVmY29uZmlnOjE2NzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvY2kyMF9kZWZjb25maWctMTY4LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvY29iYWx0X2RlZmNvbmZpZz02MT1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XFxuYXJjaC9taXBzL2NvbmZpZ3MvY29iYWx0X2RlZmNvbmZpZzo2MjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvY29iYWx0X2RlZmNvbmZpZzo2MzpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2NvYmFsdF9kZWZjb25maWc6NjQ6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2NvYmFsdF9kZWZjb25maWctNjUtQ09ORklHX1BST0NfS0NPUkU9eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvY3UxMDAwLW5lb19kZWZjb25maWc9ODk9Q09ORklHX0paNDc3MF9QSFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2N1MTAwMC1uZW9fZGVmY29uZmlnOjkwOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pcHMvY29uZmlncy9jdTEwMDAtbmVvX2RlZmNvbmZpZy05MS0jIENPTkZJR19ETk9USUZZIGlzIG5vdCBzZXRcXG4tLVxcbmFyY2gvbWlwcy9jb25maWdzL2N1MTgzMC1uZW9fZGVmY29uZmlnPTkyPUNPTkZJR19KWjQ3NzBfUEhZPXlcXG5hcmNoL21pcHMvY29uZmlncy9jdTE4MzAtbmVvX2RlZmNvbmZpZzo5MzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvY3UxODMwLW5lb19kZWZjb25maWctOTQtIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9kYjF4eHhfZGVmY29uZmlnPTE2OT1DT05GSUdfUlRDX0RSVl9BVTFYWFg9eVxcbmFyY2gvbWlwcy9jb25maWdzL2RiMXh4eF9kZWZjb25maWc6MTcwOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pcHMvY29uZmlncy9kYjF4eHhfZGVmY29uZmlnOjE3MTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2RiMXh4eF9kZWZjb25maWc6MTcyOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9kYjF4eHhfZGVmY29uZmlnLTE3My1DT05GSUdfWEZTX0ZTPXlcXG4tLVxcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fNjRfZGVmY29uZmlnPTEzNT1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl82NF9kZWZjb25maWc6MTM2OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uXzY0X2RlZmNvbmZpZzoxMzc6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uXzY0X2RlZmNvbmZpZzoxMzg6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fNjRfZGVmY29uZmlnLTEzOS1DT05GSUdfSVNPOTY2MF9GUz15XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uX2RlZmNvbmZpZz0xMzE9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fZGVmY29uZmlnOjEzMjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9kZWZjb25maWc6MTMzOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9kZWZjb25maWc6MTM0OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uX2RlZmNvbmZpZy0xMzUtQ09ORklHX0lTTzk2NjBfRlM9eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9yNGtfZGVmY29uZmlnPTEzMT1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9yNGtfZGVmY29uZmlnOjEzMjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9yNGtfZGVmY29uZmlnOjEzMzpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fcjRrX2RlZmNvbmZpZzoxMzQ6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fcjRrX2RlZmNvbmZpZy0xMzUtQ09ORklHX0lTTzk2NjBfRlM9eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTVfZGVmY29uZmlnPTg5PUNPTkZJR19SRVNFVF9DT05UUk9MTEVSPXlcXG5hcmNoL21pcHMvY29uZmlncy9leWVxNV9kZWZjb25maWctOTAtIyBDT05GSUdfTlZNRU0gaXMgbm90IHNldFxcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE1X2RlZmNvbmZpZzo5MTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTVfZGVmY29uZmlnOjkyOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTVfZGVmY29uZmlnOjkzOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9leWVxNV9kZWZjb25maWctOTQtQ09ORklHX0ZTX0VOQ1JZUFRJT049eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZfZGVmY29uZmlnPTg4PUNPTkZJR19SRVNFVF9DT05UUk9MTEVSPXlcXG5hcmNoL21pcHMvY29uZmlncy9leWVxNl9kZWZjb25maWctODktIyBDT05GSUdfTlZNRU0gaXMgbm90IHNldFxcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE2X2RlZmNvbmZpZzo5MDpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZfZGVmY29uZmlnOjkxOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZfZGVmY29uZmlnOjkyOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9leWVxNl9kZWZjb25maWctOTMtQ09ORklHX0ZTX0VOQ1JZUFRJT049eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZscGx1c19kZWZjb25maWc9OTY9Q09ORklHX1JFU0VUX0NPTlRST0xMRVI9eVxcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE2bHBsdXNfZGVmY29uZmlnLTk3LSMgQ09ORklHX05WTUVNIGlzIG5vdCBzZXRcXG5hcmNoL21pcHMvY29uZmlncy9leWVxNmxwbHVzX2RlZmNvbmZpZzo5ODpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZscGx1c19kZWZjb25maWc6OTk6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL21pcHMvY29uZmlncy9leWVxNmxwbHVzX2RlZmNvbmZpZzoxMDA6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE2bHBsdXNfZGVmY29uZmlnLTEwMS1DT05GSUdfRlNfRU5DUllQVElPTj15XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9mdWxvb25nMmVfZGVmY29uZmlnPTE3ND1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZnVsb29uZzJlX2RlZmNvbmZpZzoxNzU6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbWlwcy9jb25maWdzL2Z1bG9vbmcyZV9kZWZjb25maWc6MTc2OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZnVsb29uZzJlX2RlZmNvbmZpZzoxNzc6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2Z1bG9vbmcyZV9kZWZjb25maWctMTc4LUNPTkZJR19BVVRPRlNfRlM9eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvZ2N3MF9kZWZjb25maWc9MTM0PUNPTkZJR19QV01fSlo0NzQwPXlcXG5hcmNoL21pcHMvY29uZmlncy9nY3cwX2RlZmNvbmZpZzoxMzU6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbWlwcy9jb25maWdzL2djdzBfZGVmY29uZmlnLTEzNi1DT05GSUdfVkZBVF9GUz15XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9nZW5lcmljX2RlZmNvbmZpZz01NT1DT05GSUdfSElEX01PTlRFUkVZPXlcXG4tLVxcbmFyY2gvbWlwcy9jb25maWdzL2dlbmVyaWNfZGVmY29uZmlnLTU3LSMgQ09ORklHX0lPTU1VX1NVUFBPUlQgaXMgbm90IHNldFxcbmFyY2gvbWlwcy9jb25maWdzL2dlbmVyaWNfZGVmY29uZmlnOjU4OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pcHMvY29uZmlncy9nZW5lcmljX2RlZmNvbmZpZzo1OTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2dlbmVyaWNfZGVmY29uZmlnOjYwOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9nZW5lcmljX2RlZmNvbmZpZy02MS1DT05GSUdfRlNfRU5DUllQVElPTj15XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9pcDIyX2RlZmNvbmZpZz0yMzM9Q09ORklHX0VYVDJfRlM9bVxcbmFyY2gvbWlwcy9jb25maWdzL2lwMjJfZGVmY29uZmlnOjIzNDpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyMl9kZWZjb25maWc6MjM1OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyMl9kZWZjb25maWc6MjM2OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9pcDIyX2RlZmNvbmZpZy0yMzctQ09ORklHX1hGU19GUz1tXFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9pcDI3X2RlZmNvbmZpZz0yNzI9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2lwMjdfZGVmY29uZmlnOjI3MzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyN19kZWZjb25maWc6Mjc0OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyN19kZWZjb25maWc6Mjc1OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9pcDI3X2RlZmNvbmZpZy0yNzYtQ09ORklHX1hGU19GUz1tXFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9pcDI4X2RlZmNvbmZpZz01MT1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyOF9kZWZjb25maWc6NTI6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbWlwcy9jb25maWdzL2lwMjhfZGVmY29uZmlnOjUzOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyOF9kZWZjb25maWc6NTQ6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2lwMjhfZGVmY29uZmlnLTU1LUNPTkZJR19RVU9UQT15XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9pcDMwX2RlZmNvbmZpZz0xNDQ9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2lwMzBfZGVmY29uZmlnOjE0NTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAzMF9kZWZjb25maWc6MTQ2OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAzMF9kZWZjb25maWc6MTQ3OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9pcDMwX2RlZmNvbmZpZy0xNDgtQ09ORklHX1hGU19GUz1tXFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9pcDMyX2RlZmNvbmZpZz05MD1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAzMl9kZWZjb25maWc6OTE6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbWlwcy9jb25maWdzL2lwMzJfZGVmY29uZmlnOjkyOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAzMl9kZWZjb25maWc6OTM6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2lwMzJfZGVmY29uZmlnLTk0LUNPTkZJR19RVU9UQT15XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9qYXp6X2RlZmNvbmZpZz03MD1DT05GSUdfRVhUMl9GUz1tXFxuYXJjaC9taXBzL2NvbmZpZ3MvamF6el9kZWZjb25maWc6NzE6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbWlwcy9jb25maWdzL2phenpfZGVmY29uZmlnLTcyLUNPTkZJR19YRlNfRlM9bVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvbGVtb3RlMmZfZGVmY29uZmlnPTIyNz1DT05GSUdfRVhUMl9GUz1tXFxuYXJjaC9taXBzL2NvbmZpZ3MvbGVtb3RlMmZfZGVmY29uZmlnOjIyODpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvbGVtb3RlMmZfZGVmY29uZmlnOjIyOTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2xlbW90ZTJmX2RlZmNvbmZpZzoyMzA6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2xlbW90ZTJmX2RlZmNvbmZpZy0yMzEtQ09ORklHX0pGU19GUz1tXFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjFfZGVmY29uZmlnPTE0OD1DT05GSUdfTE9PTkdTT04xX0FQQl9ETUE9eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24xX2RlZmNvbmZpZy0xNTMtIyBDT05GSUdfTlZNRU0gaXMgbm90IHNldFxcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uMV9kZWZjb25maWc6MTU0OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjFfZGVmY29uZmlnOjE1NTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uMV9kZWZjb25maWctMTU2LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24ya19kZWZjb25maWc9Mjk4PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjJrX2RlZmNvbmZpZzoyOTk6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uMmtfZGVmY29uZmlnOjMwMDpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uMmtfZGVmY29uZmlnOjMwMTpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XFxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24ya19kZWZjb25maWctMzAyLUNPTkZJR19YRlNfRlM9eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24zX2RlZmNvbmZpZz0zNDk9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uM19kZWZjb25maWc6MzUwOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjNfZGVmY29uZmlnOjM1MTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uM19kZWZjb25maWc6MzUyOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjNfZGVmY29uZmlnLTM1My1DT05GSUdfWEZTX0ZTPXlcXG5cXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDYtMjlUMDU6NTQ6MDguMzU4MDIxNTM5WiIsIlNlcSI6NywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MzAzMzQzMTQ1MywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipFeGFtaW5pbmcgdGhlIEVYVDQgQ29uZmlndXJhdGlvbioqXG5cbk9rYXksIHNvIHRoZSBiYXNlIGNvbmZpZ3VyYXRpb24gSSdtIHdvcmtpbmcgd2l0aCBpcyBgQ09ORklHX0VYVDRfRlNgLiBOb3csIEkgbmVlZCB0byBmaWd1cmUgb3V0IGlmIHRoZXJlJ3MgYSBkZWRpY2F0ZWQgY29uZmlndXJhdGlvbiBvcHRpb24gc3BlY2lmaWNhbGx5IGZvciBFeHRlbmRlZCBBdHRyaWJ1dGUgKEVBKSBpbm9kZXMgd2l0aGluIHRoZSBFWFQ0IGZpbGVzeXN0ZW0uIE15IGltbWVkaWF0ZSB0aG91Z2h0IGlzIHRvIGRlbHZlIGludG8gdGhlIHJlbGV2YW50IEtjb25maWcgYW5kIE1ha2VmaWxlIGZpbGVzLiBUaGUgbG9naWNhbCBwbGFjZXMgdG8gc3RhcnQgbG9va2luZyB3b3VsZCBiZSBgZnMvZXh0NC9LY29uZmlnYCBhbmQgYGZzL2V4dDQvTWFrZWZpbGVgLiBUaGF0J3Mgd2hlcmUgSSdkIGV4cGVjdCB0byBmaW5kIHRoZSBkZXBlbmRlbmNpZXMgYW5kIGJ1aWxkIGluc3RydWN0aW9ucyBmb3IgRVhUNCwgYW5kIHRoZXJlZm9yZSwgY29uZmlndXJhdGlvbiBvcHRpb25zIGxpa2UgdGhlIG9uZSBJJ20gc2Vla2luZy4gVGltZSB0byBvcGVuIHRob3NlIHVwIGFuZCBzZWUgd2hhdCB0aGV5IHJldmVhbC5cblxuXG4iLCJJbnB1dFRva2VucyI6MTQ3MjcsIk91dHB1dFRva2VucyI6MjMsIk91dHB1dFRob3VnaHRzVG9rZW5zIjo0NCwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDoxMS4zOTE0NTQ3OTJaIiwiU2VxIjo4LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MTcwOTM2ODk3MywiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJFWFQ0X0VBX0lOT0RFX0ZMXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcIkRvY3VtZW50YXRpb24vZmlsZXN5c3RlbXMvZXh0NC9pbm9kZXMucnN0PTIyOD1UaGUgYGBpX2ZsYWdzYGAgZmllbGQgaXMgYSBjb21iaW5hdGlvbiBvZiB0aGVzZSB2YWx1ZXM6XFxuLS1cXG5Eb2N1bWVudGF0aW9uL2ZpbGVzeXN0ZW1zL2V4dDQvaW5vZGVzLnJzdC0yODMtICAgICAtIElub2RlIHN0b3JlcyBhIGxhcmdlIGV4dGVuZGVkIGF0dHJpYnV0ZSB2YWx1ZSBpbiBpdHMgZGF0YSBibG9ja3NcXG5Eb2N1bWVudGF0aW9uL2ZpbGVzeXN0ZW1zL2V4dDQvaW5vZGVzLnJzdDoyODQ6ICAgICAgIChFWFQ0X0VBX0lOT0RFX0ZMKS5cXG5Eb2N1bWVudGF0aW9uL2ZpbGVzeXN0ZW1zL2V4dDQvaW5vZGVzLnJzdC0yODUtICAgKiAtIDB4NDAwMDAwXFxuLS1cXG5mcy9leHQ0L2V4dDQuaD00NDA9c3RydWN0IGZsZXhfZ3JvdXBzIHtcXG4tLVxcbmZzL2V4dDQvZXh0NC5oLTUwNC0jZGVmaW5lIEVYVDRfVkVSSVRZX0ZMXFx0XFx0XFx0MHgwMDEwMDAwMCAvKiBWZXJpdHkgcHJvdGVjdGVkIGlub2RlICovXFxuZnMvZXh0NC9leHQ0Lmg6NTA1OiNkZWZpbmUgRVhUNF9FQV9JTk9ERV9GTFxcdCAgICAgICAgMHgwMDIwMDAwMCAvKiBJbm9kZSB1c2VkIGZvciBsYXJnZSBFQSAqL1xcbmZzL2V4dDQvZXh0NC5oLTUwNi0vKiAweDAwNDAwMDAwIHdhcyBmb3JtZXJseSBFWFQ0X0VPRkJMT0NLU19GTCAqL1xcbi0tXFxuZnMvZXh0NC9leHQ0Lmg9MjY5MT1zdGF0aWMgaW5saW5lIGJvb2wgZXh0NF9pc19xdW90YV9maWxlKHN0cnVjdCBpbm9kZSAqaW5vZGUpXFxuLS1cXG5mcy9leHQ0L2V4dDQuaC0yNjkzLVxcdHJldHVybiBJU19OT1FVT1RBKGlub2RlKSBcXHUwMDI2XFx1MDAyNlxcbmZzL2V4dDQvZXh0NC5oOjI2OTQ6XFx0ICAgICAgICEoRVhUNF9JKGlub2RlKS1cXHUwMDNlaV9mbGFncyBcXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpO1xcbmZzL2V4dDQvZXh0NC5oLTI2OTUtfVxcbi0tXFxuZnMvZXh0NC9pYWxsb2MuYz05MzM9c3RydWN0IGlub2RlICpfX2V4dDRfbmV3X2lub2RlKHN0cnVjdCBtbnRfaWRtYXAgKmlkbWFwLFxcbi0tXFxuZnMvZXh0NC9pYWxsb2MuYy05OTUtXFxuZnMvZXh0NC9pYWxsb2MuYzo5OTY6XFx0aWYgKCEoaV9mbGFncyBcXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpKSB7XFxuZnMvZXh0NC9pYWxsb2MuYy05OTctXFx0XFx0ZXJyID0gZnNjcnlwdF9wcmVwYXJlX25ld19pbm9kZShkaXIsIGlub2RlLCBcXHUwMDI2ZW5jcnlwdCk7XFxuLS1cXG5mcy9leHQ0L2lhbGxvYy5jLTEwMDUtXFxuZnMvZXh0NC9pYWxsb2MuYzoxMDA2OlxcdGlmICghaGFuZGxlIFxcdTAwMjZcXHUwMDI2IHNiaS1cXHUwMDNlc19qb3VybmFsIFxcdTAwMjZcXHUwMDI2ICEoaV9mbGFncyBcXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpKSB7XFxuZnMvZXh0NC9pYWxsb2MuYy0xMDA3LVxcdFxcdHJldDIgPSBleHQ0X3hhdHRyX2NyZWRpdHNfZm9yX25ld19pbm9kZShkaXIsIG1vZGUsIGVuY3J5cHQpO1xcbi0tXFxuZnMvZXh0NC9pYWxsb2MuYy0xMzA4LVxcdGlmIChleHQ0X2hhc19mZWF0dXJlX2lubGluZV9kYXRhKHNiKSBcXHUwMDI2XFx1MDAyNlxcbmZzL2V4dDQvaWFsbG9jLmM6MTMwOTpcXHQgICAgKCEoZWktXFx1MDAzZWlfZmxhZ3MgXFx1MDAyNiAoRVhUNF9EQVhfRkx8RVhUNF9FQV9JTk9ERV9GTCkpIHx8IFNfSVNESVIobW9kZSkpKVxcbmZzL2V4dDQvaWFsbG9jLmMtMTMxMC1cXHRcXHRleHQ0X3NldF9pbm9kZV9zdGF0ZShpbm9kZSwgRVhUNF9TVEFURV9NQVlfSU5MSU5FX0RBVEEpO1xcbi0tXFxuZnMvZXh0NC9pYWxsb2MuYy0xMzI2LVxcbmZzL2V4dDQvaWFsbG9jLmM6MTMyNzpcXHRpZiAoIShlaS1cXHUwMDNlaV9mbGFncyBcXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpKSB7XFxuZnMvZXh0NC9pYWxsb2MuYy0xMzI4LVxcdFxcdGVyciA9IGV4dDRfaW5pdF9hY2woaGFuZGxlLCBpbm9kZSwgZGlyKTtcXG4tLVxcbmZzL2V4dDQvaW5vZGUuYz0xNjk9dm9pZCBleHQ0X2V2aWN0X2lub2RlKHN0cnVjdCBpbm9kZSAqaW5vZGUpXFxuLS1cXG5mcy9leHQ0L2lub2RlLmMtMTg1LVxcbmZzL2V4dDQvaW5vZGUuYzoxODY6XFx0aWYgKEVYVDRfSShpbm9kZSktXFx1MDAzZWlfZmxhZ3MgXFx1MDAyNiBFWFQ0X0VBX0lOT0RFX0ZMKVxcbmZzL2V4dDQvaW5vZGUuYy0xODctXFx0XFx0ZXh0NF9ldmljdF9lYV9pbm9kZShpbm9kZSk7XFxuLS1cXG5mcy9leHQ0L2lub2RlLmM9NDcwMT1zdGF0aWMgaW5saW5lIHU2NCBleHQ0X2lub2RlX3BlZWtfaXZlcnNpb24oY29uc3Qgc3RydWN0IGlub2RlICppbm9kZSlcXG5mcy9leHQ0L2lub2RlLmMtNDcwMi17XFxuZnMvZXh0NC9pbm9kZS5jOjQ3MDM6XFx0aWYgKHVubGlrZWx5KEVYVDRfSShpbm9kZSktXFx1MDAzZWlfZmxhZ3MgXFx1MDAyNiBFWFQ0X0VBX0lOT0RFX0ZMKSlcXG5mcy9leHQ0L2lub2RlLmMtNDcwNC1cXHRcXHRyZXR1cm4gaW5vZGVfcGVla19pdmVyc2lvbl9yYXcoaW5vZGUpO1xcbi0tXFxuZnMvZXh0NC9pbm9kZS5jPTUxOTQ9aW50IGV4dDRfZ2V0X3Byb2ppZChzdHJ1Y3QgaW5vZGUgKmlub2RlLCBrcHJvamlkX3QgKnByb2ppZClcXG4tLVxcbmZzL2V4dDQvaW5vZGUuYy01MjAzLSAqIGV4dDQgaGFzIHNlbGYtbWFuYWdlZCBpX3ZlcnNpb24gZm9yIGVhIGlub2RlcywgaXQgc3RvcmVzIHRoZSBsb3dlciAzMmJpdCBvZlxcbmZzL2V4dDQvaW5vZGUuYzo1MjA0OiAqIHJlZmNvdW50IGluIGlfdmVyc2lvbiwgc28gdXNlIHJhdyB2YWx1ZXMgaWYgaW5vZGUgaGFzIEVYVDRfRUFfSU5PREVfRkwgZmxhZ1xcbmZzL2V4dDQvaW5vZGUuYy01MjA1LSAqIHNldC5cXG4tLVxcbmZzL2V4dDQvaW5vZGUuYz01MjA3PXN0YXRpYyBpbmxpbmUgdm9pZCBleHQ0X2lub2RlX3NldF9pdmVyc2lvbl9xdWVyaWVkKHN0cnVjdCBpbm9kZSAqaW5vZGUsIHU2NCB2YWwpXFxuZnMvZXh0NC9pbm9kZS5jLTUyMDgte1xcbmZzL2V4dDQvaW5vZGUuYzo1MjA5OlxcdGlmICh1bmxpa2VseShFWFQ0X0koaW5vZGUpLVxcdTAwM2VpX2ZsYWdzIFxcdTAwMjYgRVhUNF9FQV9JTk9ERV9GTCkpXFxuZnMvZXh0NC9pbm9kZS5jLTUyMTAtXFx0XFx0aW5vZGVfc2V0X2l2ZXJzaW9uX3Jhdyhpbm9kZSwgdmFsKTtcXG4tLVxcbmZzL2V4dDQvaW5vZGUuYz01MjE1PXN0YXRpYyBpbnQgY2hlY2tfaWdvdF9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlLCBleHQ0X2lnZXRfZmxhZ3MgZmxhZ3MsXFxuLS1cXG5mcy9leHQ0L2lub2RlLmMtNTIyMC1cXHRpZiAoZmxhZ3MgXFx1MDAyNiBFWFQ0X0lHRVRfRUFfSU5PREUpIHtcXG5mcy9leHQ0L2lub2RlLmM6NTIyMTpcXHRcXHRpZiAoIShFWFQ0X0koaW5vZGUpLVxcdTAwM2VpX2ZsYWdzIFxcdTAwMjYgRVhUNF9FQV9JTk9ERV9GTCkpIHtcXG5mcy9leHQ0L2lub2RlLmMtNTIyMi1cXHRcXHRcXHRlcnJfc3RyID0gXFxcIm1pc3NpbmcgRUFfSU5PREUgZmxhZ1xcXCI7XFxuLS1cXG5mcy9leHQ0L2lub2RlLmMtNTIzMC1cXHR9IGVsc2Uge1xcbmZzL2V4dDQvaW5vZGUuYzo1MjMxOlxcdFxcdGlmICgoRVhUNF9JKGlub2RlKS1cXHUwMDNlaV9mbGFncyBcXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpKSB7XFxuZnMvZXh0NC9pbm9kZS5jLTUyMzItXFx0XFx0XFx0LypcXG4tLVxcbmZzL2V4dDQveGF0dHIuYz0xNDc2PXN0YXRpYyBzdHJ1Y3QgaW5vZGUgKmV4dDRfeGF0dHJfaW5vZGVfY3JlYXRlKGhhbmRsZV90ICpoYW5kbGUsXFxuLS1cXG5mcy9leHQ0L3hhdHRyLmMtMTQ5NS1cXHRcXHRcXHRcXHQgIFNfSUZSRUcgfCAwNjAwLCBOVUxMLCBpbm9kZS1cXHUwMDNlaV9pbm8gKyAxLCBvd25lcixcXG5mcy9leHQ0L3hhdHRyLmM6MTQ5NjpcXHRcXHRcXHRcXHQgIEVYVDRfRUFfSU5PREVfRkwpO1xcbmZzL2V4dDQveGF0dHIuYy0xNDk3LVxcdGlmICghSVNfRVJSKGVhX2lub2RlKSkge1xcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDoxMy4xMDA4Mjc5MTVaIiwiU2VxIjo5LCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo4MDE2MzI1MTk0LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkVuYWJsaW5nIExhcmdlIEV4dGVuZGVkIEF0dHJpYnV0ZXMgaW4gZXh0NCoqXG5cbk9rYXksIHNvIHdlIG5lZWQgdG8gZ2V0IHRoaXMgbGFyZ2UgZXh0ZW5kZWQgYXR0cmlidXRlcyBmZWF0dXJlIHdvcmtpbmcuIFRoZSBrZXkgaXMgYEVYVDRfRUFfSU5PREVfRkxgLCB3aGljaCwgYXMgSSB1bmRlcnN0YW5kIGl0LCBpcyBhIHN0YW5kYXJkIHBhcnQgb2YgdGhlIGV4dDQgZmlsZXN5c3RlbS4gVGhhdCdzIGEgZ29vZCBzdGFydC4gVG8gZW5zdXJlIGV2ZXJ5dGhpbmcgaXMgaW4gcGxhY2UsIEkgdGhpbmsgd2Ugc2hvdWxkIGRlZmluaXRlbHkgZW5hYmxlIGBFWFQ0X0ZTYC4gV2Ugc2hvdWxkIGFsc28gcHJvYmFibHkgY29uc2lkZXIgZW5hYmxpbmcgYEVYVDRfRlNfUE9TSVhfQUNMYCBhbmQgYEVYVDRfRlNfU0VDVVJJVFlgIGp1c3QgdG8gY292ZXIgYWxsIGJhc2VzLCBldmVuIHRob3VnaCBgRVhUNF9GU2AgaXMgdGhlIG1vc3QgY3JpdGljYWwuIE5vdywgbGV0IG1lIGp1c3QgZG91YmxlLWNoZWNrIGlmIHRoZXJlIGFyZSBhbnkgKnNwZWNpZmljKiBjb25maWd1cmF0aW9uIG9wdGlvbnMgZGVkaWNhdGVkIHRvIGV4dGVuZGVkIGF0dHJpYnV0ZXMgKHhhdHRyKS4gV2UgbmVlZCB0byBtYWtlIHN1cmUgd2UndmUgY292ZXJlZCBhbGwgdGhlIHJlbGV2YW50IGJhc2VzIGZvciB0aGlzIHNldHVwLlxuXG5cbiIsIklucHV0VG9rZW5zIjoxNjYzMywiT3V0cHV0VG9rZW5zIjoyMywiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjk0LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI5VDA1OjU0OjIxLjExNzE1NjkzOVoiLCJTZXEiOjEwLCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MTY2Mjc2NTY0NywiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJDT05GSUdfRVhUNF9GU19YQVRUUlwiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJhcmNoL2FybS9jb25maWdzL2RvdmVfZGVmY29uZmlnPTk4PUNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL2RvdmVfZGVmY29uZmlnOjk5OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxcbmFyY2gvYXJtL2NvbmZpZ3MvZG92ZV9kZWZjb25maWctMTAwLUNPTkZJR19JU085NjYwX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvZXA5M3h4X2RlZmNvbmZpZz0xMDY9Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvZXA5M3h4X2RlZmNvbmZpZzoxMDc6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XFxuYXJjaC9hcm0vY29uZmlncy9lcDkzeHhfZGVmY29uZmlnLTEwOC1DT05GSUdfVkZBVF9GUz15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL212Nzh4eDBfZGVmY29uZmlnPTk0PUNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL212Nzh4eDBfZGVmY29uZmlnOjk1OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxcbmFyY2gvYXJtL2NvbmZpZ3MvbXY3OHh4MF9kZWZjb25maWctOTYtQ09ORklHX0lTTzk2NjBfRlM9bVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZz0xMTg9Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb3Jpb241eF9kZWZjb25maWc6MTE5OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxcbmFyY2gvYXJtL2NvbmZpZ3Mvb3Jpb241eF9kZWZjb25maWctMTIwLUNPTkZJR19FWFQ0X0ZTPW1cXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BpdHpfZGVmY29uZmlnPTE5Mz1DT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zcGl0el9kZWZjb25maWc6MTk0OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BpdHpfZGVmY29uZmlnLTE5NS1DT05GSUdfTVNET1NfRlM9eVxcbi0tXFxuYXJjaC9zaC9jb25maWdzL21hZ2ljcGFuZWxyMl9kZWZjb25maWc9Njc9Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvc2gvY29uZmlncy9tYWdpY3BhbmVscjJfZGVmY29uZmlnOjY4OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxcbmFyY2gvc2gvY29uZmlncy9tYWdpY3BhbmVscjJfZGVmY29uZmlnLTY5LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxcbi0tXFxuYXJjaC9zaC9jb25maWdzL3RpdGFuX2RlZmNvbmZpZz0yMTg9Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvc2gvY29uZmlncy90aXRhbl9kZWZjb25maWc6MjE5OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxcbmFyY2gvc2gvY29uZmlncy90aXRhbl9kZWZjb25maWctMjIwLUNPTkZJR19YRlNfRlM9bVxcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDoyMi43Nzk5Mjc0MDdaIiwiU2VxIjoxMSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MzAzMDU5MTUyMywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiSGVyZSdzIG15IHRob3VnaHQgcHJvY2Vzcywgc3VtbWFyaXplZCBhcyB5b3UgcmVxdWVzdGVkOlxuXG4qKkludmVzdGlnYXRpbmcgYSBLZXJuZWwgQ29uZmlndXJhdGlvbiBEaXNjcmVwYW5jeSoqXG5cbkhtbSwgaG9sZCBvbiBhIHNlY29uZC4gSSBjb3VsZCBoYXZlIHN3b3JuIGBDT05GSUdfRVhUNF9GU19YQVRUUmAgd2FzIGEgc3RhbmRhcmQgY29uZmlndXJhdGlvbiBvcHRpb24gaW4gbW9yZSByZWNlbnQga2VybmVscy4gVGhhdCdzIG9kZC4gTGV0IG1lIGp1c3QgZG91YmxlLWNoZWNrIHRoYXQuIFRoZSBjYW5vbmljYWwgc291cmNlIGZvciBrZXJuZWwgY29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgZXh0NCBmaWxlc3lzdGVtIHdvdWxkIGJlIGluIGBmcy9leHQ0L0tjb25maWdgLiBJJ2xsIGdvIHRha2UgYSBsb29rIHRoZXJlIHRvIGNvbmZpcm0uIEkgbmVlZCB0byBmaWd1cmUgb3V0IGlmIGl0J3MgYmVlbiBkZXByZWNhdGVkLCByZW5hbWVkLCBvciBwZXJoYXBzIGludGVncmF0ZWQgdW5kZXIgYW5vdGhlciwgbW9yZSBnZW5lcmFsIHNldHRpbmcuIEl0J3MgY3J1Y2lhbCB0byBlbnN1cmUgY29tcGF0aWJpbGl0eSBhbmQgdW5kZXJzdGFuZCBhbnkgcG90ZW50aWFsIGNoYW5nZXMgaW4gdGhlIGZlYXR1cmUgc2V0LlxuXG5cbiIsIklucHV0VG9rZW5zIjoxNzUxNSwiT3V0cHV0VG9rZW5zIjoyMiwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjM0LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI5VDA1OjU0OjI1LjgxMDUyMTQ4WiIsIlNlcSI6MTIsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoxNjc2NTk1ODA2LCJFcnJvciI6Im5vIG1hdGNoZXMiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJjb25maWcgRVhUNF9GU19YQVRUUlwiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJlcnJvclwiOiBcIm5vIG1hdGNoZXNcIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDYtMjlUMDU6NTQ6MjcuNDg3MTI1MDI2WiIsIlNlcSI6MTMsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjQ2MDgwOTU2NzgsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6Ik9rYXksIGhlcmUncyBteSB0YWtlIG9uIHRob3NlIHRob3VnaHRzLCBmcmFtZWQgYXMgYW4gZXhwZXJ0J3MgaW50ZXJuYWwgbW9ub2xvZ3VlOlxuXG4qKkV2b2x2aW5nIEFzc3VtcHRpb25zIGluIEV4dDQqKlxuXG5SaWdodCwgc28gSSdtIHNlZWluZyB0aGlzIGNvZGUgcGF0aCwgYW5kIGl0J3MgaGl0dGluZyBtZTogaXQncyBubyBsb25nZXIgY29udHJvbGxlZCBieSBhIGNvbmZpZ3VyYXRpb24gb3B0aW9uLCBpdCBzZWVtcyB0byBhbHdheXMgYmUgYWN0aXZlIG5vdy4gVGhhdCdzIGludGVyZXN0aW5nLCBhbmQgaXQgc3VnZ2VzdHMgYSBzaWduaWZpY2FudCBzaGlmdCBpbiB0aGUgZGVzaWduIHBoaWxvc29waHkgb2YgdGhlIGV4dDQgZmlsZXN5c3RlbSwgbGlrZWx5IGRyaXZlbiBieSBwZXJmb3JtYW5jZSBpbXByb3ZlbWVudHMgb3Igc2VjdXJpdHkgY29uc2lkZXJhdGlvbnMuIEkgbmVlZCB0byB1bmRlcnN0YW5kIHRoZSBpbXBsaWNhdGlvbnMgb2YgdGhpcyBjaGFuZ2UuXG5cbk15IG5leHQgaW1tZWRpYXRlIHRhc2sgaXMgY2xlYXIuIEkgbmVlZCB0byB0YWtlIGEgY2xvc2VyIGxvb2sgYXQgYGV4dDRfZXZpY3RfZWFfaW5vZGVgIGFuZCBgZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kYC4gSSdtIGdvaW5nIHRvIHdhbnQgdG8gdW5kZXJzdGFuZCB3aGF0J3MgY2hhbmdlZCBpbiB0aGVpciBiZWhhdmlvciwgaG93IHRoZXkncmUgaW50ZXJhY3RpbmcgaW4gdGhpcyBuZXcgJ2Fsd2F5cyBlbmFibGVkJyBzY2VuYXJpby4gQXJlIHRoZXJlIHN1YnRsZSBwZXJmb3JtYW5jZSByZWdyZXNzaW9ucz8gU2VjdXJpdHkgdnVsbmVyYWJpbGl0aWVzIHRoYXQgbWlnaHQgaGF2ZSBiZWVuIGFkZHJlc3NlZCBvciBpbnRyb2R1Y2VkPyBBcmUgdGhlcmUgY2hhbmdlcyBpbiBtZW1vcnkgdXNhZ2UgdG8ga2VlcCBpbiBtaW5kPyBJIHdpbGwgYmUgbG9va2luZyBmb3IgaW50ZXJhY3Rpb25zLCBzaWRlIGVmZmVjdHMsIGFuZCBjaGFuZ2VzIGluIHRoZSBjcml0aWNhbCBwYXRoLlxuXG5cbiIsIklucHV0VG9rZW5zIjoxNzczMiwiT3V0cHV0VG9rZW5zIjoyNSwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjQ2LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI5VDA1OjU0OjMyLjA5NTIyMzEyNFoiLCJTZXEiOjE0LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MTY4NzIyOTM4NSwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmRcIlxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiT3V0cHV0XCI6IFwiZnMvZXh0NC94YXR0ci5jPTQ3Mj12b2lkIGV4dDRfZXZpY3RfZWFfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSlcXG4tLVxcbmZzL2V4dDQveGF0dHIuYy00NzktXFx0ICogVHJ5IHRvIGRlbGV0ZSB0aGUgY2FjaGUgZW50cnkuICBJZiBpdCdzIGN1cnJlbnRseSBpbiB1c2UgYnlcXG5mcy9leHQ0L3hhdHRyLmM6NDgwOlxcdCAqIGFub3RoZXIgdGhyZWFkIChlLmcuIGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZCksIGp1c3QgbGVhdmVcXG5mcy9leHQ0L3hhdHRyLmMtNDgxLVxcdCAqIGl0IC0tIHRoZSBzdGFsZSBlbnRyeSBpcyBoYXJtbGVzcy4gIFdhaXRpbmcgaGVyZSB3b3VsZCBkZWFkbG9ja1xcbi0tXFxuZnMvZXh0NC94YXR0ci5jPTE1MzA9c3RhdGljIHN0cnVjdCBpbm9kZSAqXFxuZnMvZXh0NC94YXR0ci5jOjE1MzE6ZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kKHN0cnVjdCBpbm9kZSAqaW5vZGUsIGNvbnN0IHZvaWQgKnZhbHVlLFxcbmZzL2V4dDQveGF0dHIuYy0xNTMyLVxcdFxcdFxcdCAgICBzaXplX3QgdmFsdWVfbGVuLCB1MzIgaGFzaClcXG4tLVxcbmZzL2V4dDQveGF0dHIuYz0xNTgyPXN0YXRpYyBzdHJ1Y3QgaW5vZGUgKmV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZShoYW5kbGVfdCAqaGFuZGxlLFxcbi0tXFxuZnMvZXh0NC94YXR0ci5jLTE1OTQtXFx0aGFzaCA9IGV4dDRfeGF0dHJfaW5vZGVfaGFzaChFWFQ0X1NCKGlub2RlLVxcdTAwM2VpX3NiKSwgdmFsdWUsIHZhbHVlX2xlbik7XFxuZnMvZXh0NC94YXR0ci5jOjE1OTU6XFx0ZWFfaW5vZGUgPSBleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQoaW5vZGUsIHZhbHVlLCB2YWx1ZV9sZW4sIGhhc2gpO1xcbmZzL2V4dDQveGF0dHIuYy0xNTk2LVxcdGlmIChlYV9pbm9kZSkge1xcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDozMy43ODI0NTc1MzlaIiwiU2VxIjoxNSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NDM3MjAwODE4MiwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipGb2N1c2luZyBvbiB0aGUgRGVhZGxvY2sgRml4KipcblxuT2theSwgc28gdGhpcyBwYXRjaCBhZGRyZXNzZXMgYSBuYXN0eSBkZWFkbG9jay4gSXQgc2VlbXMgdGhlIHByb2JsZW0gbGllcyBiZXR3ZWVuIGBleHQ0X2V2aWN0X2VhX2lub2RlYCBhbmQgYGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZGAuIEdpdmVuIHRoZSBmaXggcmVzaWRlcyB3aXRoaW4gYGV4dDRfZXZpY3RfZWFfaW5vZGVgLCB0aGF0J3Mgb3VyIHByaW1hcnkgYXJlYSBvZiBjb25jZXJuIGZvciBmdXp6aW5nLiBXZSBhbHNvIG5lZWQgdG8ga2VlcCBhbiBleWUgb24gYGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZGAsIGFzIGl0J3MgZGlyZWN0bHkgaW52b2x2ZWQuXG5cbk5vdywgbGV0J3MganVzdCBjb25maXJtIHNvbWV0aGluZyBxdWlja2x5Li4uIHllcCwgYGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZGAgaXMgc3RhdGljLiBUaGF0IG1lYW5zIHdlIHNob3VsZCBiZSBsb29raW5nIGF0IG90aGVyIGZ1bmN0aW9ucyBjYWxsZWQgYnkgaXQuIFNwZWNpZmljYWxseSwgYGV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZWAgb3IgYGV4dDRfeGF0dHJfc2V0X2VudHJ5YCBzZWVtIGxpa2UgdGhlIGxpa2VseSBjYW5kaWRhdGVzIGZvciBjbG9zZXIgaW5zcGVjdGlvbiBhbmQgZnV6emluZy5cblxuXG4iLCJJbnB1dFRva2VucyI6MTg0MTcsIk91dHB1dFRva2VucyI6MjUsIk91dHB1dFRob3VnaHRzVG9rZW5zIjoxMzgsIlRvb2xDYWxscyI6WyJncmVwcGVyIl19LHsiU3RhcnRlZCI6IjIwMjYtMDYtMjlUMDU6NTQ6MzguMTU0NDY3NzgxWiIsIlNlcSI6MTYsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoxNzM3NzU2MjMwLCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcImV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZVwiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJmcy9leHQ0L3hhdHRyLmM9MTUzMT1leHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQoc3RydWN0IGlub2RlICppbm9kZSwgY29uc3Qgdm9pZCAqdmFsdWUsXFxuLS1cXG5mcy9leHQ0L3hhdHRyLmMtMTU4MS0gKi9cXG5mcy9leHQ0L3hhdHRyLmM6MTU4MjpzdGF0aWMgc3RydWN0IGlub2RlICpleHQ0X3hhdHRyX2lub2RlX2xvb2t1cF9jcmVhdGUoaGFuZGxlX3QgKmhhbmRsZSxcXG5mcy9leHQ0L3hhdHRyLmMtMTU4My1cXHRcXHRzdHJ1Y3QgaW5vZGUgKmlub2RlLCBjb25zdCB2b2lkICp2YWx1ZSwgc2l6ZV90IHZhbHVlX2xlbilcXG4tLVxcbmZzL2V4dDQveGF0dHIuYz0xOTAzPWV4dDRfeGF0dHJfYmxvY2tfc2V0KGhhbmRsZV90ICpoYW5kbGUsIHN0cnVjdCBpbm9kZSAqaW5vZGUsXFxuLS1cXG5mcy9leHQ0L3hhdHRyLmMtMTkyMy1cXG5mcy9leHQ0L3hhdHRyLmM6MTkyNDpcXHRcXHRlYV9pbm9kZSA9IGV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZShoYW5kbGUsIGlub2RlLFxcbmZzL2V4dDQveGF0dHIuYy0xOTI1LVxcdFxcdFxcdFxcdFxcdGktXFx1MDAzZXZhbHVlLCBpLVxcdTAwM2V2YWx1ZV9sZW4pO1xcbi0tXFxuZnMvZXh0NC94YXR0ci5jPTIyNTg9aW50IGV4dDRfeGF0dHJfaWJvZHlfc2V0KGhhbmRsZV90ICpoYW5kbGUsIHN0cnVjdCBpbm9kZSAqaW5vZGUsXFxuLS1cXG5mcy9leHQ0L3hhdHRyLmMtMjI3My1cXG5mcy9leHQ0L3hhdHRyLmM6MjI3NDpcXHRcXHRlYV9pbm9kZSA9IGV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZShoYW5kbGUsIGlub2RlLFxcbmZzL2V4dDQveGF0dHIuYy0yMjc1LVxcdFxcdFxcdFxcdFxcdGktXFx1MDAzZXZhbHVlLCBpLVxcdTAwM2V2YWx1ZV9sZW4pO1xcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDozOS44OTIyMjk4MTFaIiwiU2VxIjoxNywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NzQyNjA0ODUzMiwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipNeSBBbmFseXNpcyBvZiB0aGUgRXh0NCBFQSBJbm9kZSBFdmljdGlvbiBQYXRjaCoqXG5cbk9rYXksIHNvIEknbSBsb29raW5nIGF0IHRoaXMgcGF0Y2ggYW5kIGltbWVkaWF0ZWx5LCB0aGUgY29yZSBvZiBpdCBzZWVtcyB0byByZXZvbHZlIGFyb3VuZCBjaGFuZ2VzIHRvIGhvdyBFeHRlbmRlZCBBdHRyaWJ1dGUgKEVBKSBpbm9kZXMgYXJlIGV2aWN0ZWQgd2l0aGluIHRoZSBleHQ0IGZpbGVzeXN0ZW0uIEkgc2VlIHRoYXQgYGV4dDRfeGF0dHJfYmxvY2tfc2V0YCBhbmQgYGV4dDRfeGF0dHJfaWJvZHlfc2V0YCBib3RoIHVsdGltYXRlbHkgY2FsbCBgZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlYC4gTXkgaW50dWl0aW9uIHRlbGxzIG1lIHRoYXQgdGhlIGtleSBhcmVhcyB0byBpbnZlc3RpZ2F0ZSBhcmUgYGV4dDRfZXZpY3RfZWFfaW5vZGVgIGFuZCBgZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlYC5cblxuTGV0IG1lIHF1aWNrbHkgZG91YmxlLWNoZWNrIOKAkyBpcyBgZXh0NF9ldmljdF9lYV9pbm9kZWAgc3RhdGljPyBObywgaXQncyBhY3R1YWxseSBleHBvcnRlZCBpbiBgZnMvZXh0NC94YXR0ci5oYCwgc28gaXQncyBsaWtlbHkgdXNlZCBtb3JlIGJyb2FkbHkgdGhhbiBqdXN0IHdpdGhpbiBhIHNpbmdsZSBmaWxlLiBUaGF0IGRlZmluaXRlbHkgbWFrZXMgaXQgYSBoaWdoZXItdmFsdWUgdGFyZ2V0IGZvciBleGFtaW5hdGlvbi4gVG8gZ2V0IGEgY29tcGxldGUgdmlldywgSSdsbCBhbHNvIGFkZCBgZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kYCB0byBteSBmb2N1cyBsaXN0OyBpdCdzIHByb2JhYmx5IGNyaXRpY2FsIHRvIHRoZSBsb29rdXAgYW5kIGNhY2hpbmcgbG9naWMuXG5cbkJhc2VkIG9uIHRoaXMsIG15IGZvY3VzIHN5bWJvbHMgZm9yIGZ1enppbmcgd2lsbCBiZTpcblxuKiAgIGBleHQ0X2V2aWN0X2VhX2lub2RlYFxuKiAgIGBleHQ0X3hhdHRyX2lub2RlX2xvb2t1cF9jcmVhdGVgXG4qICAgYGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZGBcblxuVGhpcyBwYXRjaCBpcyBtb2RpZnlpbmcgdGhlIEVBIGlub2RlIGV2aWN0aW9uIHByb2Nlc3MsIGFwcGFyZW50bHkgdG8gcmVzb2x2ZSBhIGRlYWRsb2NrIHNpdHVhdGlvbiByZWxhdGVkIHRvIHRoZSBtYmNhY2hlLiBUaGlzIG1lYW5zIHdlJ3JlIGRlYWxpbmcgd2l0aCBhIGZ1bmRhbWVudGFsIGNoYW5nZSBpbiBob3cgdGhlIGV4dDQgZmlsZXN5c3RlbSBoYW5kbGVzIEVBIGlub2Rlcywgd2hpY2ggbWFrZXMgaXQgcGFydGljdWxhcmx5IGltcG9ydGFudC4gVGh1cywgSSdsbCBuZWVkIHRvIGZvY3VzIG15IGZ1enppbmcgZWZmb3J0cyBvbiB0aGUgcGF0aHMgaW52b2x2ZWQgaW4gRUEgaW5vZGUgZXZpY3Rpb24sIGFzIHdlbGwgYXMgdGhlIGNhY2hlIGxvb2t1cCBwcm9jZXNzLlxuXG5UbyBjb25maXJtIHRoZSBjb250ZXh0LCBJIG5lZWQgdG8gbWFrZSBzdXJlIHRoZSBjb3JlIGV4dDQgZmlsZXN5c3RlbSBmZWF0dXJlcyBhbmQgcmVsYXRlZCBjb25maWd1cmF0aW9ucyBhcmUgZW5hYmxlZCwgc28gdGhhdCBJIGNhbiBsb29rIGF0IHRoaXMgd2l0aGluIHRoZSBjb21wbGV0ZSBjb250ZXh0LiBUbyB0aGF0IGVuZCwgSSdsbCBuZWVkIHRoZXNlIGNvbmZpZ3VyYXRpb25zIGVuYWJsZWQ6XG5cbiogICBgRVhUNF9GU2BcbiogICBgRVhUNF9GU19QT1NJWF9BQ0xgXG4qICAgYEVYVDRfRlNfU0VDVVJJVFlgXG5cbk5vdywgbGV0J3MgY2FsbCBgc2V0LXJlc3VsdHNgIGFuZCBzZWUgd2hhdCBjb21lcyBvdXQhXG5cblxuIiwiSW5wdXRUb2tlbnMiOjE5MTU0LCJPdXRwdXRUb2tlbnMiOjE1NCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjI3MywiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDo0Ny4zMTgyODA2NjRaIiwiU2VxIjoxOCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoic2V0LXJlc3VsdHMiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo3ODI4MzY4MywiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiRVhUNF9GU1wiLFxuICAgIFwiRVhUNF9GU19QT1NJWF9BQ0xcIixcbiAgICBcIkVYVDRfRlNfU0VDVVJJVFlcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJleHQ0X2V2aWN0X2VhX2lub2RlXCIsXG4gICAgXCJleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmRcIixcbiAgICBcImV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZVwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBsb2dpYyBmb3IgZXZpY3RpbmcgYW4gRUEgKEV4dGVuZGVkIEF0dHJpYnV0ZSkgaW5vZGUgaW4gZXh0NCB0byBwcmV2ZW50IGEgZGVhZGxvY2sgd2hlbiBpbnRlcmFjdGluZyB3aXRoIHRoZSBtYmNhY2hlLiBUaGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2UgaW4gdGhlIGNvcmUgZXh0NCBmaWxlc3lzdGVtIGxvZ2ljLiBGdXp6aW5nIHNob3VsZCBmb2N1cyBvbiB0aGUgRUEgaW5vZGUgZXZpY3Rpb24gYW5kIGNhY2hlIGxvb2t1cCBwYXRocy5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogdHJ1ZVxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBbXG4gICAgXCJFWFQ0X0ZTXCIsXG4gICAgXCJFWFQ0X0ZTX1BPU0lYX0FDTFwiLFxuICAgIFwiRVhUNF9GU19TRUNVUklUWVwiXG4gIF0sXG4gIFwiRm9jdXNTeW1ib2xzXCI6IFtcbiAgICBcImV4dDRfZXZpY3RfZWFfaW5vZGVcIixcbiAgICBcImV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZFwiLFxuICAgIFwiZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlXCJcbiAgXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIGxvZ2ljIGZvciBldmljdGluZyBhbiBFQSAoRXh0ZW5kZWQgQXR0cmlidXRlKSBpbm9kZSBpbiBleHQ0IHRvIHByZXZlbnQgYSBkZWFkbG9jayB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIG1iY2FjaGUuIFRoaXMgaXMgYSBmdW5jdGlvbmFsIGNoYW5nZSBpbiB0aGUgY29yZSBleHQ0IGZpbGVzeXN0ZW0gbG9naWMuIEZ1enppbmcgc2hvdWxkIGZvY3VzIG9uIHRoZSBFQSBpbm9kZSBldmljdGlvbiBhbmQgY2FjaGUgbG9va3VwIHBhdGhzLlwiLFxuICBcIldvcnRoRnV6emluZ1wiOiB0cnVlXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH1dOwoJCQlpZiAoIXJhd0RhdGEgfHwgcmF3RGF0YS5sZW5ndGggPT09IDApIHJldHVybjsKCgkJCWRyYXdTdW1tYXJ5VGFibGVzKHJhd0RhdGEpOwoJCQlkcmF3RHVyYXRpb25DaGFydChyYXdEYXRhKTsKCQkJZHJhd1Rva2VuQ29uc3VtcHRpb25DaGFydChyYXdEYXRhKTsKCQl9CgoJCWZ1bmN0aW9uIGRyYXdTdW1tYXJ5VGFibGVzKHJhd0RhdGEpIHsKCQkJY29uc3Qgc3RhdHMgPSB7CgkJCQlsbG06IHsgY291bnQ6IDAsIHRva2VuczogMCwgZHVyYXRpb246IDAgfSwKCQkJCXRvb2w6IHsgY291bnQ6IDAsIGR1cmF0aW9uOiAwIH0KCQkJfTsKCgkJCXJhd0RhdGEuZm9yRWFjaChzID0+IHsKCQkJCWNvbnN0IGR1ciA9IHMuRHVyYXRpb24gLyAxMDAwMDAwMDAwOyAKCQkJCWlmIChzLlR5cGUgPT09ICJsbG0iKSB7CgkJCQkJc3RhdHMubGxtLmNvdW50Kys7CgkJCQkJc3RhdHMubGxtLnRva2VucyArPSAocy5JbnB1dFRva2VucyArIHMuT3V0cHV0VG9rZW5zICsgcy5PdXRwdXRUaG91Z2h0c1Rva2Vucyk7CgkJCQkJc3RhdHMubGxtLmR1cmF0aW9uICs9IGR1cjsKCQkJCX0gZWxzZSBpZiAocy5UeXBlID09PSAidG9vbCIpIHsKCQkJCQlzdGF0cy50b29sLmNvdW50Kys7CgkJCQkJc3RhdHMudG9vbC5kdXJhdGlvbiArPSBkdXI7CgkJCQl9CgkJCX0pOwoKCQkJY29uc3QgYXZnTGxtRHVyID0gc3RhdHMubGxtLmNvdW50ID4gMCA/IChzdGF0cy5sbG0uZHVyYXRpb24gLyBzdGF0cy5sbG0uY291bnQpLnRvRml4ZWQoMikgOiAwOwoJCQljb25zdCBhdmdMbG1Ub2tlbiA9IHN0YXRzLmxsbS5jb3VudCA+IDAgPyAoc3RhdHMubGxtLnRva2VucyAvIHN0YXRzLmxsbS5jb3VudCkudG9GaXhlZCgyKSA6IDA7CgkJCWNvbnN0IGF2Z1Rvb2xEdXIgPSBzdGF0cy50b29sLmNvdW50ID4gMCA/IChzdGF0cy50b29sLmR1cmF0aW9uIC8gc3RhdHMudG9vbC5jb3VudCkudG9GaXhlZCgyKSA6IDA7CgoJCQljb25zdCBsbG1TdW1hcnlDZWxscyA9IFtzdGF0cy5sbG0uY291bnQsIHN0YXRzLmxsbS50b2tlbnMsIGF2Z0xsbVRva2VuLCBzdGF0cy5sbG0uZHVyYXRpb24sIGF2Z0xsbUR1cl07CgkJCWNvbnN0IHRvb2xTdW1tYXJ5Q2VsbHMgPSBbc3RhdHMudG9vbC5jb3VudCwgc3RhdHMudG9vbC5kdXJhdGlvbiwgYXZnVG9vbER1cl07CgoJCQljb25zdCBsbG1TdW1tYXJ5Qm9keSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdsbG1fc3VtbWFyeV9zdGF0c19ib2R5Jyk7CgkJCWxsbVN1bW1hcnlCb2R5LmlubmVySFRNTCA9ICIiOwoJCQljb25zdCBsbG1UciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RyJyk7CgkJCWxsbVN1bWFyeUNlbGxzLmZvckVhY2goY2VsbCA9PiB7CgkJCQljb25zdCB0ZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RkJyk7CgkJCQl0ZC50ZXh0Q29udGVudCA9IGNlbGw7CgkJCQlsbG1Uci5hcHBlbmRDaGlsZCh0ZCk7CgkJCX0pOwoJCQlsbG1TdW1tYXJ5Qm9keS5hcHBlbmRDaGlsZChsbG1Ucik7CgoJCQljb25zdCB0b29sU3VtbWFyeUJvZHkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndG9vbF9zdW1tYXJ5X3N0YXRzX2JvZHknKTsKCQkJdG9vbFN1bW1hcnlCb2R5LmlubmVySFRNTCA9ICIiOwoJCQljb25zdCB0b29sVHIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0cicpOwoJCQl0b29sU3VtbWFyeUNlbGxzLmZvckVhY2goY2VsbCA9PiB7CgkJCQljb25zdCB0ZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RkJyk7CgkJCQl0ZC50ZXh0Q29udGVudCA9IGNlbGw7CgkJCQl0b29sVHIuYXBwZW5kQ2hpbGQodGQpOwoJCQl9KTsKCQkJdG9vbFN1bW1hcnlCb2R5LmFwcGVuZENoaWxkKHRvb2xUcik7CgkJfQoKCQlmdW5jdGlvbiBkcmF3RHVyYXRpb25DaGFydChyYXdEYXRhKSB7CgkJCWNvbnN0IGZpbHRlcmVkU3RlcHMgPSByYXdEYXRhLmZpbHRlcihkID0+IFsibGxtIiwgInRvb2wiXS5pbmNsdWRlcyhkLlR5cGUpKTsKCQkJY29uc3QgZGF0YSA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5EYXRhVGFibGUoKTsKCQkJZGF0YS5hZGRDb2x1bW4oJ3N0cmluZycsICdTdGVwJyk7CgkJCWRhdGEuYWRkQ29sdW1uKCdudW1iZXInLCAnRHVyYXRpb24nKTsKCQkJZGF0YS5hZGRDb2x1bW4oe3R5cGU6ICdzdHJpbmcnLCByb2xlOiAndG9vbHRpcCd9KTsgCgoJCQlmaWx0ZXJlZFN0ZXBzLmZvckVhY2gocyA9PiB7CgkJCQkKCQkJCWNvbnN0IGR1ciA9IHMuRHVyYXRpb24gLyAxMDAwMDAwMDAwOwoJCQkJbGV0IHRvb2x0aXAgPSBzLk5hbWU7CgkJCQlpZiAocy5UeXBlID09PSAibGxtIiAmJiBzLlRvb2xDYWxscyAmJiBzLlRvb2xDYWxscy5sZW5ndGggPiAwKSB7CgkJCQkJdG9vbHRpcCArPSBgXG5Ub29sczogJHtzLlRvb2xDYWxscy5qb2luKCcsICcpfWA7CgkJCQl9CgkJCQlkYXRhLmFkZFJvdyhbYCR7cy5TZXF9YCwgZHVyLCB0b29sdGlwXSk7CgkJCX0pOwoKCQkJY29uc3Qgb3B0aW9ucyA9IHsKCQkJCXRpdGxlOiAnVGltZSBDb25zdW1wdGlvbiBvZiBMTE0vVG9vbCBDYWxscycsCgkJCQloQXhpczogewoJCQkJCXRpdGxlOiAnTExNL1Rvb2wgU3RlcHMnLAoJCQkJfSwKCQkJCXZBeGlzOiB7IHRpdGxlOiAnU2Vjb25kcycgfSwKCQkJCWxlZ2VuZDogeyBwb3NpdGlvbjogJ25vbmUnIH0sCgkJCQliYXI6IHsgZ3JvdXBXaWR0aDogJzc1JScgfSwKCQkJCWNoYXJ0QXJlYTogeyB3aWR0aDogJzg1JScsIGhlaWdodDogJzcwJScgfSwKCQkJCWhlaWdodDogNDAwCgkJCX07CgoJCQljb25zdCBjaGFydCA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5Db2x1bW5DaGFydChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHVyYXRpb25fY2hhcnRfZGl2JykpOwoJCQljaGFydC5kcmF3KGRhdGEsIG9wdGlvbnMpOwoJCX0KCgkJZnVuY3Rpb24gZHJhd1Rva2VuQ29uc3VtcHRpb25DaGFydChyYXdEYXRhKSB7CgkJCWNvbnN0IGxsbVN0ZXBzID0gcmF3RGF0YS5maWx0ZXIoZCA9PiBkLlR5cGUgPT09ICJsbG0iKTsKCQkJaWYgKGxsbVN0ZXBzLmxlbmd0aCA9PT0gMCkgcmV0dXJuOwoKCQkJY29uc3QgZGF0YSA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5EYXRhVGFibGUoKTsKCQkJZGF0YS5hZGRDb2x1bW4oJ3N0cmluZycsICdTdGVwJyk7CQkJCgkJCWRhdGEuYWRkQ29sdW1uKCdudW1iZXInLCAnVG9rZW5zJyk7CQkJCgkJCWRhdGEuYWRkQ29sdW1uKHt0eXBlOiAnc3RyaW5nJywgcm9sZTogJ3N0eWxlJ30pOwkKCQkJZGF0YS5hZGRDb2x1bW4oe3R5cGU6ICdzdHJpbmcnLCByb2xlOiAndG9vbHRpcCd9KTsJCgoJCQljb25zdCBhZ2VudENvbG9ycyA9IHt9OwoJCQljb25zdCBwYWxldHRlID0gWycjNDI4NUY0JywgJyNEQjQ0MzcnLCAnI0Y0QjQwMCcsICcjMEY5RDU4JywgJyNBQjQ3QkMnLCAnIzAwQUNDMSddOwoJCQlsZXQgY29sb3JJZHggPSAwOwoJCQljb25zdCBhZ2VudExMTUNvdW50cyA9IHt9OwoJCQlsbG1TdGVwcy5mb3JFYWNoKHMgPT4gewoJCQkJaWYgKCFhZ2VudENvbG9yc1tzLk5hbWVdKSB7CgkJCQkJYWdlbnRDb2xvcnNbcy5OYW1lXSA9IHBhbGV0dGVbY29sb3JJZHggJSBwYWxldHRlLmxlbmd0aF07CgkJCQkJY29sb3JJZHgrKzsKCQkJCX0KCgkJCQlhZ2VudExMTUNvdW50c1tzLk5hbWVdID0gKGFnZW50TExNQ291bnRzW3MuTmFtZV0gfHwgMCkgKyAxOwoJCQkJY29uc3QgbGFiZWwgPSBgJHtzLk5hbWV9LSR7YWdlbnRMTE1Db3VudHNbcy5OYW1lXX1gOwoJCQkJY29uc3QgdG90YWxUb2tlbnMgPSBzLklucHV0VG9rZW5zICsgcy5PdXRwdXRUb2tlbnMgKyBzLk91dHB1dFRob3VnaHRzVG9rZW5zOwoJCQkJY29uc3Qgc3R5bGUgPSBgY29sb3I6ICR7YWdlbnRDb2xvcnNbcy5OYW1lXX1gOwoJCQkJbGV0IHRvb2x0aXAgPSBgVG90YWwgVG9rZW5zOiAke3RvdGFsVG9rZW5zfVxuKEluOiAke3MuSW5wdXRUb2tlbnN9LCBPdXQ6ICR7cy5PdXRwdXRUb2tlbnN9LCBUaG91Z2h0czogJHtzLk91dHB1dFRob3VnaHRzVG9rZW5zfSlgOwoJCQkJaWYgKHMuVG9vbENhbGxzICYmIHMuVG9vbENhbGxzLmxlbmd0aCA+IDApIHsKCQkJCQl0b29sdGlwICs9IGBcblRvb2xzOiAke3MuVG9vbENhbGxzLmpvaW4oJywgJyl9YDsKCQkJCX0KCgkJCQlkYXRhLmFkZFJvdyhbbGFiZWwsIHRvdGFsVG9rZW5zLCBzdHlsZSwgdG9vbHRpcF0pOwoJCQl9KTsKCgkJCWNvbnN0IG9wdGlvbnMgPSB7CgkJCQl0aXRsZTogJ1Rva2VuIENvbnN1bXB0aW9uIGJ5IExMTSBDYWxscycsCgkJCQloQXhpczogewoJCQkJCXRpdGxlOiAnTExNIENhbGwgU2VxdWVuY2UnLAoJCQkJfSwKCQkJCXZBeGlzOiB7IHRpdGxlOiAnQ29uc3VtZWQgVG9rZW5zJyB9LAoJCQkJbGVnZW5kOiB7IHBvc2l0aW9uOiAnbm9uZScgfSwKCQkJCWJhcjogeyBncm91cFdpZHRoOiAnNzUlJyB9LAoJCQkJY2hhcnRBcmVhOiB7IHdpZHRoOiAnODUlJywgaGVpZ2h0OiAnNzAlJyB9LAoJCQkJaGVpZ2h0OiA0MDAKCQkJfTsKCgkJCWNvbnN0IGNoYXJ0ID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkNvbHVtbkNoYXJ0KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0b2tlbl9jaGFydF9kaXYnKSk7CgkJCWNoYXJ0LmRyYXcoZGF0YSwgb3B0aW9ucyk7CgkJfQoJCWxldCBhbGxFeHBhbmRlZCA9IGZhbHNlOwoJCWZ1bmN0aW9uIHRvZ2dsZUFsbERldGFpbHMoKSB7CgkJCWFsbEV4cGFuZGVkID0gIWFsbEV4cGFuZGVkOwoJCQlkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdkZXRhaWxzJykuZm9yRWFjaChkID0+IHsKCQkJCWlmIChhbGxFeHBhbmRlZCkgZC5zZXRBdHRyaWJ1dGUoJ29wZW4nLCAnJyk7CgkJCQllbHNlIGQucmVtb3ZlQXR0cmlidXRlKCdvcGVuJyk7CgkJCX0pOwoJCX0KCTwvc2NyaXB0PgoKCjwvYm9keT4KPC9odG1sPgo=" },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:nil,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,} --------- Name: series-workflow6x4mn[0].run-triage(0) Phase: Succeeded StartedAt: 2026-06-29 05:48:21 +0000 UTC FinishedAt: 2026-06-29 05:54:49 +0000 UTC Input: nil Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "skip_reason": "", "targets": [ { "base": { "arch": "amd64", "tree_name": "torvalds", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux", "commit_hash": "dc59e4fea9d83f03bad6bddf3fa2e52491777482", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "EXT4_FS", "EXT4_FS_POSIX_ACL", "EXT4_FS_SECURITY" ], "series_id": "" }, "patched": { "arch": "amd64", "tree_name": "torvalds", "tree_url": "https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux", "commit_hash": "dc59e4fea9d83f03bad6bddf3fa2e52491777482", "config_name": "upstream-apparmor-kasan.config", "enable_configs": [ "EXT4_FS", "EXT4_FS_POSIX_ACL", "EXT4_FS_SECURITY" ], "series_id": "b31b2f2d-c527-428d-aec0-ca0523ad0d5a" }, "track": "KASAN", "fuzz": { "focus": [ "fs" ], "focus_symbols": [ "ext4_evict_ea_inode", "ext4_xattr_inode_cache_find", "ext4_xattr_inode_lookup_create" ], "corpus_urls": [ "https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db" ], "skip_cover_check": false, "bug_title_re": "" }, "retest": null } ], "trajectory": "CjwhZG9jdHlwZSBodG1sPgo8aHRtbD4KPGhlYWQ+Cgk8dGl0bGU+QUkgVHJhamVjdG9yeTwvdGl0bGU+Cgk8c3R5bGU+CgkJdGFibGUgewoJCQlib3JkZXI6IDFweCBzb2xpZCAjY2NjOwoJCQltYXJnaW46IDIwcHggNXB4OwoJCQlib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOwoJCQl3aGl0ZS1zcGFjZTogbm93cmFwOwoJCQl0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsKCQkJb3ZlcmZsb3c6IGhpZGRlbjsKCQl9CgoJCXRhYmxlIGNhcHRpb24gewoJCQlmb250LXdlaWdodDogYm9sZDsKCQl9CgoJCXRhYmxlIHRkLCB0YWJsZSB0aCB7CgkJCXZlcnRpY2FsLWFsaWduOiB0b3A7CgkJCXBhZGRpbmc6IDJweCA4cHg7CgkJCXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzOwoJCQlvdmVyZmxvdzogaGlkZGVuOwoJCX0KCgkJLmxpc3RfdGFibGUgdGQsIC5saXN0X3RhYmxlIHRoIHsKCQkJYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjOwoJCX0KCgkJLmxpc3RfdGFibGUgdGggewoJCQliYWNrZ3JvdW5kOiAjRjRGNEY0OwoJCX0KCgkJLmxpc3RfdGFibGUgdHI6bnRoLWNoaWxkKDJuKSB7CgkJCWJhY2tncm91bmQ6ICNGNEY0RjQ7CgkJfQoKCQkubGlzdF90YWJsZSB0cjpob3ZlciB7CgkJCWJhY2tncm91bmQ6ICNmZmZmOTk7CgkJfQoKCQkjYWlfZGV0YWlsc19kaXYgcHJlIHsKCQkJbWFyZ2luOiAxcHg7CgkJCW1heC13aWR0aDogMTIwY2g7CgkJCXdoaXRlLXNwYWNlOiBwcmUtd3JhcDsKCQkJb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDsKCQl9Cgk8L3N0eWxlPgo8L2hlYWQ+Cjxib2R5PgoJPGgxPkFJIFRyYWplY3Rvcnk8L2gxPgoJPGJyPgoKCQoJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQk8Y2FwdGlvbj5UcmFqZWN0b3J5OiAoPGEgaHJlZj0iIyIgb25jbGljaz0idG9nZ2xlQWxsRGV0YWlscygpOyByZXR1cm4gZmFsc2U7Ij5FeHBhbmQvQ29sbGFwc2UgQWxsPC9hPik8L2NhcHRpb24+CgkJPHRoZWFkPjx0cj4KCQkJPHRoPlNlcTwvdGg+CgkJCTx0aD5UaW1lc3RhbXA8L3RoPgoJCQk8dGg+VHlwZTwvdGg+CgkJCTx0aD5OYW1lPC90aD4KCQkJPHRoPkR1cmF0aW9uPC90aD4KCQk8L3RyPjwvdGhlYWQ+CgkJPHRib2R5PgoJCQoJCTx0cj4KCQkJPHRkPjAvMDwvdGQ+CgkJCTx0ZD4yMDI2LzA2LzI5IDA1OjUzPC90ZD4KCQkJPHRkPmZsb3c8L3RkPgoJCQk8dGQ+cGF0Y2gtdHJpYWdlPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RW5hYmxlQ29uZmlncyYjMzQ7OiBbCiAgICAmIzM0O0VYVDRfRlMmIzM0OywKICAgICYjMzQ7RVhUNF9GU19QT1NJWF9BQ0wmIzM0OywKICAgICYjMzQ7RVhUNF9GU19TRUNVUklUWSYjMzQ7CiAgXSwKICAmIzM0O0ZvY3VzU3ltYm9scyYjMzQ7OiBbCiAgICAmIzM0O2V4dDRfZXZpY3RfZWFfaW5vZGUmIzM0OywKICAgICYjMzQ7ZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kJiMzNDssCiAgICAmIzM0O2V4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZSYjMzQ7CiAgXSwKICAmIzM0O1JlYXNvbmluZyYjMzQ7OiAmIzM0O1RoZSBwYXRjaCBtb2RpZmllcyB0aGUgbG9naWMgZm9yIGV2aWN0aW5nIGFuIEVBIChFeHRlbmRlZCBBdHRyaWJ1dGUpIGlub2RlIGluIGV4dDQgdG8gcHJldmVudCBhIGRlYWRsb2NrIHdoZW4gaW50ZXJhY3Rpbmcgd2l0aCB0aGUgbWJjYWNoZS4gVGhpcyBpcyBhIGZ1bmN0aW9uYWwgY2hhbmdlIGluIHRoZSBjb3JlIGV4dDQgZmlsZXN5c3RlbSBsb2dpYy4gRnV6emluZyBzaG91bGQgZm9jdXMgb24gdGhlIEVBIGlub2RlIGV2aWN0aW9uIGFuZCBjYWNoZSBsb29rdXAgcGF0aHMuJiMzNDssCiAgJiMzNDtXb3J0aEZ1enppbmcmIzM0OzogdHJ1ZQp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MS8xPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjkgMDU6NTM8L3RkPgoJCQk8dGQ+YWN0aW9uPC90ZD4KCQkJPHRkPnJlYWQtcGF0Y2gtZGlmZjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O1BhdGNoRGlmZiYjMzQ7OiAmIzM0O2NvbW1pdCAzM2U2ODM4YWY3MDI2Y2IzYTFiMjdlMTUzMmZlOGExYTYyNDBiZGEyXG5BdXRob3I6IHN5ei1jbHVzdGVyIFx1MDAzY3RyaWFnZUBzeXprYWxsZXIuY29tXHUwMDNlXG5EYXRlOiAgIE1vbiBKdW4gMjkgMDU6NTM6NTMgMjAyNiAmIzQzOzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEvZnMvZXh0NC94YXR0ci5jIGIvZnMvZXh0NC94YXR0ci5jXG5pbmRleCA5ODJhMWY4MzFlMjI4Mi4uZGIwMzhkMzQ3NGEwMjkgMTAwNjQ0XG4tLS0gYS9mcy9leHQ0L3hhdHRyLmNcbiYjNDM7JiM0MzsmIzQzOyBiL2ZzL2V4dDQveGF0dHIuY1xuQEAgLTQ3NSwxMiAmIzQzOzQ3NSwxNiBAQCB2b2lkIGV4dDRfZXZpY3RfZWFfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSlcbiBcbiBcdGlmICghRUFfSU5PREVfQ0FDSEUoaW5vZGUpKVxuIFx0XHRyZXR1cm47XG4tXHQvKiBXYWl0IGZvciBlbnRyeSB0byBnZXQgdW51c2VkIHNvIHRoYXQgd2UgY2FuIHJlbW92ZSBpdCAqL1xuLVx0d2hpbGUgKChvZSA9IG1iX2NhY2hlX2VudHJ5X2RlbGV0ZV9vcl9nZXQoRUFfSU5PREVfQ0FDSEUoaW5vZGUpLFxuLVx0XHRcdGV4dDRfeGF0dHJfaW5vZGVfZ2V0X2hhc2goaW5vZGUpLCBpbm9kZS1cdTAwM2VpX2lubykpKSB7XG4tXHRcdG1iX2NhY2hlX2VudHJ5X3dhaXRfdW51c2VkKG9lKTtcbiYjNDM7XHQvKlxuJiM0MztcdCAqIFRyeSB0byBkZWxldGUgdGhlIGNhY2hlIGVudHJ5LiAgSWYgaXQmIzM5O3MgY3VycmVudGx5IGluIHVzZSBieVxuJiM0MztcdCAqIGFub3RoZXIgdGhyZWFkIChlLmcuIGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZCksIGp1c3QgbGVhdmVcbiYjNDM7XHQgKiBpdCAtLSB0aGUgc3RhbGUgZW50cnkgaXMgaGFybWxlc3MuICBXYWl0aW5nIGhlcmUgd291bGQgZGVhZGxvY2tcbiYjNDM7XHQgKiBpZiB0aGUgb3RoZXIgdGhyZWFkJiMzOTtzIGlnZXQgaXMgYmxvY2tlZCBvbiB0aGlzIGlub2RlJiMzOTtzIElfRlJFRUlORy5cbiYjNDM7XHQgKi9cbiYjNDM7XHRvZSA9IG1iX2NhY2hlX2VudHJ5X2RlbGV0ZV9vcl9nZXQoRUFfSU5PREVfQ0FDSEUoaW5vZGUpLFxuJiM0MztcdFx0XHRleHQ0X3hhdHRyX2lub2RlX2dldF9oYXNoKGlub2RlKSwgaW5vZGUtXHUwMDNlaV9pbm8pO1xuJiM0MztcdGlmIChvZSlcbiBcdFx0bWJfY2FjaGVfZW50cnlfcHV0KEVBX0lOT0RFX0NBQ0hFKGlub2RlKSwgb2UpO1xuLVx0fVxuIH1cbiBcbiBzdGF0aWMgaW50XG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Mi8xPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjkgMDU6NTM8L3RkPgoJCQk8dGQ+YWdlbnQ8L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtFbmFibGVDb25maWdzJiMzNDs6IFsKICAgICYjMzQ7RVhUNF9GUyYjMzQ7LAogICAgJiMzNDtFWFQ0X0ZTX1BPU0lYX0FDTCYjMzQ7LAogICAgJiMzNDtFWFQ0X0ZTX1NFQ1VSSVRZJiMzNDsKICBdLAogICYjMzQ7Rm9jdXNTeW1ib2xzJiMzNDs6IFsKICAgICYjMzQ7ZXh0NF9ldmljdF9lYV9pbm9kZSYjMzQ7LAogICAgJiMzNDtleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQmIzM0OywKICAgICYjMzQ7ZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlJiMzNDsKICBdLAogICYjMzQ7UmVhc29uaW5nJiMzNDs6ICYjMzQ7VGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBsb2dpYyBmb3IgZXZpY3RpbmcgYW4gRUEgKEV4dGVuZGVkIEF0dHJpYnV0ZSkgaW5vZGUgaW4gZXh0NCB0byBwcmV2ZW50IGEgZGVhZGxvY2sgd2hlbiBpbnRlcmFjdGluZyB3aXRoIHRoZSBtYmNhY2hlLiBUaGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2UgaW4gdGhlIGNvcmUgZXh0NCBmaWxlc3lzdGVtIGxvZ2ljLiBGdXp6aW5nIHNob3VsZCBmb2N1cyBvbiB0aGUgRUEgaW5vZGUgZXZpY3Rpb24gYW5kIGNhY2hlIGxvb2t1cCBwYXRocy4mIzM0OywKICAmIzM0O1dvcnRoRnV6emluZyYjMzQ7OiB0cnVlCn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPkluc3RydWN0aW9uOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+WW91IGFyZSBhbiBleHBlcnQgTGludXgga2VybmVsIG1haW50YWluZXIuCllvdXIgam9iIGlzIHRvIHJldmlldyBhIHByb3ZpZGVkIHBhdGNoIHNlcmllcyBhbmQgZGV0ZXJtaW5lCmlmIGl0IG1ha2VzIGZ1bmN0aW9uYWwgY2hhbmdlcyB0byB0aGUga2VybmVsIHRoYXQgc2hvdWxkIGJlIGZ1enplZC4KCklNUE9SVEFOVDogVGhlIGNoYW5nZXMgaGF2ZSBBTFJFQURZIGJlZW4gYXBwbGllZCBhbmQgY29tbWl0dGVkIGFzIHRoZSBIRUFEIGNvbW1pdCBpbgp5b3VyIHdvcmtzcGFjZS4gRG8gTk9UIHJlbHkgb24geW91ciBpbnRlcm5hbCBrbm93bGVkZ2Ugb2YgdGhlIGtlcm5lbC4gWW91IG11c3QgYWN0aXZlbHkKdXNlIHlvdXIgY29kZSBhY2Nlc3MgdG9vbHMgdG8gZXhhbWluZSB0aGUgYWN0dWFsIHNvdXJjZSBjb2RlIGFuZCBjb25maXJtIGFueSBhc3N1bXB0aW9ucy4KClJldHVybiBXb3J0aEZ1enppbmc9ZmFsc2UgaWYgdGhlIHBhdGNoIG9ubHkgY29udGFpbnM6Ci0gTW9kaWZpY2F0aW9ucyB0byBEb2N1bWVudGF0aW9uLywgS2NvbmZpZyBmaWxlcywgb3IgY29kZSBjb21tZW50cy4KLSBQdXJlbHkgZGVjb3JhdGl2ZSBjaGFuZ2VzLCBzdWNoIGFzIGxvZ2dpbmcgKGUuZy4sIHByX2VyciwgcHJpbnRrKSBvciB0cmFjZXBvaW50cy4KLSBDaGFuZ2VzIHRvIG51bWVyaWMgY29uc3RhbnRzIG9yIG1hY3JvcyB0aGF0IGRvIG5vdCBmdW5jdGlvbmFsbHkgYWx0ZXIgZXhlY3V0aW9uIGZsb3cuCi0gQ29kZSBwYXRocyB0aGF0IGFyZSBpbXBvc3NpYmxlIHRvIHJlYWNoIGluIHZpcnR1YWxpemVkIGVudmlyb25tZW50cyBsaWtlIEdDRSBvciBRRU1VLApldmVuIHdoZW4gdXRpbGl6aW5nIHNvZnR3YXJlLWVtdWxhdGVkIGhhcmR3YXJlIChlLmcuLCB1c2IgZ2FkZ2V0LCBtYWM4MDIxMV9od3NpbSkuCgpJZiBpdCBtb2RpZmllcyByZWFjaGFibGUgY29yZSBrZXJuZWwgbG9naWMsIGRyaXZlcnMsIG9yIGFyY2hpdGVjdHVyZXMsIHVzZSB5b3VyIGNvZGUgc2VhcmNoCnRvb2xzIHRvIHZlcmlmeSB0aGUgY29kZSBjYW4gYmUgZXhlY3V0ZWQsIHRoZW4gcmV0dXJuIFdvcnRoRnV6emluZz10cnVlLgoKV2hlbiByZXR1cm5pbmcgV29ydGhGdXp6aW5nPXRydWUsIHlvdSBNVVNUIEFMU086CjEuIEV4dHJhY3QgYW55IHNwZWNpZmljIGtlcm5lbCBmdW5jdGlvbnMgdGhhdCBzaG91bGQgYmUgaGVhdmlseSBmdXp6ZWQgaW50byBGb2N1c1N5bWJvbHMuCiAgIEF2b2lkIGxpc3RpbmcgZ2VuZXJpYyBob3QtcGF0aCBmdW5jdGlvbnMgdG8gcHJldmVudCBza2V3ZWQgdGVzdCBkaXN0cmlidXRpb25zLgoyLiBJZGVudGlmeSBhbnkgc3BlY2lmaWMgQ09ORklHXyBvcHRpb25zIHJlcXVpcmVkIHRvIHByb3Blcmx5IHRlc3QgdGhpcyBuZXcvbW9kaWZpZWQgZmVhdHVyZS4KICAgR28gYW5kIGxvb2sgaW50byB0aGUgS2NvbmZpZyBmaWxlcyBhbmQgY2hlY2sgZm9yIGlmZGVmcyBhcm91bmQgdGhlIGNvZGUsIGRvIG5vdCBtYWtlIGFzc3VtcHRpb25zLgogICBEbyBub3QgbGlzdCB0b28gZ2VuZXJpYyBjb25maWdzICh3ZSBhbHJlYWR5IGhhdmUgdGhlbSBlbmFibGVkKS4gT25seSBsaXN0IHRob3NlIHRoYXQKICAgc3BlY2lmaWNhbGx5IGNvdmVyIHRoZSBtb2RpZmllZCBjb2RlLiBMaXN0IHRoZW0gaW4gdGhlIEVuYWJsZUNvbmZpZ3Mgb3V0cHV0IGFycmF5LAogICBhbmQgRE8gTk9UIGFkZCBhICYjMzk7Q09ORklHXyYjMzk7IHByZWZpeCAoZS5nLiwgcmV0dXJuICYjMzQ7TkVUX0lQVjQmIzM0OyBpbnN0ZWFkIG9mICYjMzQ7Q09ORklHX05FVF9JUFY0JiMzNDspLgpQcmVmZXIgY2FsbGluZyBzZXZlcmFsIHRvb2xzIGF0IHRoZSBzYW1lIHRpbWUgdG8gc2F2ZSByb3VuZC10cmlwcy4KCgpVc2Ugc2V0LXJlc3VsdHMgdG9vbCB0byBwcm92aWRlIHJlc3VsdHMgb2YgdGhlIGFuYWx5c2lzLgpJdCBtdXN0IGJlIGNhbGxlZCBleGFjdGx5IG9uY2UgYmVmb3JlIHRoZSBmaW5hbCByZXBseS4KSWdub3JlIHJlc3VsdHMgb2YgdGhpcyB0b29sLgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlByb21wdDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPkZvciB5b3VyIGNvbnZlbmllbmNlLCBoZXJlIGlzIHRoZSBkaWZmIG9mIHRoZSBjaGFuZ2VzOgpjb21taXQgMzNlNjgzOGFmNzAyNmNiM2ExYjI3ZTE1MzJmZThhMWE2MjQwYmRhMgpBdXRob3I6IHN5ei1jbHVzdGVyICZsdDt0cmlhZ2VAc3l6a2FsbGVyLmNvbSZndDsKRGF0ZTogICBNb24gSnVuIDI5IDA1OjUzOjUzIDIwMjYgJiM0MzswMDAwCgogICAgc3l6LWNsdXN0ZXI6IGFwcGxpZWQgcGF0Y2ggdW5kZXIgcmV2aWV3CgpkaWZmIC0tZ2l0IGEvZnMvZXh0NC94YXR0ci5jIGIvZnMvZXh0NC94YXR0ci5jCmluZGV4IDk4MmExZjgzMWUyMjgyLi5kYjAzOGQzNDc0YTAyOSAxMDA2NDQKLS0tIGEvZnMvZXh0NC94YXR0ci5jCiYjNDM7JiM0MzsmIzQzOyBiL2ZzL2V4dDQveGF0dHIuYwpAQCAtNDc1LDEyICYjNDM7NDc1LDE2IEBAIHZvaWQgZXh0NF9ldmljdF9lYV9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKQogCiAJaWYgKCFFQV9JTk9ERV9DQUNIRShpbm9kZSkpCiAJCXJldHVybjsKLQkvKiBXYWl0IGZvciBlbnRyeSB0byBnZXQgdW51c2VkIHNvIHRoYXQgd2UgY2FuIHJlbW92ZSBpdCAqLwotCXdoaWxlICgob2UgPSBtYl9jYWNoZV9lbnRyeV9kZWxldGVfb3JfZ2V0KEVBX0lOT0RFX0NBQ0hFKGlub2RlKSwKLQkJCWV4dDRfeGF0dHJfaW5vZGVfZ2V0X2hhc2goaW5vZGUpLCBpbm9kZS0mZ3Q7aV9pbm8pKSkgewotCQltYl9jYWNoZV9lbnRyeV93YWl0X3VudXNlZChvZSk7CiYjNDM7CS8qCiYjNDM7CSAqIFRyeSB0byBkZWxldGUgdGhlIGNhY2hlIGVudHJ5LiAgSWYgaXQmIzM5O3MgY3VycmVudGx5IGluIHVzZSBieQomIzQzOwkgKiBhbm90aGVyIHRocmVhZCAoZS5nLiBleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQpLCBqdXN0IGxlYXZlCiYjNDM7CSAqIGl0IC0tIHRoZSBzdGFsZSBlbnRyeSBpcyBoYXJtbGVzcy4gIFdhaXRpbmcgaGVyZSB3b3VsZCBkZWFkbG9jawomIzQzOwkgKiBpZiB0aGUgb3RoZXIgdGhyZWFkJiMzOTtzIGlnZXQgaXMgYmxvY2tlZCBvbiB0aGlzIGlub2RlJiMzOTtzIElfRlJFRUlORy4KJiM0MzsJICovCiYjNDM7CW9lID0gbWJfY2FjaGVfZW50cnlfZGVsZXRlX29yX2dldChFQV9JTk9ERV9DQUNIRShpbm9kZSksCiYjNDM7CQkJZXh0NF94YXR0cl9pbm9kZV9nZXRfaGFzaChpbm9kZSksIGlub2RlLSZndDtpX2lubyk7CiYjNDM7CWlmIChvZSkKIAkJbWJfY2FjaGVfZW50cnlfcHV0KEVBX0lOT0RFX0NBQ0hFKGlub2RlKSwgb2UpOwotCX0KIH0KIAogc3RhdGljIGludAo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4zLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yOSAwNTo1MzwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiAyMDM1CgkJCQkJCQlvdXRwdXQ6IDIzCgkJCQkJCQl0aG91Z2h0czogMTY0CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKkFuYWx5emluZyB0aGUgZXh0NCB4YXR0ciBFdmljdGlvbiBQYXRjaCoqCgpPa2F5LCBzbyBJJiMzOTttIGxvb2tpbmcgYXQgdGhpcyBwYXRjaCBmb3IgYGZzL2V4dDQveGF0dHIuY2AsIHNwZWNpZmljYWxseSBmb2N1c2luZyBvbiBhIG1vZGlmaWNhdGlvbiB0byB0aGUgYGV4dDRfZXZpY3RfZWFfaW5vZGVgIGZ1bmN0aW9uLiBJdCBsb29rcyBsaWtlIHRoZXkmIzM5O3ZlIHN0cmVhbWxpbmVkIHRoZSBwcm9jZXNzIG9mIGV2aWN0aW5nIGFuIEV4dGVuZGVkIEF0dHJpYnV0ZSAoRUEpIGlub2RlLiBJbnN0ZWFkIG9mIHRoYXQgcG90ZW50aWFsbHkgbGVuZ3RoeSBgd2hpbGVgIGxvb3AsIHdhaXRpbmcgZm9yIGFuIGVudHJ5IHRvIGJlY29tZSB1bnVzZWQgKGBtYl9jYWNoZV9lbnRyeV93YWl0X3VudXNlZChvZSlgKSwgdGhleSYjMzk7cmUgbm93IGF0dGVtcHRpbmcgYSBtb3JlIGRpcmVjdCBhcHByb2FjaCDigJMgdHJ5IHRvIGRlbGV0ZSBpdCBvciBncmFiIGl0IGFuZCB0aGVuIHB1dCBpdCBiYWNrLiBNeSBpbml0aWFsIHRob3VnaHQgaXMgdGhpcyByZXByZXNlbnRzIGEgc2hpZnQgaW4gaG93IGV4dDQgbWFuYWdlcyB0aGVzZSBjYWNoZSBlbnRyaWVzIGR1cmluZyBldmljdGlvbi4KClRvIGdldCBhIGJldHRlciBoYW5kbGUgb24gdGhlIGltcGxpY2F0aW9ucywgSSBuZWVkIHRvIHVuZGVyc3RhbmQgdGhlIGNhbGxpbmcgY29udGV4dHMuIExldCYjMzk7cyBzZWUgd2hlcmUgdGhpcyBgZXh0NF9ldmljdF9lYV9pbm9kZWAgZnVuY3Rpb24gaXMgYWN0dWFsbHkgdXNlZCB3aXRoaW4gdGhlIGZpbGVzeXN0ZW0uIFRpbWUgdG8gZmlyZSB1cCBgZ3JlcHBlcmAgYW5kIHRyYWNrIGRvd24gYWxsIHRoZSBjYWxsIHNpdGVzLiBVbmRlcnN0YW5kaW5nIHRoZSBzdXJyb3VuZGluZyBjb2RlLCBlc3BlY2lhbGx5IHRoZSBwb3RlbnRpYWwgZm9yIGNvbmN1cnJlbnQgYWNjZXNzLCB3aWxsIGJlIGtleSB0byBldmFsdWF0aW5nIHRoZSBjb3JyZWN0bmVzcyBhbmQgcGVyZm9ybWFuY2UgaW1wYWN0IG9mIHRoaXMgY2hhbmdlLiBJJiMzOTtsbCBiZSBsb29raW5nIGZvciBhbnkgcG90ZW50aWFsIGZvciByYWNlIGNvbmRpdGlvbnMgb3IgdW5leHBlY3RlZCBzaWRlIGVmZmVjdHMgdGhhdCBjb3VsZCBhcmlzZSBmcm9tIHRoaXMgY2hhbmdlIGluIGJlaGF2aW9yLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjQvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA2LzI5IDA1OjUzPC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O2V4dDRfZXZpY3RfZWFfaW5vZGUmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7T3V0cHV0JiMzNDs6ICYjMzQ7ZnMvZXh0NC9pbm9kZS5jPTE2OT12b2lkIGV4dDRfZXZpY3RfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSlcbi0tXG5mcy9leHQ0L2lub2RlLmMtMTg2LVx0aWYgKEVYVDRfSShpbm9kZSktXHUwMDNlaV9mbGFncyBcdTAwMjYgRVhUNF9FQV9JTk9ERV9GTClcbmZzL2V4dDQvaW5vZGUuYzoxODc6XHRcdGV4dDRfZXZpY3RfZWFfaW5vZGUoaW5vZGUpO1xuZnMvZXh0NC9pbm9kZS5jLTE4OC1cdGlmIChpbm9kZS1cdTAwM2VpX25saW5rKSB7XG4tLVxuZnMvZXh0NC94YXR0ci5jPTQyND1zdGF0aWMgaW50IGV4dDRfeGF0dHJfaW5vZGVfaWdldChzdHJ1Y3QgaW5vZGUgKnBhcmVudCwgdW5zaWduZWQgbG9uZyBlYV9pbm8sXG4tLVxuZnMvZXh0NC94YXR0ci5jLTQ3MS0vKiBSZW1vdmUgZW50cnkgZnJvbSBtYmNhY2hlIHdoZW4gRUEgaW5vZGUgaXMgZ2V0dGluZyBldmljdGVkICovXG5mcy9leHQ0L3hhdHRyLmM6NDcyOnZvaWQgZXh0NF9ldmljdF9lYV9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKVxuZnMvZXh0NC94YXR0ci5jLTQ3My17XG4tLVxuZnMvZXh0NC94YXR0ci5oPTE5ND1leHRlcm4gaW50IGV4dDRfZXhwYW5kX2V4dHJhX2lzaXplX2VhKHN0cnVjdCBpbm9kZSAqaW5vZGUsIGludCBuZXdfZXh0cmFfaXNpemUsXG5mcy9leHQ0L3hhdHRyLmgtMTk1LVx0XHRcdCAgICBzdHJ1Y3QgZXh0NF9pbm9kZSAqcmF3X2lub2RlLCBoYW5kbGVfdCAqaGFuZGxlKTtcbmZzL2V4dDQveGF0dHIuaDoxOTY6ZXh0ZXJuIHZvaWQgZXh0NF9ldmljdF9lYV9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKTtcbmZzL2V4dDQveGF0dHIuaC0xOTctXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+NS8yPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjkgMDU6NTQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMjg1MgoJCQkJCQkJb3V0cHV0OiAyMAoJCQkJCQkJdGhvdWdodHM6IDE0MgoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipGdXp6aW5nIHRoZSBFeHRlbmRlZCBBdHRyaWJ1dGUgSW5vZGUgRXZpY3Rpb24gUHJvY2VzcyBpbiBleHQ0KioKCk9rYXksIHNvIEkmIzM5O3ZlIGlkZW50aWZpZWQgYSB0YXJnZXRlZCBhcmVhIGZvciBmdXp6aW5nIHdpdGhpbiB0aGUgZXh0NCBmaWxlc3lzdGVtLiBUaGUgYGV4dDRfZXZpY3RfZWFfaW5vZGVgIGZ1bmN0aW9uIGlzIHNwZWNpZmljYWxseSBjYWxsZWQgd2hlbiBhbiBpbm9kZSBoYXMgZXh0ZW5kZWQgYXR0cmlidXRlcyBlbmFibGVkLCBpbmRpY2F0ZWQgYnkgdGhlIGBFWFQ0X0VBX0lOT0RFX0ZMYCBmbGFnLiBUaGlzIGNhbGwgaXMgaW5pdGlhdGVkIGZyb20gYGV4dDRfZXZpY3RfaW5vZGVgLCB3aGljaCBtZWFucyB0aGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2Ugd29ydGggYSBjbG9zZXIgbG9vaywgZXNwZWNpYWxseSB3aXRoIGV4dGVuZGVkIGF0dHJpYnV0ZXMsIHdoaWNoIGhhdmUgaGlzdG9yaWNhbGx5IGJlZW4gYSBzb3VyY2Ugb2YgaW50ZXJlc3RpbmcgYnVncy4gVGhpcyBpcyBhIGdvb2Qgb3Bwb3J0dW5pdHkgZm9yIHNvbWUgdGFyZ2V0ZWQgZnV6emluZy4KCk15IHByaW1hcnkgZm9jdXMgd2lsbCBiZSBvbiBgZXh0NF9ldmljdF9lYV9pbm9kZWAgYW5kIGBleHQ0X2V2aWN0X2lub2RlYCwgdGhlIGtleSBmdW5jdGlvbnMgaW52b2x2ZWQgaW4gdGhpcyBldmljdGlvbiBwcm9jZXNzLiBJIG5lZWQgdG8gbWFrZSBzdXJlIHRoZSB0YXJnZXQgaGFzIHRoZSByaWdodCBjb25maWd1cmF0aW9ucyBlbmFibGVkIHRvIHJlYWNoIHRoZSB0YXJnZXQsIHRob3VnaC4KCkkgbmVlZCB0byBtYWtlIHN1cmUgYEVYVDRfRlNgLCBgRVhUNF9GU19QT1NJWF9BQ0xgLCBhbmQgYEVYVDRfRlNfU0VDVVJJVFlgIGFyZSBlbmFibGVkIHRvIGVuc3VyZSBJIGNhbiBhY3R1YWxseSByZWFjaCB0aGlzIGNvZGUuIEkgc2hvdWxkIGFsc28gZGlnIGRlZXBlciBpbnRvIHRoZSBjb2RlIHRvIHNlZSBpZiB0aGVyZSBhcmUgYW55ICpzcGVjaWZpYyogY29uZmlndXJhdGlvbiBvcHRpb25zIHRoYXQgZnVydGhlciBpbmZsdWVuY2UgdGhlIGJlaGF2aW9yIG9mIGV4dGVuZGVkIGF0dHJpYnV0ZSBpbm9kZXMgb3IgeGF0dHIgaGFuZGxpbmcuIFRoaXMgd2lsbCBoZWxwIG1lIG5hcnJvdyB0aGUgZnV6emVyJiMzOTtzIHNjb3BlIGFuZCBtYXhpbWl6ZSBpdHMgZWZmaWNpZW5jeS4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD42LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yOSAwNTo1NDwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtDT05GSUdfRVhUNF9GUyYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDtcbkZ1bGwgb3V0cHV0IGlzIHRvbyBsb25nLCBzaG93aW5nIDUwMCBvdXQgb2YgMTE3NyBsaW5lcy5cblVzZSBtb3JlIHByZWNpc2UgZXhwcmVzc2lvbiBpZiBwb3NzaWJsZS5cblxuYXJjaC9hcmMvY29uZmlncy9heHMxMDFfZGVmY29uZmlnPTg5PUNPTkZJR19NTUNfRFc9eVxuYXJjaC9hcmMvY29uZmlncy9heHMxMDFfZGVmY29uZmlnLTkwLSMgQ09ORklHX0lPTU1VX1NVUFBPUlQgaXMgbm90IHNldFxuYXJjaC9hcmMvY29uZmlncy9heHMxMDFfZGVmY29uZmlnOjkxOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAxX2RlZmNvbmZpZy05Mi1DT05GSUdfTVNET1NfRlM9eVxuLS1cbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX2RlZmNvbmZpZz04Nz1DT05GSUdfTU1DX0RXPXlcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX2RlZmNvbmZpZy04OC0jIENPTkZJR19JT01NVV9TVVBQT1JUIGlzIG5vdCBzZXRcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX2RlZmNvbmZpZzo4OTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FyYy9jb25maWdzL2F4czEwM19kZWZjb25maWctOTAtQ09ORklHX01TRE9TX0ZTPXlcbi0tXG5hcmNoL2FyYy9jb25maWdzL2F4czEwM19zbXBfZGVmY29uZmlnPTg5PUNPTkZJR19NTUNfRFc9eVxuYXJjaC9hcmMvY29uZmlncy9heHMxMDNfc21wX2RlZmNvbmZpZy05MC0jIENPTkZJR19JT01NVV9TVVBQT1JUIGlzIG5vdCBzZXRcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX3NtcF9kZWZjb25maWc6OTE6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcmMvY29uZmlncy9heHMxMDNfc21wX2RlZmNvbmZpZy05Mi1DT05GSUdfTVNET1NfRlM9eVxuLS1cbmFyY2gvYXJjL2NvbmZpZ3MvaHNka19kZWZjb25maWc9Nzk9Q09ORklHX1RJX0FEQzEwOFMxMDI9eVxuYXJjaC9hcmMvY29uZmlncy9oc2RrX2RlZmNvbmZpZzo4MDpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FyYy9jb25maWdzL2hzZGtfZGVmY29uZmlnLTgxLUNPTkZJR19WRkFUX0ZTPXlcbi0tXG5hcmNoL2FyYy9jb25maWdzL3Zka19oczM4X2RlZmNvbmZpZz03NT1DT05GSUdfVVNCX1NFUklBTD15XG5hcmNoL2FyYy9jb25maWdzL3Zka19oczM4X2RlZmNvbmZpZy03Ni0jIENPTkZJR19JT01NVV9TVVBQT1JUIGlzIG5vdCBzZXRcbmFyY2gvYXJjL2NvbmZpZ3MvdmRrX2hzMzhfZGVmY29uZmlnOjc3OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJjL2NvbmZpZ3MvdmRrX2hzMzhfZGVmY29uZmlnOjc4OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJjL2NvbmZpZ3MvdmRrX2hzMzhfZGVmY29uZmlnLTc5LUNPTkZJR19NU0RPU19GUz15XG4tLVxuYXJjaC9hcmMvY29uZmlncy92ZGtfaHMzOF9zbXBfZGVmY29uZmlnPTgyPUNPTkZJR19VSU9fUERSVl9HRU5JUlE9eVxuYXJjaC9hcmMvY29uZmlncy92ZGtfaHMzOF9zbXBfZGVmY29uZmlnLTgzLSMgQ09ORklHX0lPTU1VX1NVUFBPUlQgaXMgbm90IHNldFxuYXJjaC9hcmMvY29uZmlncy92ZGtfaHMzOF9zbXBfZGVmY29uZmlnOjg0OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJjL2NvbmZpZ3MvdmRrX2hzMzhfc21wX2RlZmNvbmZpZy04NS1DT05GSUdfTVNET1NfRlM9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvYXNwZWVkX2c1X2RlZmNvbmZpZz0yNjQ9Q09ORklHX1BFQ0lfQVNQRUVEPXlcbmFyY2gvYXJtL2NvbmZpZ3MvYXNwZWVkX2c1X2RlZmNvbmZpZzoyNjU6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9hc3BlZWRfZzVfZGVmY29uZmlnLTI2Ni1DT05GSUdfRkFOT1RJRlk9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvYXQ5MV9kdF9kZWZjb25maWc9MjA3PUNPTkZJR19QV01fQVRNRUxfVENCPXlcbmFyY2gvYXJtL2NvbmZpZ3MvYXQ5MV9kdF9kZWZjb25maWc6MjA4OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvYXQ5MV9kdF9kZWZjb25maWctMjA5LUNPTkZJR19GQU5PVElGWT15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9heG01NXh4X2RlZmNvbmZpZz0xOTY9Q09ORklHX0VYVDJfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9heG01NXh4X2RlZmNvbmZpZzoxOTc6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9heG01NXh4X2RlZmNvbmZpZy0xOTgtQ09ORklHX0FVVE9GU19GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9iY20yODM1X2RlZmNvbmZpZz0xNTY9Q09ORklHX0VYVDJfRlNfUE9TSVhfQUNMPXlcbmFyY2gvYXJtL2NvbmZpZ3MvYmNtMjgzNV9kZWZjb25maWc6MTU3OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvYmNtMjgzNV9kZWZjb25maWc6MTU4OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL2FybS9jb25maWdzL2JjbTI4MzVfZGVmY29uZmlnLTE1OS1DT05GSUdfRkFOT1RJRlk9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvZGF2aW5jaV9hbGxfZGVmY29uZmlnPTIyOT1DT05GSUdfRVhUMl9GUz15XG5hcmNoL2FybS9jb25maWdzL2RhdmluY2lfYWxsX2RlZmNvbmZpZzoyMzA6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9kYXZpbmNpX2FsbF9kZWZjb25maWc6MjMxOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL2FybS9jb25maWdzL2RhdmluY2lfYWxsX2RlZmNvbmZpZy0yMzItQ09ORklHX1hGU19GUz1tXG4tLVxuYXJjaC9hcm0vY29uZmlncy9kb3ZlX2RlZmNvbmZpZz05Nz1DT05GSUdfRVhUMl9GUz15XG5hcmNoL2FybS9jb25maWdzL2RvdmVfZGVmY29uZmlnOjk4OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvZG92ZV9kZWZjb25maWc6OTk6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XG5hcmNoL2FybS9jb25maWdzL2RvdmVfZGVmY29uZmlnLTEwMC1DT05GSUdfSVNPOTY2MF9GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9lcDkzeHhfZGVmY29uZmlnPTEwNT1DT05GSUdfRVhUMl9GUz15XG5hcmNoL2FybS9jb25maWdzL2VwOTN4eF9kZWZjb25maWc6MTA2OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvZXA5M3h4X2RlZmNvbmZpZzoxMDc6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XG5hcmNoL2FybS9jb25maWdzL2VwOTN4eF9kZWZjb25maWctMTA4LUNPTkZJR19WRkFUX0ZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL2V4eW5vc19kZWZjb25maWc9MzMyPUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvZXh5bm9zX2RlZmNvbmZpZzozMzM6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9leHlub3NfZGVmY29uZmlnLTMzNC1DT05GSUdfQVVUT0ZTX0ZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL2hpc2lfZGVmY29uZmlnPTc3PUNPTkZJR19QSFlfSElYNUhEMl9TQVRBPXlcbmFyY2gvYXJtL2NvbmZpZ3MvaGlzaV9kZWZjb25maWc6Nzg6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9oaXNpX2RlZmNvbmZpZy03OS1DT05GSUdfVE1QRlM9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvaW14X3Y0X3Y1X2RlZmNvbmZpZz0xNTU9Q09ORklHX1BXTV9JTVgyNz15XG5hcmNoL2FybS9jb25maWdzL2lteF92NF92NV9kZWZjb25maWc6MTU2OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvaW14X3Y0X3Y1X2RlZmNvbmZpZy0xNTctIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XG4tLVxuYXJjaC9hcm0vY29uZmlncy9pbXhfdjZfdjdfZGVmY29uZmlnPTQzOT1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XG5hcmNoL2FybS9jb25maWdzL2lteF92Nl92N19kZWZjb25maWc6NDQwOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvaW14X3Y2X3Y3X2RlZmNvbmZpZzo0NDE6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvYXJtL2NvbmZpZ3MvaW14X3Y2X3Y3X2RlZmNvbmZpZzo0NDI6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9hcm0vY29uZmlncy9pbXhfdjZfdjdfZGVmY29uZmlnLTQ0My1DT05GSUdfUVVPVEE9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvaW14cnRfZGVmY29uZmlnPTI3PUNPTkZJR19DTEtfSU1YUlQxMDUwPXlcbmFyY2gvYXJtL2NvbmZpZ3MvaW14cnRfZGVmY29uZmlnOjI4OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvaW14cnRfZGVmY29uZmlnOjI5OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL2FybS9jb25maWdzL2lteHJ0X2RlZmNvbmZpZzozMDpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL2FybS9jb25maWdzL2lteHJ0X2RlZmNvbmZpZy0zMS1DT05GSUdfVkZBVF9GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9peHA0eHhfZGVmY29uZmlnPTE1NT1DT05GSUdfRVhUMl9GU19QT1NJWF9BQ0w9eVxuYXJjaC9hcm0vY29uZmlncy9peHA0eHhfZGVmY29uZmlnOjE1NjpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL2l4cDR4eF9kZWZjb25maWc6MTU3OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL2FybS9jb25maWdzL2l4cDR4eF9kZWZjb25maWctMTU4LUNPTkZJR19PVkVSTEFZX0ZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL2tleXN0b25lX2RlZmNvbmZpZz0yMDU9Q09ORklHX1JFU0VUX1RJX1NZU0NPTj1tXG5hcmNoL2FybS9jb25maWdzL2tleXN0b25lX2RlZmNvbmZpZzoyMDY6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9rZXlzdG9uZV9kZWZjb25maWc6MjA3OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL2FybS9jb25maWdzL2tleXN0b25lX2RlZmNvbmZpZy0yMDgtQ09ORklHX0ZBTk9USUZZPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL21pbGJlYXV0X20xMHZfZGVmY29uZmlnPTgxPUNPTkZJR19NRU1PUlk9eVxuYXJjaC9hcm0vY29uZmlncy9taWxiZWF1dF9tMTB2X2RlZmNvbmZpZy04Mi0jIENPTkZJR19BUk1fUE1VIGlzIG5vdCBzZXRcbmFyY2gvYXJtL2NvbmZpZ3MvbWlsYmVhdXRfbTEwdl9kZWZjb25maWc6ODM6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9taWxiZWF1dF9tMTB2X2RlZmNvbmZpZy04NC1DT05GSUdfQVVUT0ZTX0ZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL21tcDJfZGVmY29uZmlnPTU1PUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvbW1wMl9kZWZjb25maWc6NTY6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9tbXAyX2RlZmNvbmZpZy01Ny0jIENPTkZJR19ETk9USUZZIGlzIG5vdCBzZXRcbi0tXG5hcmNoL2FybS9jb25maWdzL21veGFydF9kZWZjb25maWc9MTE0PUNPTkZJR19NT1hBUlRfRE1BPXlcbmFyY2gvYXJtL2NvbmZpZ3MvbW94YXJ0X2RlZmNvbmZpZy0xMTUtIyBDT05GSUdfSU9NTVVfU1VQUE9SVCBpcyBub3Qgc2V0XG5hcmNoL2FybS9jb25maWdzL21veGFydF9kZWZjb25maWc6MTE2OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvbW94YXJ0X2RlZmNvbmZpZy0xMTctQ09ORklHX1RNUEZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL211bHRpX3Y1X2RlZmNvbmZpZz0yNjk9Q09ORklHX0VYVDJfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9tdWx0aV92NV9kZWZjb25maWc6MjcwOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvbXVsdGlfdjVfZGVmY29uZmlnLTI3MS1DT05GSUdfSVNPOTY2MF9GUz1tXG4tLVxuYXJjaC9hcm0vY29uZmlncy9tdWx0aV92N19kZWZjb25maWc9MTI4Mz1DT05GSUdfU1RNMzJfVElNRVJfQ05UPW1cbmFyY2gvYXJtL2NvbmZpZ3MvbXVsdGlfdjdfZGVmY29uZmlnOjEyODQ6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9tdWx0aV92N19kZWZjb25maWctMTI4NS1DT05GSUdfQVVUT0ZTX0ZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL212Nzh4eDBfZGVmY29uZmlnPTkzPUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvbXY3OHh4MF9kZWZjb25maWc6OTQ6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9tdjc4eHgwX2RlZmNvbmZpZzo5NTojIENPTkZJR19FWFQ0X0ZTX1hBVFRSIGlzIG5vdCBzZXRcbmFyY2gvYXJtL2NvbmZpZ3MvbXY3OHh4MF9kZWZjb25maWctOTYtQ09ORklHX0lTTzk2NjBfRlM9bVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvbXZlYnVfdjVfZGVmY29uZmlnPTE2OT1DT05GSUdfRVhUMl9GUz15XG5hcmNoL2FybS9jb25maWdzL212ZWJ1X3Y1X2RlZmNvbmZpZzoxNzA6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9tdmVidV92NV9kZWZjb25maWctMTcxLUNPTkZJR19JU085NjYwX0ZTPW1cbi0tXG5hcmNoL2FybS9jb25maWdzL212ZWJ1X3Y3X2RlZmNvbmZpZz0xMzA9Q09ORklHX1BIWV9NVkVCVV9BMzhYX0NPTVBIWT15XG5hcmNoL2FybS9jb25maWdzL212ZWJ1X3Y3X2RlZmNvbmZpZzoxMzE6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9tdmVidV92N19kZWZjb25maWctMTMyLUNPTkZJR19JU085NjYwX0ZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL214c19kZWZjb25maWc9MTM2PUNPTkZJR19OVk1FTV9NWFNfT0NPVFA9eVxuYXJjaC9hcm0vY29uZmlncy9teHNfZGVmY29uZmlnOjEzNzpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL214c19kZWZjb25maWctMTM4LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvbmhrODgxNV9kZWZjb25maWc9MTE4PUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvbmhrODgxNV9kZWZjb25maWc6MTE5OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvbmhrODgxNV9kZWZjb25maWctMTIwLUNPTkZJR19GVVNFX0ZTPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL29tYXAxX2RlZmNvbmZpZz0xODQ9Q09ORklHX0VYVDJfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9vbWFwMV9kZWZjb25maWc6MTg1OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvb21hcDFfZGVmY29uZmlnLTE4Ni0jIENPTkZJR19ETk9USUZZIGlzIG5vdCBzZXRcbi0tXG5hcmNoL2FybS9jb25maWdzL29tYXAycGx1c19kZWZjb25maWc9NjgxPUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvb21hcDJwbHVzX2RlZmNvbmZpZzo2ODI6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9vbWFwMnBsdXNfZGVmY29uZmlnOjY4MzpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL2FybS9jb25maWdzL29tYXAycGx1c19kZWZjb25maWctNjg0LUNPTkZJR19GQU5PVElGWT15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZz0xMTc9Q09ORklHX0VYVDJfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZzoxMTg6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZzoxMTk6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XG5hcmNoL2FybS9jb25maWdzL29yaW9uNXhfZGVmY29uZmlnOjEyMDpDT05GSUdfRVhUNF9GUz1tXG5hcmNoL2FybS9jb25maWdzL29yaW9uNXhfZGVmY29uZmlnLTEyMS1DT05GSUdfSVNPOTY2MF9GUz1tXG4tLVxuYXJjaC9hcm0vY29uZmlncy9weGFfZGVmY29uZmlnPTU3NT1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XG5hcmNoL2FybS9jb25maWdzL3B4YV9kZWZjb25maWc6NTc2OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvcHhhX2RlZmNvbmZpZzo1Nzc6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvYXJtL2NvbmZpZ3MvcHhhX2RlZmNvbmZpZzo1Nzg6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9hcm0vY29uZmlncy9weGFfZGVmY29uZmlnLTU3OS1DT05GSUdfWEZTX0ZTPW1cbi0tXG5hcmNoL2FybS9jb25maWdzL3Fjb21fZGVmY29uZmlnPTI3OD1DT05GSUdfRVhUMl9GU19YQVRUUj15XG5hcmNoL2FybS9jb25maWdzL3Fjb21fZGVmY29uZmlnOjI3OTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3Fjb21fZGVmY29uZmlnLTI4MC1DT05GSUdfRlVTRV9GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9ycGNfZGVmY29uZmlnPTc5PUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvcnBjX2RlZmNvbmZpZzo4MDpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3JwY19kZWZjb25maWctODEtQ09ORklHX0FVVE9GU19GUz1tXG4tLVxuYXJjaC9hcm0vY29uZmlncy9zM2M2NDAwX2RlZmNvbmZpZz01ND1DT05GSUdfRVhUMl9GUz15XG5hcmNoL2FybS9jb25maWdzL3MzYzY0MDBfZGVmY29uZmlnOjU1OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvczNjNjQwMF9kZWZjb25maWc6NTY6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvYXJtL2NvbmZpZ3MvczNjNjQwMF9kZWZjb25maWc6NTc6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9hcm0vY29uZmlncy9zM2M2NDAwX2RlZmNvbmZpZy01OC1DT05GSUdfVE1QRlM9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvczVwdjIxMF9kZWZjb25maWc9MTAzPUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvczVwdjIxMF9kZWZjb25maWc6MTA0OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvczVwdjIxMF9kZWZjb25maWctMTA1LUNPTkZJR19BVVRPRlNfRlM9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3Mvc2FtYTVfZGVmY29uZmlnPTIyMj1DT05GSUdfUFdNX0FUTUVMX1RDQj15XG5hcmNoL2FybS9jb25maWdzL3NhbWE1X2RlZmNvbmZpZzoyMjM6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9zYW1hNV9kZWZjb25maWctMjI0LUNPTkZJR19GQU5PVElGWT15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9zYW1hN19kZWZjb25maWc9MjE0PUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc2FtYTdfZGVmY29uZmlnOjIxNTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3NhbWE3X2RlZmNvbmZpZy0yMTYtQ09ORklHX0ZBTk9USUZZPXlcbi0tXG5hcmNoL2FybS9jb25maWdzL3NvY2ZwZ2FfZGVmY29uZmlnPTEzNz1DT05GSUdfRVhUMl9GU19QT1NJWF9BQ0w9eVxuYXJjaC9hcm0vY29uZmlncy9zb2NmcGdhX2RlZmNvbmZpZzoxMzg6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9zb2NmcGdhX2RlZmNvbmZpZy0xMzktQ09ORklHX0FVVE9GU19GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9zcDcwMjFfZGVmY29uZmlnPTQwPUNPTkZJR19SRVNFVF9DT05UUk9MTEVSPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3A3MDIxX2RlZmNvbmZpZzo0MTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3NwNzAyMV9kZWZjb25maWctNDItIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XG4tLVxuYXJjaC9hcm0vY29uZmlncy9zcGVhcjEzeHhfZGVmY29uZmlnPTg1PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXIxM3h4X2RlZmNvbmZpZzo4NjpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3NwZWFyMTN4eF9kZWZjb25maWc6ODc6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9hcm0vY29uZmlncy9zcGVhcjEzeHhfZGVmY29uZmlnLTg4LUNPTkZJR19BVVRPRlNfRlM9bVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXIzeHhfZGVmY29uZmlnPTY4PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXIzeHhfZGVmY29uZmlnOjY5OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXIzeHhfZGVmY29uZmlnOjcwOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXIzeHhfZGVmY29uZmlnLTcxLUNPTkZJR19BVVRPRlNfRlM9bVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXI2eHhfZGVmY29uZmlnPTU0PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXI2eHhfZGVmY29uZmlnOjU1OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXI2eHhfZGVmY29uZmlnOjU2OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXI2eHhfZGVmY29uZmlnLTU3LUNPTkZJR19BVVRPRlNfRlM9bVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3Mvc3BpdHpfZGVmY29uZmlnPTE5Mj1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XG5hcmNoL2FybS9jb25maWdzL3NwaXR6X2RlZmNvbmZpZzoxOTM6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9zcGl0el9kZWZjb25maWc6MTk0OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxuYXJjaC9hcm0vY29uZmlncy9zcGl0el9kZWZjb25maWctMTk1LUNPTkZJR19NU0RPU19GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9zdG0zMl9kZWZjb25maWc9NzE9Q09ORklHX1NUTTMyX0FEQz15XG5hcmNoL2FybS9jb25maWdzL3N0bTMyX2RlZmNvbmZpZzo3MjpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3N0bTMyX2RlZmNvbmZpZy03My0jIENPTkZJR19GSUxFX0xPQ0tJTkcgaXMgbm90IHNldFxuLS1cbmFyY2gvYXJtL2NvbmZpZ3Mvc3VueGlfZGVmY29uZmlnPTE2Mj1DT05GSUdfTlZNRU1fU1VOWElfU0lEPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3VueGlfZGVmY29uZmlnOjE2MzpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3N1bnhpX2RlZmNvbmZpZy0xNjQtQ09ORklHX1ZGQVRfRlM9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvdGVncmFfZGVmY29uZmlnPTMxMj1DT05GSUdfUEhZX1RFR1JBX1hVU0I9eVxuYXJjaC9hcm0vY29uZmlncy90ZWdyYV9kZWZjb25maWc6MzEzOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvdGVncmFfZGVmY29uZmlnOjMxNDpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxuYXJjaC9hcm0vY29uZmlncy90ZWdyYV9kZWZjb25maWc6MzE1OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvYXJtL2NvbmZpZ3MvdGVncmFfZGVmY29uZmlnLTMxNi0jIENPTkZJR19ETk9USUZZIGlzIG5vdCBzZXRcbi0tXG5hcmNoL2FybS9jb25maWdzL3U4NTAwX2RlZmNvbmZpZz0xNzU9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxuYXJjaC9hcm0vY29uZmlncy91ODUwMF9kZWZjb25maWc6MTc2OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvdTg1MDBfZGVmY29uZmlnLTE3Ny1DT05GSUdfVkZBVF9GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy92ZXhwcmVzc19kZWZjb25maWc9MTIyPUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvdmV4cHJlc3NfZGVmY29uZmlnOjEyMzpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3ZleHByZXNzX2RlZmNvbmZpZy0xMjQtQ09ORklHX1ZGQVRfRlM9eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvdmY2MTBtNF9kZWZjb25maWc9MzU9Q09ORklHX01GRF9TWVNDT049eVxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvdmY2MTBtNF9kZWZjb25maWctMzctIyBDT05GSUdfVVNCX1NVUFBPUlQgaXMgbm90IHNldFxuYXJjaC9hcm0vY29uZmlncy92ZjYxMG00X2RlZmNvbmZpZzozODpDT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL3ZmNjEwbTRfZGVmY29uZmlnLTM5LSMgQ09ORklHX01JU0NfRklMRVNZU1RFTVMgaXMgbm90IHNldFxuLS1cbmFyY2gvYXJtL2NvbmZpZ3MvdnQ4NTAwX3Y2X3Y3X2RlZmNvbmZpZz03OT1DT05GSUdfR0VORVJJQ19QSFk9eVxuYXJjaC9hcm0vY29uZmlncy92dDg1MDBfdjZfdjdfZGVmY29uZmlnOjgwOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvdnQ4NTAwX3Y2X3Y3X2RlZmNvbmZpZy04MS1DT05GSUdfVE1QRlM9eVxuLS1cbmFyY2gvYXJtNjQvY29uZmlncy9kZWZjb25maWc9MTg5OD1DT05GSUdfSFRFX1RFR1JBMTk0X1RFU1Q9bVxuYXJjaC9hcm02NC9jb25maWdzL2RlZmNvbmZpZzoxODk5OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtNjQvY29uZmlncy9kZWZjb25maWc6MTkwMDpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxuYXJjaC9hcm02NC9jb25maWdzL2RlZmNvbmZpZzoxOTAxOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvYXJtNjQvY29uZmlncy9kZWZjb25maWctMTkwMi1DT05GSUdfQlRSRlNfRlM9bVxuLS1cbmFyY2gvY3NreS9jb25maWdzL2RlZmNvbmZpZz0zMz1DT05GSUdfR0VORVJJQ19QSFk9eVxuYXJjaC9jc2t5L2NvbmZpZ3MvZGVmY29uZmlnOjM0OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvY3NreS9jb25maWdzL2RlZmNvbmZpZy0zNS1DT05GSUdfRkFOT1RJRlk9eVxuLS1cbmFyY2gvaGV4YWdvbi9jb25maWdzL2NvbWV0X2RlZmNvbmZpZz00OD1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XG5hcmNoL2hleGFnb24vY29uZmlncy9jb21ldF9kZWZjb25maWc6NDk6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9oZXhhZ29uL2NvbmZpZ3MvY29tZXRfZGVmY29uZmlnOjUwOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL2hleGFnb24vY29uZmlncy9jb21ldF9kZWZjb25maWc6NTE6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9oZXhhZ29uL2NvbmZpZ3MvY29tZXRfZGVmY29uZmlnLTUyLUNPTkZJR19RVU9UQT15XG4tLVxuYXJjaC9sb29uZ2FyY2gvY29uZmlncy9sb29uZ3NvbjMyX2RlZmNvbmZpZz05NTA9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxuYXJjaC9sb29uZ2FyY2gvY29uZmlncy9sb29uZ3NvbjMyX2RlZmNvbmZpZzo5NTE6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9sb29uZ2FyY2gvY29uZmlncy9sb29uZ3NvbjMyX2RlZmNvbmZpZzo5NTI6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb24zMl9kZWZjb25maWc6OTUzOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb24zMl9kZWZjb25maWctOTU0LUNPTkZJR19KRlNfRlM9bVxuLS1cbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb242NF9kZWZjb25maWc9OTgxPUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb242NF9kZWZjb25maWc6OTgyOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb242NF9kZWZjb25maWc6OTgzOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL2xvb25nYXJjaC9jb25maWdzL2xvb25nc29uNjRfZGVmY29uZmlnOjk4NDpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL2xvb25nYXJjaC9jb25maWdzL2xvb25nc29uNjRfZGVmY29uZmlnLTk4NS1DT05GSUdfSkZTX0ZTPW1cbi0tXG5hcmNoL202OGsvY29uZmlncy9hbWlnYV9kZWZjb25maWc9NDAzPUNPTkZJR19EQVg9bVxuYXJjaC9tNjhrL2NvbmZpZ3MvYW1pZ2FfZGVmY29uZmlnOjQwNDpDT05GSUdfRVhUNF9GUz15XG5hcmNoL202OGsvY29uZmlncy9hbWlnYV9kZWZjb25maWctNDA1LUNPTkZJR19KRlNfRlM9bVxuLS1cbmFyY2gvbTY4ay9jb25maWdzL2Fwb2xsb19kZWZjb25maWc9MzU4PUNPTkZJR19EQVg9bVxuYXJjaC9tNjhrL2NvbmZpZ3MvYXBvbGxvX2RlZmNvbmZpZzozNTk6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9tNjhrL2NvbmZpZ3MvYXBvbGxvX2RlZmNvbmZpZy0zNjAtQ09ORklHX0pGU19GUz1tXG4tLVxuYXJjaC9tNjhrL2NvbmZpZ3MvYXRhcmlfZGVmY29uZmlnPTM4MT1DT05GSUdfREFYPW1cbmFyY2gvbTY4ay9jb25maWdzL2F0YXJpX2RlZmNvbmZpZzozODI6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9tNjhrL2NvbmZpZ3MvYXRhcmlfZGVmY29uZmlnLTM4My1DT05GSUdfSkZTX0ZTPW1cbi0tXG5hcmNoL202OGsvY29uZmlncy9idm1lNjAwMF9kZWZjb25maWc9MzUwPUNPTkZJR19EQVg9bVxuYXJjaC9tNjhrL2NvbmZpZ3MvYnZtZTYwMDBfZGVmY29uZmlnOjM1MTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL202OGsvY29uZmlncy9idm1lNjAwMF9kZWZjb25maWctMzUyLUNPTkZJR19KRlNfRlM9bVxuLS1cbmFyY2gvbTY4ay9jb25maWdzL2hwMzAwX2RlZmNvbmZpZz0zNjA9Q09ORklHX0RBWD1tXG5hcmNoL202OGsvY29uZmlncy9ocDMwMF9kZWZjb25maWc6MzYxOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbTY4ay9jb25maWdzL2hwMzAwX2RlZmNvbmZpZy0zNjItQ09ORklHX0pGU19GUz1tXG4tLVxuYXJjaC9tNjhrL2NvbmZpZ3MvbWFjX2RlZmNvbmZpZz0zNzk9Q09ORklHX0RBWD1tXG5hcmNoL202OGsvY29uZmlncy9tYWNfZGVmY29uZmlnOjM4MDpDT05GSUdfRVhUNF9GUz15XG5hcmNoL202OGsvY29uZmlncy9tYWNfZGVmY29uZmlnLTM4MS1DT05GSUdfSkZTX0ZTPW1cbi0tXG5hcmNoL202OGsvY29uZmlncy9tdWx0aV9kZWZjb25maWc9NDY2PUNPTkZJR19EQVg9bVxuYXJjaC9tNjhrL2NvbmZpZ3MvbXVsdGlfZGVmY29uZmlnOjQ2NzpDT05GSUdfRVhUNF9GUz15XG5hcmNoL202OGsvY29uZmlncy9tdWx0aV9kZWZjb25maWctNDY4LUNPTkZJR19KRlNfRlM9bVxuLS1cbmFyY2gvbTY4ay9jb25maWdzL212bWUxNDdfZGVmY29uZmlnPTM1MD1DT05GSUdfREFYPW1cbmFyY2gvbTY4ay9jb25maWdzL212bWUxNDdfZGVmY29uZmlnOjM1MTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL202OGsvY29uZmlncy9tdm1lMTQ3X2RlZmNvbmZpZy0zNTItQ09ORklHX0pGU19GUz1tXG4tLVxuYXJjaC9tNjhrL2NvbmZpZ3MvbXZtZTE2eF9kZWZjb25maWc9MzUxPUNPTkZJR19EQVg9bVxuYXJjaC9tNjhrL2NvbmZpZ3MvbXZtZTE2eF9kZWZjb25maWc6MzUyOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbTY4ay9jb25maWdzL212bWUxNnhfZGVmY29uZmlnLTM1My1DT05GSUdfSkZTX0ZTPW1cbi0tXG5hcmNoL202OGsvY29uZmlncy9xNDBfZGVmY29uZmlnPTM2OT1DT05GSUdfREFYPW1cbmFyY2gvbTY4ay9jb25maWdzL3E0MF9kZWZjb25maWc6MzcwOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbTY4ay9jb25maWdzL3E0MF9kZWZjb25maWctMzcxLUNPTkZJR19KRlNfRlM9bVxuLS1cbmFyY2gvbTY4ay9jb25maWdzL3N0bWFyazJfZGVmY29uZmlnPTgyPUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbTY4ay9jb25maWdzL3N0bWFyazJfZGVmY29uZmlnOjgzOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbTY4ay9jb25maWdzL3N0bWFyazJfZGVmY29uZmlnOjg0OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL202OGsvY29uZmlncy9zdG1hcmsyX2RlZmNvbmZpZzo4NTpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL202OGsvY29uZmlncy9zdG1hcmsyX2RlZmNvbmZpZy04Ni0jIENPTkZJR19GSUxFX0xPQ0tJTkcgaXMgbm90IHNldFxuLS1cbmFyY2gvbTY4ay9jb25maWdzL3N1bjNfZGVmY29uZmlnPTM0OD1DT05GSUdfREFYPW1cbmFyY2gvbTY4ay9jb25maWdzL3N1bjNfZGVmY29uZmlnOjM0OTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL202OGsvY29uZmlncy9zdW4zX2RlZmNvbmZpZy0zNTAtQ09ORklHX0pGU19GUz1tXG4tLVxuYXJjaC9tNjhrL2NvbmZpZ3Mvc3VuM3hfZGVmY29uZmlnPTM0OD1DT05GSUdfREFYPW1cbmFyY2gvbTY4ay9jb25maWdzL3N1bjN4X2RlZmNvbmZpZzozNDk6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9tNjhrL2NvbmZpZ3Mvc3VuM3hfZGVmY29uZmlnLTM1MC1DT05GSUdfSkZTX0ZTPW1cbi0tXG5hcmNoL202OGsvY29uZmlncy92aXJ0X2RlZmNvbmZpZz01NT1DT05GSUdfVklSVElPX0lOUFVUPXlcbmFyY2gvbTY4ay9jb25maWdzL3ZpcnRfZGVmY29uZmlnOjU2OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbTY4ay9jb25maWdzL3ZpcnRfZGVmY29uZmlnLTU3LUNPTkZJR19BVVRPRlNfRlM9eVxuLS1cbmFyY2gvbWljcm9ibGF6ZS9jb25maWdzL21tdV9kZWZjb25maWc9NzU9Q09ORklHX1VJT19ETUVNX0dFTklSUT15XG5hcmNoL21pY3JvYmxhemUvY29uZmlncy9tbXVfZGVmY29uZmlnOjc2OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWljcm9ibGF6ZS9jb25maWdzL21tdV9kZWZjb25maWctNzctIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvYmlnc3VyX2RlZmNvbmZpZz0xMzY9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvYmlnc3VyX2RlZmNvbmZpZzoxMzc6Q09ORklHX0VYVDRfRlM9bVxuYXJjaC9taXBzL2NvbmZpZ3MvYmlnc3VyX2RlZmNvbmZpZzoxMzg6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2JpZ3N1cl9kZWZjb25maWc6MTM5OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2JpZ3N1cl9kZWZjb25maWc6MTQwOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2JpZ3N1cl9kZWZjb25maWctMTQxLUNPTkZJR19RVU9UQT15XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfYmVfZGVmY29uZmlnPTU3PUNPTkZJR19VU0JfU1RPUkFHRT15XG5hcmNoL21pcHMvY29uZmlncy9ibWlwc19iZV9kZWZjb25maWc6NTg6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfYmVfZGVmY29uZmlnOjU5OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9ibWlwc19iZV9kZWZjb25maWc6NjA6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfYmVfZGVmY29uZmlnLTYxLSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2JtaXBzX3N0Yl9kZWZjb25maWc9MTQxPUNPTkZJR19NTUNfU0RIQ0lfUExURk09eVxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfc3RiX2RlZmNvbmZpZzoxNDI6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfc3RiX2RlZmNvbmZpZzoxNDM6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2JtaXBzX3N0Yl9kZWZjb25maWc6MTQ0OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2JtaXBzX3N0Yl9kZWZjb25maWctMTQ1LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2Nhdml1bV9vY3Rlb25fZGVmY29uZmlnPTEzNj1DT05GSUdfUkFTPXlcbmFyY2gvbWlwcy9jb25maWdzL2Nhdml1bV9vY3Rlb25fZGVmY29uZmlnOjEzNzpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9jYXZpdW1fb2N0ZW9uX2RlZmNvbmZpZzoxMzg6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2Nhdml1bV9vY3Rlb25fZGVmY29uZmlnOjEzOTpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9jYXZpdW1fb2N0ZW9uX2RlZmNvbmZpZy0xNDAtQ09ORklHX01TRE9TX0ZTPXlcbi0tXG5hcmNoL21pcHMvY29uZmlncy9jaTIwX2RlZmNvbmZpZz0xNjY9Q09ORklHX05WTUVNX0paNDc4MF9FRlVTRT15XG5hcmNoL21pcHMvY29uZmlncy9jaTIwX2RlZmNvbmZpZzoxNjc6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvY2kyMF9kZWZjb25maWctMTY4LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2NvYmFsdF9kZWZjb25maWc9NjE9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvY29iYWx0X2RlZmNvbmZpZzo2MjpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9jb2JhbHRfZGVmY29uZmlnOjYzOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9jb2JhbHRfZGVmY29uZmlnOjY0OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2NvYmFsdF9kZWZjb25maWctNjUtQ09ORklHX1BST0NfS0NPUkU9eVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2N1MTAwMC1uZW9fZGVmY29uZmlnPTg5PUNPTkZJR19KWjQ3NzBfUEhZPXlcbmFyY2gvbWlwcy9jb25maWdzL2N1MTAwMC1uZW9fZGVmY29uZmlnOjkwOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2N1MTAwMC1uZW9fZGVmY29uZmlnLTkxLSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2N1MTgzMC1uZW9fZGVmY29uZmlnPTkyPUNPTkZJR19KWjQ3NzBfUEhZPXlcbmFyY2gvbWlwcy9jb25maWdzL2N1MTgzMC1uZW9fZGVmY29uZmlnOjkzOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2N1MTgzMC1uZW9fZGVmY29uZmlnLTk0LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2RiMXh4eF9kZWZjb25maWc9MTY5PUNPTkZJR19SVENfRFJWX0FVMVhYWD15XG5hcmNoL21pcHMvY29uZmlncy9kYjF4eHhfZGVmY29uZmlnOjE3MDpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9kYjF4eHhfZGVmY29uZmlnOjE3MTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZGIxeHh4X2RlZmNvbmZpZzoxNzI6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZGIxeHh4X2RlZmNvbmZpZy0xNzMtQ09ORklHX1hGU19GUz15XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl82NF9kZWZjb25maWc9MTM1PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fNjRfZGVmY29uZmlnOjEzNjpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uXzY0X2RlZmNvbmZpZzoxMzc6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fNjRfZGVmY29uZmlnOjEzODpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uXzY0X2RlZmNvbmZpZy0xMzktQ09ORklHX0lTTzk2NjBfRlM9eVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fZGVmY29uZmlnPTEzMT1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uX2RlZmNvbmZpZzoxMzI6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9kZWZjb25maWc6MTMzOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uX2RlZmNvbmZpZzoxMzQ6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9kZWZjb25maWctMTM1LUNPTkZJR19JU085NjYwX0ZTPXlcbi0tXG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uX3I0a19kZWZjb25maWc9MTMxPUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fcjRrX2RlZmNvbmZpZzoxMzI6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9yNGtfZGVmY29uZmlnOjEzMzpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9yNGtfZGVmY29uZmlnOjEzNDpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uX3I0a19kZWZjb25maWctMTM1LUNPTkZJR19JU085NjYwX0ZTPXlcbi0tXG5hcmNoL21pcHMvY29uZmlncy9leWVxNV9kZWZjb25maWc9ODk9Q09ORklHX1JFU0VUX0NPTlRST0xMRVI9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTVfZGVmY29uZmlnLTkwLSMgQ09ORklHX05WTUVNIGlzIG5vdCBzZXRcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE1X2RlZmNvbmZpZzo5MTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9leWVxNV9kZWZjb25maWc6OTI6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE1X2RlZmNvbmZpZzo5MzpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9leWVxNV9kZWZjb25maWctOTQtQ09ORklHX0ZTX0VOQ1JZUFRJT049eVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE2X2RlZmNvbmZpZz04OD1DT05GSUdfUkVTRVRfQ09OVFJPTExFUj15XG5hcmNoL21pcHMvY29uZmlncy9leWVxNl9kZWZjb25maWctODktIyBDT05GSUdfTlZNRU0gaXMgbm90IHNldFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZfZGVmY29uZmlnOjkwOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE2X2RlZmNvbmZpZzo5MTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZfZGVmY29uZmlnOjkyOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE2X2RlZmNvbmZpZy05My1DT05GSUdfRlNfRU5DUllQVElPTj15XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZscGx1c19kZWZjb25maWc9OTY9Q09ORklHX1JFU0VUX0NPTlRST0xMRVI9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZscGx1c19kZWZjb25maWctOTctIyBDT05GSUdfTlZNRU0gaXMgbm90IHNldFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZscGx1c19kZWZjb25maWc6OTg6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZscGx1c19kZWZjb25maWc6OTk6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE2bHBsdXNfZGVmY29uZmlnOjEwMDpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9leWVxNmxwbHVzX2RlZmNvbmZpZy0xMDEtQ09ORklHX0ZTX0VOQ1JZUFRJT049eVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2Z1bG9vbmcyZV9kZWZjb25maWc9MTc0PUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2Z1bG9vbmcyZV9kZWZjb25maWc6MTc1OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2Z1bG9vbmcyZV9kZWZjb25maWc6MTc2OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9mdWxvb25nMmVfZGVmY29uZmlnOjE3NzpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9mdWxvb25nMmVfZGVmY29uZmlnLTE3OC1DT05GSUdfQVVUT0ZTX0ZTPXlcbi0tXG5hcmNoL21pcHMvY29uZmlncy9nY3cwX2RlZmNvbmZpZz0xMzQ9Q09ORklHX1BXTV9KWjQ3NDA9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZ2N3MF9kZWZjb25maWc6MTM1OkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2djdzBfZGVmY29uZmlnLTEzNi1DT05GSUdfVkZBVF9GUz15XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvZ2VuZXJpY19kZWZjb25maWc9NTU9Q09ORklHX0hJRF9NT05URVJFWT15XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvZ2VuZXJpY19kZWZjb25maWctNTctIyBDT05GSUdfSU9NTVVfU1VQUE9SVCBpcyBub3Qgc2V0XG5hcmNoL21pcHMvY29uZmlncy9nZW5lcmljX2RlZmNvbmZpZzo1ODpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9nZW5lcmljX2RlZmNvbmZpZzo1OTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZ2VuZXJpY19kZWZjb25maWc6NjA6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvZ2VuZXJpY19kZWZjb25maWctNjEtQ09ORklHX0ZTX0VOQ1JZUFRJT049eVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2lwMjJfZGVmY29uZmlnPTIzMz1DT05GSUdfRVhUMl9GUz1tXG5hcmNoL21pcHMvY29uZmlncy9pcDIyX2RlZmNvbmZpZzoyMzQ6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyMl9kZWZjb25maWc6MjM1OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9pcDIyX2RlZmNvbmZpZzoyMzY6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyMl9kZWZjb25maWctMjM3LUNPTkZJR19YRlNfRlM9bVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2lwMjdfZGVmY29uZmlnPTI3Mj1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9pcDI3X2RlZmNvbmZpZzoyNzM6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyN19kZWZjb25maWc6Mjc0OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9pcDI3X2RlZmNvbmZpZzoyNzU6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyN19kZWZjb25maWctMjc2LUNPTkZJR19YRlNfRlM9bVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2lwMjhfZGVmY29uZmlnPTUxPUNPTkZJR19FWFQyX0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2lwMjhfZGVmY29uZmlnOjUyOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2lwMjhfZGVmY29uZmlnOjUzOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9pcDI4X2RlZmNvbmZpZzo1NDpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9pcDI4X2RlZmNvbmZpZy01NS1DT05GSUdfUVVPVEE9eVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2lwMzBfZGVmY29uZmlnPTE0ND1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9pcDMwX2RlZmNvbmZpZzoxNDU6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvaXAzMF9kZWZjb25maWc6MTQ2OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9pcDMwX2RlZmNvbmZpZzoxNDc6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvaXAzMF9kZWZjb25maWctMTQ4LUNPTkZJR19YRlNfRlM9bVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2lwMzJfZGVmY29uZmlnPTkwPUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2lwMzJfZGVmY29uZmlnOjkxOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2lwMzJfZGVmY29uZmlnOjkyOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9pcDMyX2RlZmNvbmZpZzo5MzpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9pcDMyX2RlZmNvbmZpZy05NC1DT05GSUdfUVVPVEE9eVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2phenpfZGVmY29uZmlnPTcwPUNPTkZJR19FWFQyX0ZTPW1cbmFyY2gvbWlwcy9jb25maWdzL2phenpfZGVmY29uZmlnOjcxOkNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvbWlwcy9jb25maWdzL2phenpfZGVmY29uZmlnLTcyLUNPTkZJR19YRlNfRlM9bVxuLS1cbmFyY2gvbWlwcy9jb25maWdzL2xlbW90ZTJmX2RlZmNvbmZpZz0yMjc9Q09ORklHX0VYVDJfRlM9bVxuYXJjaC9taXBzL2NvbmZpZ3MvbGVtb3RlMmZfZGVmY29uZmlnOjIyODpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9sZW1vdGUyZl9kZWZjb25maWc6MjI5OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XG5hcmNoL21pcHMvY29uZmlncy9sZW1vdGUyZl9kZWZjb25maWc6MjMwOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2xlbW90ZTJmX2RlZmNvbmZpZy0yMzEtQ09ORklHX0pGU19GUz1tXG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24xX2RlZmNvbmZpZz0xNDg9Q09ORklHX0xPT05HU09OMV9BUEJfRE1BPXlcbi0tXG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjFfZGVmY29uZmlnLTE1My0jIENPTkZJR19OVk1FTSBpcyBub3Qgc2V0XG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjFfZGVmY29uZmlnOjE1NDpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjFfZGVmY29uZmlnOjE1NTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24xX2RlZmNvbmZpZy0xNTYtIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24ya19kZWZjb25maWc9Mjk4PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uMmtfZGVmY29uZmlnOjI5OTpDT05GSUdfRVhUNF9GUz15XG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjJrX2RlZmNvbmZpZzozMDA6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uMmtfZGVmY29uZmlnOjMwMTpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjJrX2RlZmNvbmZpZy0zMDItQ09ORklHX1hGU19GUz15XG4tLVxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24zX2RlZmNvbmZpZz0zNDk9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24zX2RlZmNvbmZpZzozNTA6Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24zX2RlZmNvbmZpZzozNTE6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uM19kZWZjb25maWc6MzUyOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uM19kZWZjb25maWctMzUzLUNPTkZJR19YRlNfRlM9eVxuXG4mIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+Ny8yPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjkgMDU6NTQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMTQ3MjcKCQkJCQkJCW91dHB1dDogMjMKCQkJCQkJCXRob3VnaHRzOiA0NAoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipFeGFtaW5pbmcgdGhlIEVYVDQgQ29uZmlndXJhdGlvbioqCgpPa2F5LCBzbyB0aGUgYmFzZSBjb25maWd1cmF0aW9uIEkmIzM5O20gd29ya2luZyB3aXRoIGlzIGBDT05GSUdfRVhUNF9GU2AuIE5vdywgSSBuZWVkIHRvIGZpZ3VyZSBvdXQgaWYgdGhlcmUmIzM5O3MgYSBkZWRpY2F0ZWQgY29uZmlndXJhdGlvbiBvcHRpb24gc3BlY2lmaWNhbGx5IGZvciBFeHRlbmRlZCBBdHRyaWJ1dGUgKEVBKSBpbm9kZXMgd2l0aGluIHRoZSBFWFQ0IGZpbGVzeXN0ZW0uIE15IGltbWVkaWF0ZSB0aG91Z2h0IGlzIHRvIGRlbHZlIGludG8gdGhlIHJlbGV2YW50IEtjb25maWcgYW5kIE1ha2VmaWxlIGZpbGVzLiBUaGUgbG9naWNhbCBwbGFjZXMgdG8gc3RhcnQgbG9va2luZyB3b3VsZCBiZSBgZnMvZXh0NC9LY29uZmlnYCBhbmQgYGZzL2V4dDQvTWFrZWZpbGVgLiBUaGF0JiMzOTtzIHdoZXJlIEkmIzM5O2QgZXhwZWN0IHRvIGZpbmQgdGhlIGRlcGVuZGVuY2llcyBhbmQgYnVpbGQgaW5zdHJ1Y3Rpb25zIGZvciBFWFQ0LCBhbmQgdGhlcmVmb3JlLCBjb25maWd1cmF0aW9uIG9wdGlvbnMgbGlrZSB0aGUgb25lIEkmIzM5O20gc2Vla2luZy4gVGltZSB0byBvcGVuIHRob3NlIHVwIGFuZCBzZWUgd2hhdCB0aGV5IHJldmVhbC4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD44LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yOSAwNTo1NDwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtFWFQ0X0VBX0lOT0RFX0ZMJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O091dHB1dCYjMzQ7OiAmIzM0O0RvY3VtZW50YXRpb24vZmlsZXN5c3RlbXMvZXh0NC9pbm9kZXMucnN0PTIyOD1UaGUgYGBpX2ZsYWdzYGAgZmllbGQgaXMgYSBjb21iaW5hdGlvbiBvZiB0aGVzZSB2YWx1ZXM6XG4tLVxuRG9jdW1lbnRhdGlvbi9maWxlc3lzdGVtcy9leHQ0L2lub2Rlcy5yc3QtMjgzLSAgICAgLSBJbm9kZSBzdG9yZXMgYSBsYXJnZSBleHRlbmRlZCBhdHRyaWJ1dGUgdmFsdWUgaW4gaXRzIGRhdGEgYmxvY2tzXG5Eb2N1bWVudGF0aW9uL2ZpbGVzeXN0ZW1zL2V4dDQvaW5vZGVzLnJzdDoyODQ6ICAgICAgIChFWFQ0X0VBX0lOT0RFX0ZMKS5cbkRvY3VtZW50YXRpb24vZmlsZXN5c3RlbXMvZXh0NC9pbm9kZXMucnN0LTI4NS0gICAqIC0gMHg0MDAwMDBcbi0tXG5mcy9leHQ0L2V4dDQuaD00NDA9c3RydWN0IGZsZXhfZ3JvdXBzIHtcbi0tXG5mcy9leHQ0L2V4dDQuaC01MDQtI2RlZmluZSBFWFQ0X1ZFUklUWV9GTFx0XHRcdDB4MDAxMDAwMDAgLyogVmVyaXR5IHByb3RlY3RlZCBpbm9kZSAqL1xuZnMvZXh0NC9leHQ0Lmg6NTA1OiNkZWZpbmUgRVhUNF9FQV9JTk9ERV9GTFx0ICAgICAgICAweDAwMjAwMDAwIC8qIElub2RlIHVzZWQgZm9yIGxhcmdlIEVBICovXG5mcy9leHQ0L2V4dDQuaC01MDYtLyogMHgwMDQwMDAwMCB3YXMgZm9ybWVybHkgRVhUNF9FT0ZCTE9DS1NfRkwgKi9cbi0tXG5mcy9leHQ0L2V4dDQuaD0yNjkxPXN0YXRpYyBpbmxpbmUgYm9vbCBleHQ0X2lzX3F1b3RhX2ZpbGUoc3RydWN0IGlub2RlICppbm9kZSlcbi0tXG5mcy9leHQ0L2V4dDQuaC0yNjkzLVx0cmV0dXJuIElTX05PUVVPVEEoaW5vZGUpIFx1MDAyNlx1MDAyNlxuZnMvZXh0NC9leHQ0Lmg6MjY5NDpcdCAgICAgICAhKEVYVDRfSShpbm9kZSktXHUwMDNlaV9mbGFncyBcdTAwMjYgRVhUNF9FQV9JTk9ERV9GTCk7XG5mcy9leHQ0L2V4dDQuaC0yNjk1LX1cbi0tXG5mcy9leHQ0L2lhbGxvYy5jPTkzMz1zdHJ1Y3QgaW5vZGUgKl9fZXh0NF9uZXdfaW5vZGUoc3RydWN0IG1udF9pZG1hcCAqaWRtYXAsXG4tLVxuZnMvZXh0NC9pYWxsb2MuYy05OTUtXG5mcy9leHQ0L2lhbGxvYy5jOjk5NjpcdGlmICghKGlfZmxhZ3MgXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpKSB7XG5mcy9leHQ0L2lhbGxvYy5jLTk5Ny1cdFx0ZXJyID0gZnNjcnlwdF9wcmVwYXJlX25ld19pbm9kZShkaXIsIGlub2RlLCBcdTAwMjZlbmNyeXB0KTtcbi0tXG5mcy9leHQ0L2lhbGxvYy5jLTEwMDUtXG5mcy9leHQ0L2lhbGxvYy5jOjEwMDY6XHRpZiAoIWhhbmRsZSBcdTAwMjZcdTAwMjYgc2JpLVx1MDAzZXNfam91cm5hbCBcdTAwMjZcdTAwMjYgIShpX2ZsYWdzIFx1MDAyNiBFWFQ0X0VBX0lOT0RFX0ZMKSkge1xuZnMvZXh0NC9pYWxsb2MuYy0xMDA3LVx0XHRyZXQyID0gZXh0NF94YXR0cl9jcmVkaXRzX2Zvcl9uZXdfaW5vZGUoZGlyLCBtb2RlLCBlbmNyeXB0KTtcbi0tXG5mcy9leHQ0L2lhbGxvYy5jLTEzMDgtXHRpZiAoZXh0NF9oYXNfZmVhdHVyZV9pbmxpbmVfZGF0YShzYikgXHUwMDI2XHUwMDI2XG5mcy9leHQ0L2lhbGxvYy5jOjEzMDk6XHQgICAgKCEoZWktXHUwMDNlaV9mbGFncyBcdTAwMjYgKEVYVDRfREFYX0ZMfEVYVDRfRUFfSU5PREVfRkwpKSB8fCBTX0lTRElSKG1vZGUpKSlcbmZzL2V4dDQvaWFsbG9jLmMtMTMxMC1cdFx0ZXh0NF9zZXRfaW5vZGVfc3RhdGUoaW5vZGUsIEVYVDRfU1RBVEVfTUFZX0lOTElORV9EQVRBKTtcbi0tXG5mcy9leHQ0L2lhbGxvYy5jLTEzMjYtXG5mcy9leHQ0L2lhbGxvYy5jOjEzMjc6XHRpZiAoIShlaS1cdTAwM2VpX2ZsYWdzIFx1MDAyNiBFWFQ0X0VBX0lOT0RFX0ZMKSkge1xuZnMvZXh0NC9pYWxsb2MuYy0xMzI4LVx0XHRlcnIgPSBleHQ0X2luaXRfYWNsKGhhbmRsZSwgaW5vZGUsIGRpcik7XG4tLVxuZnMvZXh0NC9pbm9kZS5jPTE2OT12b2lkIGV4dDRfZXZpY3RfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSlcbi0tXG5mcy9leHQ0L2lub2RlLmMtMTg1LVxuZnMvZXh0NC9pbm9kZS5jOjE4NjpcdGlmIChFWFQ0X0koaW5vZGUpLVx1MDAzZWlfZmxhZ3MgXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpXG5mcy9leHQ0L2lub2RlLmMtMTg3LVx0XHRleHQ0X2V2aWN0X2VhX2lub2RlKGlub2RlKTtcbi0tXG5mcy9leHQ0L2lub2RlLmM9NDcwMT1zdGF0aWMgaW5saW5lIHU2NCBleHQ0X2lub2RlX3BlZWtfaXZlcnNpb24oY29uc3Qgc3RydWN0IGlub2RlICppbm9kZSlcbmZzL2V4dDQvaW5vZGUuYy00NzAyLXtcbmZzL2V4dDQvaW5vZGUuYzo0NzAzOlx0aWYgKHVubGlrZWx5KEVYVDRfSShpbm9kZSktXHUwMDNlaV9mbGFncyBcdTAwMjYgRVhUNF9FQV9JTk9ERV9GTCkpXG5mcy9leHQ0L2lub2RlLmMtNDcwNC1cdFx0cmV0dXJuIGlub2RlX3BlZWtfaXZlcnNpb25fcmF3KGlub2RlKTtcbi0tXG5mcy9leHQ0L2lub2RlLmM9NTE5ND1pbnQgZXh0NF9nZXRfcHJvamlkKHN0cnVjdCBpbm9kZSAqaW5vZGUsIGtwcm9qaWRfdCAqcHJvamlkKVxuLS1cbmZzL2V4dDQvaW5vZGUuYy01MjAzLSAqIGV4dDQgaGFzIHNlbGYtbWFuYWdlZCBpX3ZlcnNpb24gZm9yIGVhIGlub2RlcywgaXQgc3RvcmVzIHRoZSBsb3dlciAzMmJpdCBvZlxuZnMvZXh0NC9pbm9kZS5jOjUyMDQ6ICogcmVmY291bnQgaW4gaV92ZXJzaW9uLCBzbyB1c2UgcmF3IHZhbHVlcyBpZiBpbm9kZSBoYXMgRVhUNF9FQV9JTk9ERV9GTCBmbGFnXG5mcy9leHQ0L2lub2RlLmMtNTIwNS0gKiBzZXQuXG4tLVxuZnMvZXh0NC9pbm9kZS5jPTUyMDc9c3RhdGljIGlubGluZSB2b2lkIGV4dDRfaW5vZGVfc2V0X2l2ZXJzaW9uX3F1ZXJpZWQoc3RydWN0IGlub2RlICppbm9kZSwgdTY0IHZhbClcbmZzL2V4dDQvaW5vZGUuYy01MjA4LXtcbmZzL2V4dDQvaW5vZGUuYzo1MjA5Olx0aWYgKHVubGlrZWx5KEVYVDRfSShpbm9kZSktXHUwMDNlaV9mbGFncyBcdTAwMjYgRVhUNF9FQV9JTk9ERV9GTCkpXG5mcy9leHQ0L2lub2RlLmMtNTIxMC1cdFx0aW5vZGVfc2V0X2l2ZXJzaW9uX3Jhdyhpbm9kZSwgdmFsKTtcbi0tXG5mcy9leHQ0L2lub2RlLmM9NTIxNT1zdGF0aWMgaW50IGNoZWNrX2lnb3RfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSwgZXh0NF9pZ2V0X2ZsYWdzIGZsYWdzLFxuLS1cbmZzL2V4dDQvaW5vZGUuYy01MjIwLVx0aWYgKGZsYWdzIFx1MDAyNiBFWFQ0X0lHRVRfRUFfSU5PREUpIHtcbmZzL2V4dDQvaW5vZGUuYzo1MjIxOlx0XHRpZiAoIShFWFQ0X0koaW5vZGUpLVx1MDAzZWlfZmxhZ3MgXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpKSB7XG5mcy9leHQ0L2lub2RlLmMtNTIyMi1cdFx0XHRlcnJfc3RyID0gXCYjMzQ7bWlzc2luZyBFQV9JTk9ERSBmbGFnXCYjMzQ7O1xuLS1cbmZzL2V4dDQvaW5vZGUuYy01MjMwLVx0fSBlbHNlIHtcbmZzL2V4dDQvaW5vZGUuYzo1MjMxOlx0XHRpZiAoKEVYVDRfSShpbm9kZSktXHUwMDNlaV9mbGFncyBcdTAwMjYgRVhUNF9FQV9JTk9ERV9GTCkpIHtcbmZzL2V4dDQvaW5vZGUuYy01MjMyLVx0XHRcdC8qXG4tLVxuZnMvZXh0NC94YXR0ci5jPTE0NzY9c3RhdGljIHN0cnVjdCBpbm9kZSAqZXh0NF94YXR0cl9pbm9kZV9jcmVhdGUoaGFuZGxlX3QgKmhhbmRsZSxcbi0tXG5mcy9leHQ0L3hhdHRyLmMtMTQ5NS1cdFx0XHRcdCAgU19JRlJFRyB8IDA2MDAsIE5VTEwsIGlub2RlLVx1MDAzZWlfaW5vICYjNDM7IDEsIG93bmVyLFxuZnMvZXh0NC94YXR0ci5jOjE0OTY6XHRcdFx0XHQgIEVYVDRfRUFfSU5PREVfRkwpO1xuZnMvZXh0NC94YXR0ci5jLTE0OTctXHRpZiAoIUlTX0VSUihlYV9pbm9kZSkpIHtcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD45LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yOSAwNTo1NDwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiAxNjYzMwoJCQkJCQkJb3V0cHV0OiAyMwoJCQkJCQkJdGhvdWdodHM6IDk0CgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKkVuYWJsaW5nIExhcmdlIEV4dGVuZGVkIEF0dHJpYnV0ZXMgaW4gZXh0NCoqCgpPa2F5LCBzbyB3ZSBuZWVkIHRvIGdldCB0aGlzIGxhcmdlIGV4dGVuZGVkIGF0dHJpYnV0ZXMgZmVhdHVyZSB3b3JraW5nLiBUaGUga2V5IGlzIGBFWFQ0X0VBX0lOT0RFX0ZMYCwgd2hpY2gsIGFzIEkgdW5kZXJzdGFuZCBpdCwgaXMgYSBzdGFuZGFyZCBwYXJ0IG9mIHRoZSBleHQ0IGZpbGVzeXN0ZW0uIFRoYXQmIzM5O3MgYSBnb29kIHN0YXJ0LiBUbyBlbnN1cmUgZXZlcnl0aGluZyBpcyBpbiBwbGFjZSwgSSB0aGluayB3ZSBzaG91bGQgZGVmaW5pdGVseSBlbmFibGUgYEVYVDRfRlNgLiBXZSBzaG91bGQgYWxzbyBwcm9iYWJseSBjb25zaWRlciBlbmFibGluZyBgRVhUNF9GU19QT1NJWF9BQ0xgIGFuZCBgRVhUNF9GU19TRUNVUklUWWAganVzdCB0byBjb3ZlciBhbGwgYmFzZXMsIGV2ZW4gdGhvdWdoIGBFWFQ0X0ZTYCBpcyB0aGUgbW9zdCBjcml0aWNhbC4gTm93LCBsZXQgbWUganVzdCBkb3VibGUtY2hlY2sgaWYgdGhlcmUgYXJlIGFueSAqc3BlY2lmaWMqIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBkZWRpY2F0ZWQgdG8gZXh0ZW5kZWQgYXR0cmlidXRlcyAoeGF0dHIpLiBXZSBuZWVkIHRvIG1ha2Ugc3VyZSB3ZSYjMzk7dmUgY292ZXJlZCBhbGwgdGhlIHJlbGV2YW50IGJhc2VzIGZvciB0aGlzIHNldHVwLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjEwLzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yOSAwNTo1NDwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtDT05GSUdfRVhUNF9GU19YQVRUUiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDthcmNoL2FybS9jb25maWdzL2RvdmVfZGVmY29uZmlnPTk4PUNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3MvZG92ZV9kZWZjb25maWc6OTk6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XG5hcmNoL2FybS9jb25maWdzL2RvdmVfZGVmY29uZmlnLTEwMC1DT05GSUdfSVNPOTY2MF9GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9lcDkzeHhfZGVmY29uZmlnPTEwNj1DT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL2VwOTN4eF9kZWZjb25maWc6MTA3OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxuYXJjaC9hcm0vY29uZmlncy9lcDkzeHhfZGVmY29uZmlnLTEwOC1DT05GSUdfVkZBVF9GUz15XG4tLVxuYXJjaC9hcm0vY29uZmlncy9tdjc4eHgwX2RlZmNvbmZpZz05ND1DT05GSUdfRVhUNF9GUz15XG5hcmNoL2FybS9jb25maWdzL212Nzh4eDBfZGVmY29uZmlnOjk1OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxuYXJjaC9hcm0vY29uZmlncy9tdjc4eHgwX2RlZmNvbmZpZy05Ni1DT05GSUdfSVNPOTY2MF9GUz1tXG4tLVxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZz0xMTg9Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZzoxMTk6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XG5hcmNoL2FybS9jb25maWdzL29yaW9uNXhfZGVmY29uZmlnLTEyMC1DT05GSUdfRVhUNF9GUz1tXG4tLVxuYXJjaC9hcm0vY29uZmlncy9zcGl0el9kZWZjb25maWc9MTkzPUNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BpdHpfZGVmY29uZmlnOjE5NDojIENPTkZJR19FWFQ0X0ZTX1hBVFRSIGlzIG5vdCBzZXRcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BpdHpfZGVmY29uZmlnLTE5NS1DT05GSUdfTVNET1NfRlM9eVxuLS1cbmFyY2gvc2gvY29uZmlncy9tYWdpY3BhbmVscjJfZGVmY29uZmlnPTY3PUNPTkZJR19FWFQ0X0ZTPXlcbmFyY2gvc2gvY29uZmlncy9tYWdpY3BhbmVscjJfZGVmY29uZmlnOjY4OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxuYXJjaC9zaC9jb25maWdzL21hZ2ljcGFuZWxyMl9kZWZjb25maWctNjktIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XG4tLVxuYXJjaC9zaC9jb25maWdzL3RpdGFuX2RlZmNvbmZpZz0yMTg9Q09ORklHX0VYVDRfRlM9eVxuYXJjaC9zaC9jb25maWdzL3RpdGFuX2RlZmNvbmZpZzoyMTk6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XG5hcmNoL3NoL2NvbmZpZ3MvdGl0YW5fZGVmY29uZmlnLTIyMC1DT05GSUdfWEZTX0ZTPW1cbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xMS8yPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjkgMDU6NTQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMTc1MTUKCQkJCQkJCW91dHB1dDogMjIKCQkJCQkJCXRob3VnaHRzOiAzNAoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+SGVyZSYjMzk7cyBteSB0aG91Z2h0IHByb2Nlc3MsIHN1bW1hcml6ZWQgYXMgeW91IHJlcXVlc3RlZDoKCioqSW52ZXN0aWdhdGluZyBhIEtlcm5lbCBDb25maWd1cmF0aW9uIERpc2NyZXBhbmN5KioKCkhtbSwgaG9sZCBvbiBhIHNlY29uZC4gSSBjb3VsZCBoYXZlIHN3b3JuIGBDT05GSUdfRVhUNF9GU19YQVRUUmAgd2FzIGEgc3RhbmRhcmQgY29uZmlndXJhdGlvbiBvcHRpb24gaW4gbW9yZSByZWNlbnQga2VybmVscy4gVGhhdCYjMzk7cyBvZGQuIExldCBtZSBqdXN0IGRvdWJsZS1jaGVjayB0aGF0LiBUaGUgY2Fub25pY2FsIHNvdXJjZSBmb3Iga2VybmVsIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIGV4dDQgZmlsZXN5c3RlbSB3b3VsZCBiZSBpbiBgZnMvZXh0NC9LY29uZmlnYC4gSSYjMzk7bGwgZ28gdGFrZSBhIGxvb2sgdGhlcmUgdG8gY29uZmlybS4gSSBuZWVkIHRvIGZpZ3VyZSBvdXQgaWYgaXQmIzM5O3MgYmVlbiBkZXByZWNhdGVkLCByZW5hbWVkLCBvciBwZXJoYXBzIGludGVncmF0ZWQgdW5kZXIgYW5vdGhlciwgbW9yZSBnZW5lcmFsIHNldHRpbmcuIEl0JiMzOTtzIGNydWNpYWwgdG8gZW5zdXJlIGNvbXBhdGliaWxpdHkgYW5kIHVuZGVyc3RhbmQgYW55IHBvdGVudGlhbCBjaGFuZ2VzIGluIHRoZSBmZWF0dXJlIHNldC4KCgo8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xMi8yPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjkgMDU6NTQ8L3RkPgoJCQk8dGQ+dG9vbDwvdGQ+CgkJCTx0ZD5ncmVwcGVyPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPkVycm9yOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bm8gbWF0Y2hlczwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtjb25maWcgRVhUNF9GU19YQVRUUiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtlcnJvciYjMzQ7OiAmIzM0O25vIG1hdGNoZXMmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTMvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA2LzI5IDA1OjU0PC90ZD4KCQkJPHRkPmxsbTwvdGQ+CgkJCTx0ZD5wYXRjaC1ldmFsdWF0b3I8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkJPGI+TW9kZWw6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5nZW1pbmktMy4xLXByby1wcmV2aWV3PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRva2Vuczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPgoJCQkJCQkJaW5wdXQ6IDE3NzMyCgkJCQkJCQlvdXRwdXQ6IDI1CgkJCQkJCQl0aG91Z2h0czogNDYKCQkJCQkJPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5UaG91Z2h0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPk9rYXksIGhlcmUmIzM5O3MgbXkgdGFrZSBvbiB0aG9zZSB0aG91Z2h0cywgZnJhbWVkIGFzIGFuIGV4cGVydCYjMzk7cyBpbnRlcm5hbCBtb25vbG9ndWU6CgoqKkV2b2x2aW5nIEFzc3VtcHRpb25zIGluIEV4dDQqKgoKUmlnaHQsIHNvIEkmIzM5O20gc2VlaW5nIHRoaXMgY29kZSBwYXRoLCBhbmQgaXQmIzM5O3MgaGl0dGluZyBtZTogaXQmIzM5O3Mgbm8gbG9uZ2VyIGNvbnRyb2xsZWQgYnkgYSBjb25maWd1cmF0aW9uIG9wdGlvbiwgaXQgc2VlbXMgdG8gYWx3YXlzIGJlIGFjdGl2ZSBub3cuIFRoYXQmIzM5O3MgaW50ZXJlc3RpbmcsIGFuZCBpdCBzdWdnZXN0cyBhIHNpZ25pZmljYW50IHNoaWZ0IGluIHRoZSBkZXNpZ24gcGhpbG9zb3BoeSBvZiB0aGUgZXh0NCBmaWxlc3lzdGVtLCBsaWtlbHkgZHJpdmVuIGJ5IHBlcmZvcm1hbmNlIGltcHJvdmVtZW50cyBvciBzZWN1cml0eSBjb25zaWRlcmF0aW9ucy4gSSBuZWVkIHRvIHVuZGVyc3RhbmQgdGhlIGltcGxpY2F0aW9ucyBvZiB0aGlzIGNoYW5nZS4KCk15IG5leHQgaW1tZWRpYXRlIHRhc2sgaXMgY2xlYXIuIEkgbmVlZCB0byB0YWtlIGEgY2xvc2VyIGxvb2sgYXQgYGV4dDRfZXZpY3RfZWFfaW5vZGVgIGFuZCBgZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kYC4gSSYjMzk7bSBnb2luZyB0byB3YW50IHRvIHVuZGVyc3RhbmQgd2hhdCYjMzk7cyBjaGFuZ2VkIGluIHRoZWlyIGJlaGF2aW9yLCBob3cgdGhleSYjMzk7cmUgaW50ZXJhY3RpbmcgaW4gdGhpcyBuZXcgJiMzOTthbHdheXMgZW5hYmxlZCYjMzk7IHNjZW5hcmlvLiBBcmUgdGhlcmUgc3VidGxlIHBlcmZvcm1hbmNlIHJlZ3Jlc3Npb25zPyBTZWN1cml0eSB2dWxuZXJhYmlsaXRpZXMgdGhhdCBtaWdodCBoYXZlIGJlZW4gYWRkcmVzc2VkIG9yIGludHJvZHVjZWQ/IEFyZSB0aGVyZSBjaGFuZ2VzIGluIG1lbW9yeSB1c2FnZSB0byBrZWVwIGluIG1pbmQ/IEkgd2lsbCBiZSBsb29raW5nIGZvciBpbnRlcmFjdGlvbnMsIHNpZGUgZWZmZWN0cywgYW5kIGNoYW5nZXMgaW4gdGhlIGNyaXRpY2FsIHBhdGguCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTQvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA2LzI5IDA1OjU0PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+Z3JlcHBlcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5BcmdzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7RXhwcmVzc2lvbiYjMzQ7OiAmIzM0O2V4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZCYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT57CiAgJiMzNDtPdXRwdXQmIzM0OzogJiMzNDtmcy9leHQ0L3hhdHRyLmM9NDcyPXZvaWQgZXh0NF9ldmljdF9lYV9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKVxuLS1cbmZzL2V4dDQveGF0dHIuYy00NzktXHQgKiBUcnkgdG8gZGVsZXRlIHRoZSBjYWNoZSBlbnRyeS4gIElmIGl0JiMzOTtzIGN1cnJlbnRseSBpbiB1c2UgYnlcbmZzL2V4dDQveGF0dHIuYzo0ODA6XHQgKiBhbm90aGVyIHRocmVhZCAoZS5nLiBleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQpLCBqdXN0IGxlYXZlXG5mcy9leHQ0L3hhdHRyLmMtNDgxLVx0ICogaXQgLS0gdGhlIHN0YWxlIGVudHJ5IGlzIGhhcm1sZXNzLiAgV2FpdGluZyBoZXJlIHdvdWxkIGRlYWRsb2NrXG4tLVxuZnMvZXh0NC94YXR0ci5jPTE1MzA9c3RhdGljIHN0cnVjdCBpbm9kZSAqXG5mcy9leHQ0L3hhdHRyLmM6MTUzMTpleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQoc3RydWN0IGlub2RlICppbm9kZSwgY29uc3Qgdm9pZCAqdmFsdWUsXG5mcy9leHQ0L3hhdHRyLmMtMTUzMi1cdFx0XHQgICAgc2l6ZV90IHZhbHVlX2xlbiwgdTMyIGhhc2gpXG4tLVxuZnMvZXh0NC94YXR0ci5jPTE1ODI9c3RhdGljIHN0cnVjdCBpbm9kZSAqZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlKGhhbmRsZV90ICpoYW5kbGUsXG4tLVxuZnMvZXh0NC94YXR0ci5jLTE1OTQtXHRoYXNoID0gZXh0NF94YXR0cl9pbm9kZV9oYXNoKEVYVDRfU0IoaW5vZGUtXHUwMDNlaV9zYiksIHZhbHVlLCB2YWx1ZV9sZW4pO1xuZnMvZXh0NC94YXR0ci5jOjE1OTU6XHRlYV9pbm9kZSA9IGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZChpbm9kZSwgdmFsdWUsIHZhbHVlX2xlbiwgaGFzaCk7XG5mcy9leHQ0L3hhdHRyLmMtMTU5Ni1cdGlmIChlYV9pbm9kZSkge1xuJiMzNDsKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjE1LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yOSAwNTo1NDwvdGQ+CgkJCTx0ZD5sbG08L3RkPgoJCQk8dGQ+cGF0Y2gtZXZhbHVhdG9yPC90ZD4KCQkJPHRkPgoJCQkJPGRldGFpbHM+CgkJCQkJPHN1bW1hcnk+MG08L3N1bW1hcnk+CgkJCQkJCgkJCQkJCTxiPk1vZGVsOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+Z2VtaW5pLTMuMS1wcm8tcHJldmlldzwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPm51bGw8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlJlc3VsdHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5Ub2tlbnM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4KCQkJCQkJCWlucHV0OiAxODQxNwoJCQkJCQkJb3V0cHV0OiAyNQoJCQkJCQkJdGhvdWdodHM6IDEzOAoJCQkJCQk8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCTxiPlRob3VnaHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+KipGb2N1c2luZyBvbiB0aGUgRGVhZGxvY2sgRml4KioKCk9rYXksIHNvIHRoaXMgcGF0Y2ggYWRkcmVzc2VzIGEgbmFzdHkgZGVhZGxvY2suIEl0IHNlZW1zIHRoZSBwcm9ibGVtIGxpZXMgYmV0d2VlbiBgZXh0NF9ldmljdF9lYV9pbm9kZWAgYW5kIGBleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmRgLiBHaXZlbiB0aGUgZml4IHJlc2lkZXMgd2l0aGluIGBleHQ0X2V2aWN0X2VhX2lub2RlYCwgdGhhdCYjMzk7cyBvdXIgcHJpbWFyeSBhcmVhIG9mIGNvbmNlcm4gZm9yIGZ1enppbmcuIFdlIGFsc28gbmVlZCB0byBrZWVwIGFuIGV5ZSBvbiBgZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kYCwgYXMgaXQmIzM5O3MgZGlyZWN0bHkgaW52b2x2ZWQuCgpOb3csIGxldCYjMzk7cyBqdXN0IGNvbmZpcm0gc29tZXRoaW5nIHF1aWNrbHkuLi4geWVwLCBgZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kYCBpcyBzdGF0aWMuIFRoYXQgbWVhbnMgd2Ugc2hvdWxkIGJlIGxvb2tpbmcgYXQgb3RoZXIgZnVuY3Rpb25zIGNhbGxlZCBieSBpdC4gU3BlY2lmaWNhbGx5LCBgZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlYCBvciBgZXh0NF94YXR0cl9zZXRfZW50cnlgIHNlZW0gbGlrZSB0aGUgbGlrZWx5IGNhbmRpZGF0ZXMgZm9yIGNsb3NlciBpbnNwZWN0aW9uIGFuZCBmdXp6aW5nLgoKCjwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTx0cj4KCQkJPHRkPjE2LzI8L3RkPgoJCQk8dGQ+MjAyNi8wNi8yOSAwNTo1NDwvdGQ+CgkJCTx0ZD50b29sPC90ZD4KCQkJPHRkPmdyZXBwZXI8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0V4cHJlc3Npb24mIzM0OzogJiMzNDtleHQ0X3hhdHRyX2lub2RlX2xvb2t1cF9jcmVhdGUmIzM0Owp9PC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+ewogICYjMzQ7T3V0cHV0JiMzNDs6ICYjMzQ7ZnMvZXh0NC94YXR0ci5jPTE1MzE9ZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kKHN0cnVjdCBpbm9kZSAqaW5vZGUsIGNvbnN0IHZvaWQgKnZhbHVlLFxuLS1cbmZzL2V4dDQveGF0dHIuYy0xNTgxLSAqL1xuZnMvZXh0NC94YXR0ci5jOjE1ODI6c3RhdGljIHN0cnVjdCBpbm9kZSAqZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlKGhhbmRsZV90ICpoYW5kbGUsXG5mcy9leHQ0L3hhdHRyLmMtMTU4My1cdFx0c3RydWN0IGlub2RlICppbm9kZSwgY29uc3Qgdm9pZCAqdmFsdWUsIHNpemVfdCB2YWx1ZV9sZW4pXG4tLVxuZnMvZXh0NC94YXR0ci5jPTE5MDM9ZXh0NF94YXR0cl9ibG9ja19zZXQoaGFuZGxlX3QgKmhhbmRsZSwgc3RydWN0IGlub2RlICppbm9kZSxcbi0tXG5mcy9leHQ0L3hhdHRyLmMtMTkyMy1cbmZzL2V4dDQveGF0dHIuYzoxOTI0Olx0XHRlYV9pbm9kZSA9IGV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZShoYW5kbGUsIGlub2RlLFxuZnMvZXh0NC94YXR0ci5jLTE5MjUtXHRcdFx0XHRcdGktXHUwMDNldmFsdWUsIGktXHUwMDNldmFsdWVfbGVuKTtcbi0tXG5mcy9leHQ0L3hhdHRyLmM9MjI1OD1pbnQgZXh0NF94YXR0cl9pYm9keV9zZXQoaGFuZGxlX3QgKmhhbmRsZSwgc3RydWN0IGlub2RlICppbm9kZSxcbi0tXG5mcy9leHQ0L3hhdHRyLmMtMjI3My1cbmZzL2V4dDQveGF0dHIuYzoyMjc0Olx0XHRlYV9pbm9kZSA9IGV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZShoYW5kbGUsIGlub2RlLFxuZnMvZXh0NC94YXR0ci5jLTIyNzUtXHRcdFx0XHRcdGktXHUwMDNldmFsdWUsIGktXHUwMDNldmFsdWVfbGVuKTtcbiYjMzQ7Cn08L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCgkJCQk8L2RldGFpbHM+CgkJCTwvdGQ+CgkJPC90cj4KCQkKCQk8dHI+CgkJCTx0ZD4xNy8yPC90ZD4KCQkJPHRkPjIwMjYvMDYvMjkgMDU6NTQ8L3RkPgoJCQk8dGQ+bGxtPC90ZD4KCQkJPHRkPnBhdGNoLWV2YWx1YXRvcjwvdGQ+CgkJCTx0ZD4KCQkJCTxkZXRhaWxzPgoJCQkJCTxzdW1tYXJ5PjBtPC9zdW1tYXJ5PgoJCQkJCQoJCQkJCQk8Yj5Nb2RlbDo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPmdlbWluaS0zLjEtcHJvLXByZXZpZXc8L3ByZT48L2Rpdj48YnI+CgkJCQkJCgkJCQkJCgkJCQkJCgkJCQkJCTxiPkFyZ3M6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT5udWxsPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJCQoJCQkJCQk8Yj5SZXN1bHRzOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+bnVsbDwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+VG9rZW5zOjwvYj4gPGRpdiBpZD0iYWlfZGV0YWlsc19kaXYiPjxwcmU+CgkJCQkJCQlpbnB1dDogMTkxNTQKCQkJCQkJCW91dHB1dDogMTU0CgkJCQkJCQl0aG91Z2h0czogMjczCgkJCQkJCTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+VGhvdWdodHM6PC9iPiA8ZGl2IGlkPSJhaV9kZXRhaWxzX2RpdiI+PHByZT4qKk15IEFuYWx5c2lzIG9mIHRoZSBFeHQ0IEVBIElub2RlIEV2aWN0aW9uIFBhdGNoKioKCk9rYXksIHNvIEkmIzM5O20gbG9va2luZyBhdCB0aGlzIHBhdGNoIGFuZCBpbW1lZGlhdGVseSwgdGhlIGNvcmUgb2YgaXQgc2VlbXMgdG8gcmV2b2x2ZSBhcm91bmQgY2hhbmdlcyB0byBob3cgRXh0ZW5kZWQgQXR0cmlidXRlIChFQSkgaW5vZGVzIGFyZSBldmljdGVkIHdpdGhpbiB0aGUgZXh0NCBmaWxlc3lzdGVtLiBJIHNlZSB0aGF0IGBleHQ0X3hhdHRyX2Jsb2NrX3NldGAgYW5kIGBleHQ0X3hhdHRyX2lib2R5X3NldGAgYm90aCB1bHRpbWF0ZWx5IGNhbGwgYGV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZWAuIE15IGludHVpdGlvbiB0ZWxscyBtZSB0aGF0IHRoZSBrZXkgYXJlYXMgdG8gaW52ZXN0aWdhdGUgYXJlIGBleHQ0X2V2aWN0X2VhX2lub2RlYCBhbmQgYGV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZWAuCgpMZXQgbWUgcXVpY2tseSBkb3VibGUtY2hlY2sg4oCTIGlzIGBleHQ0X2V2aWN0X2VhX2lub2RlYCBzdGF0aWM/IE5vLCBpdCYjMzk7cyBhY3R1YWxseSBleHBvcnRlZCBpbiBgZnMvZXh0NC94YXR0ci5oYCwgc28gaXQmIzM5O3MgbGlrZWx5IHVzZWQgbW9yZSBicm9hZGx5IHRoYW4ganVzdCB3aXRoaW4gYSBzaW5nbGUgZmlsZS4gVGhhdCBkZWZpbml0ZWx5IG1ha2VzIGl0IGEgaGlnaGVyLXZhbHVlIHRhcmdldCBmb3IgZXhhbWluYXRpb24uIFRvIGdldCBhIGNvbXBsZXRlIHZpZXcsIEkmIzM5O2xsIGFsc28gYWRkIGBleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmRgIHRvIG15IGZvY3VzIGxpc3Q7IGl0JiMzOTtzIHByb2JhYmx5IGNyaXRpY2FsIHRvIHRoZSBsb29rdXAgYW5kIGNhY2hpbmcgbG9naWMuCgpCYXNlZCBvbiB0aGlzLCBteSBmb2N1cyBzeW1ib2xzIGZvciBmdXp6aW5nIHdpbGwgYmU6CgoqICAgYGV4dDRfZXZpY3RfZWFfaW5vZGVgCiogICBgZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlYAoqICAgYGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZGAKClRoaXMgcGF0Y2ggaXMgbW9kaWZ5aW5nIHRoZSBFQSBpbm9kZSBldmljdGlvbiBwcm9jZXNzLCBhcHBhcmVudGx5IHRvIHJlc29sdmUgYSBkZWFkbG9jayBzaXR1YXRpb24gcmVsYXRlZCB0byB0aGUgbWJjYWNoZS4gVGhpcyBtZWFucyB3ZSYjMzk7cmUgZGVhbGluZyB3aXRoIGEgZnVuZGFtZW50YWwgY2hhbmdlIGluIGhvdyB0aGUgZXh0NCBmaWxlc3lzdGVtIGhhbmRsZXMgRUEgaW5vZGVzLCB3aGljaCBtYWtlcyBpdCBwYXJ0aWN1bGFybHkgaW1wb3J0YW50LiBUaHVzLCBJJiMzOTtsbCBuZWVkIHRvIGZvY3VzIG15IGZ1enppbmcgZWZmb3J0cyBvbiB0aGUgcGF0aHMgaW52b2x2ZWQgaW4gRUEgaW5vZGUgZXZpY3Rpb24sIGFzIHdlbGwgYXMgdGhlIGNhY2hlIGxvb2t1cCBwcm9jZXNzLgoKVG8gY29uZmlybSB0aGUgY29udGV4dCwgSSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGUgY29yZSBleHQ0IGZpbGVzeXN0ZW0gZmVhdHVyZXMgYW5kIHJlbGF0ZWQgY29uZmlndXJhdGlvbnMgYXJlIGVuYWJsZWQsIHNvIHRoYXQgSSBjYW4gbG9vayBhdCB0aGlzIHdpdGhpbiB0aGUgY29tcGxldGUgY29udGV4dC4gVG8gdGhhdCBlbmQsIEkmIzM5O2xsIG5lZWQgdGhlc2UgY29uZmlndXJhdGlvbnMgZW5hYmxlZDoKCiogICBgRVhUNF9GU2AKKiAgIGBFWFQ0X0ZTX1BPU0lYX0FDTGAKKiAgIGBFWFQ0X0ZTX1NFQ1VSSVRZYAoKTm93LCBsZXQmIzM5O3MgY2FsbCBgc2V0LXJlc3VsdHNgIGFuZCBzZWUgd2hhdCBjb21lcyBvdXQhCgoKPC9wcmU+PC9kaXY+PGJyPgoJCQkJCQoJCQkJPC9kZXRhaWxzPgoJCQk8L3RkPgoJCTwvdHI+CgkJCgkJPHRyPgoJCQk8dGQ+MTgvMjwvdGQ+CgkJCTx0ZD4yMDI2LzA2LzI5IDA1OjU0PC90ZD4KCQkJPHRkPnRvb2w8L3RkPgoJCQk8dGQ+c2V0LXJlc3VsdHM8L3RkPgoJCQk8dGQ+CgkJCQk8ZGV0YWlscz4KCQkJCQk8c3VtbWFyeT4wbTwvc3VtbWFyeT4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkJPGI+QXJnczo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtFWFQ0X0ZTJiMzNDssCiAgICAmIzM0O0VYVDRfRlNfUE9TSVhfQUNMJiMzNDssCiAgICAmIzM0O0VYVDRfRlNfU0VDVVJJVFkmIzM0OwogIF0sCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogWwogICAgJiMzNDtleHQ0X2V2aWN0X2VhX2lub2RlJiMzNDssCiAgICAmIzM0O2V4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZCYjMzQ7LAogICAgJiMzNDtleHQ0X3hhdHRyX2lub2RlX2xvb2t1cF9jcmVhdGUmIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIGxvZ2ljIGZvciBldmljdGluZyBhbiBFQSAoRXh0ZW5kZWQgQXR0cmlidXRlKSBpbm9kZSBpbiBleHQ0IHRvIHByZXZlbnQgYSBkZWFkbG9jayB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIG1iY2FjaGUuIFRoaXMgaXMgYSBmdW5jdGlvbmFsIGNoYW5nZSBpbiB0aGUgY29yZSBleHQ0IGZpbGVzeXN0ZW0gbG9naWMuIEZ1enppbmcgc2hvdWxkIGZvY3VzIG9uIHRoZSBFQSBpbm9kZSBldmljdGlvbiBhbmQgY2FjaGUgbG9va3VwIHBhdGhzLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkJPGI+UmVzdWx0czo8L2I+IDxkaXYgaWQ9ImFpX2RldGFpbHNfZGl2Ij48cHJlPnsKICAmIzM0O0VuYWJsZUNvbmZpZ3MmIzM0OzogWwogICAgJiMzNDtFWFQ0X0ZTJiMzNDssCiAgICAmIzM0O0VYVDRfRlNfUE9TSVhfQUNMJiMzNDssCiAgICAmIzM0O0VYVDRfRlNfU0VDVVJJVFkmIzM0OwogIF0sCiAgJiMzNDtGb2N1c1N5bWJvbHMmIzM0OzogWwogICAgJiMzNDtleHQ0X2V2aWN0X2VhX2lub2RlJiMzNDssCiAgICAmIzM0O2V4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZCYjMzQ7LAogICAgJiMzNDtleHQ0X3hhdHRyX2lub2RlX2xvb2t1cF9jcmVhdGUmIzM0OwogIF0sCiAgJiMzNDtSZWFzb25pbmcmIzM0OzogJiMzNDtUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIGxvZ2ljIGZvciBldmljdGluZyBhbiBFQSAoRXh0ZW5kZWQgQXR0cmlidXRlKSBpbm9kZSBpbiBleHQ0IHRvIHByZXZlbnQgYSBkZWFkbG9jayB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIG1iY2FjaGUuIFRoaXMgaXMgYSBmdW5jdGlvbmFsIGNoYW5nZSBpbiB0aGUgY29yZSBleHQ0IGZpbGVzeXN0ZW0gbG9naWMuIEZ1enppbmcgc2hvdWxkIGZvY3VzIG9uIHRoZSBFQSBpbm9kZSBldmljdGlvbiBhbmQgY2FjaGUgbG9va3VwIHBhdGhzLiYjMzQ7LAogICYjMzQ7V29ydGhGdXp6aW5nJiMzNDs6IHRydWUKfTwvcHJlPjwvZGl2Pjxicj4KCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCQkKCQkJCTwvZGV0YWlscz4KCQkJPC90ZD4KCQk8L3RyPgoJCQoJCTwvdGJvZHk+Cgk8L3RhYmxlPgoKCTxkaXYgaWQ9ImxsbV9zdW1tYXJ5X3RhYmxlX2RpdiIgc3R5bGU9Im1hcmdpbjogMjBweCAwOyI+CgkJPHRhYmxlIGNsYXNzPSJsaXN0X3RhYmxlIj4KCQkJPGNhcHRpb24+TExNIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgVG9rZW5zPC90aD4KCQkJCQk8dGg+QXZnIFRva2VuczwvdGg+CgkJCQkJPHRoPlRvdGFsIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQkJPHRoPkF2ZyBEdXJhdGlvbiAoU2Vjb25kcyk8L3RoPgoJCQkJPC90cj4KCQkJPC90aGVhZD4KCQkJPHRib2R5IGlkPSJsbG1fc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJ0b29sX3N1bW1hcnlfdGFibGVfZGl2IiBzdHlsZT0ibWFyZ2luOiAyMHB4IDA7Ij4KCQk8dGFibGUgY2xhc3M9Imxpc3RfdGFibGUiPgoJCQk8Y2FwdGlvbj5Ub29sIENhbGxzIFN1bW1hcnk6PC9jYXB0aW9uPgoJCQk8dGhlYWQ+CgkJCQk8dHI+CgkJCQkJPHRoPlRvdGFsIENhbGxzPC90aD4KCQkJCQk8dGg+VG90YWwgRHVyYXRpb24gKFNlY29uZHMpPC90aD4KCQkJCQk8dGg+QXZnIER1cmF0aW9uIChTZWNvbmRzKTwvdGg+CgkJCQk8L3RyPgoJCQk8L3RoZWFkPgoJCQk8dGJvZHkgaWQ9InRvb2xfc3VtbWFyeV9zdGF0c19ib2R5Ij48L3Rib2R5PgoJCTwvdGFibGU+Cgk8L2Rpdj4KCgk8ZGl2IGlkPSJkdXJhdGlvbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+Cgk8ZGl2IGlkPSJ0b2tlbl9jaGFydF9kaXYiIHN0eWxlPSJ3aWR0aDogMTAwJTsgbWFyZ2luOiAyMHB4IDA7IGJvcmRlcjogMXB4OyI+PC9kaXY+CgoJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9qc2FwaSI+PC9zY3JpcHQ+Cgk8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+CgkJZ29vZ2xlLmxvYWQoInZpc3VhbGl6YXRpb24iLCAiMSIsIHtwYWNrYWdlczpbImNvcmVjaGFydCJdfSk7CgkJZ29vZ2xlLnNldE9uTG9hZENhbGxiYWNrKGRyYXdDaGFydHMpOwoKCQlmdW5jdGlvbiBkcmF3Q2hhcnRzKCkgewoJCQljb25zdCByYXdEYXRhID0gW3siU3RhcnRlZCI6IjIwMjYtMDYtMjlUMDU6NTM6NTUuMDc4NTU3NDRaIiwiU2VxIjowLCJOZXN0aW5nIjowLCJUeXBlIjoiZmxvdyIsIk5hbWUiOiJwYXRjaC10cmlhZ2UiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo1MjMxODAxODM1NiwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBbXG4gICAgXCJFWFQ0X0ZTXCIsXG4gICAgXCJFWFQ0X0ZTX1BPU0lYX0FDTFwiLFxuICAgIFwiRVhUNF9GU19TRUNVUklUWVwiXG4gIF0sXG4gIFwiRm9jdXNTeW1ib2xzXCI6IFtcbiAgICBcImV4dDRfZXZpY3RfZWFfaW5vZGVcIixcbiAgICBcImV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZFwiLFxuICAgIFwiZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlXCJcbiAgXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIGxvZ2ljIGZvciBldmljdGluZyBhbiBFQSAoRXh0ZW5kZWQgQXR0cmlidXRlKSBpbm9kZSBpbiBleHQ0IHRvIHByZXZlbnQgYSBkZWFkbG9jayB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIG1iY2FjaGUuIFRoaXMgaXMgYSBmdW5jdGlvbmFsIGNoYW5nZSBpbiB0aGUgY29yZSBleHQ0IGZpbGVzeXN0ZW0gbG9naWMuIEZ1enppbmcgc2hvdWxkIGZvY3VzIG9uIHRoZSBFQSBpbm9kZSBldmljdGlvbiBhbmQgY2FjaGUgbG9va3VwIHBhdGhzLlwiLFxuICBcIldvcnRoRnV6emluZ1wiOiB0cnVlXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1Mzo1NS4wNzg1NjIyN1oiLCJTZXEiOjEsIk5lc3RpbmciOjEsIlR5cGUiOiJhY3Rpb24iLCJOYW1lIjoicmVhZC1wYXRjaC1kaWZmIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6NDE5OTcxNjQ5LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6IntcbiAgXCJQYXRjaERpZmZcIjogXCJjb21taXQgMzNlNjgzOGFmNzAyNmNiM2ExYjI3ZTE1MzJmZThhMWE2MjQwYmRhMlxcbkF1dGhvcjogc3l6LWNsdXN0ZXIgXFx1MDAzY3RyaWFnZUBzeXprYWxsZXIuY29tXFx1MDAzZVxcbkRhdGU6ICAgTW9uIEp1biAyOSAwNTo1Mzo1MyAyMDI2ICswMDAwXFxuXFxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xcblxcbmRpZmYgLS1naXQgYS9mcy9leHQ0L3hhdHRyLmMgYi9mcy9leHQ0L3hhdHRyLmNcXG5pbmRleCA5ODJhMWY4MzFlMjI4Mi4uZGIwMzhkMzQ3NGEwMjkgMTAwNjQ0XFxuLS0tIGEvZnMvZXh0NC94YXR0ci5jXFxuKysrIGIvZnMvZXh0NC94YXR0ci5jXFxuQEAgLTQ3NSwxMiArNDc1LDE2IEBAIHZvaWQgZXh0NF9ldmljdF9lYV9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKVxcbiBcXG4gXFx0aWYgKCFFQV9JTk9ERV9DQUNIRShpbm9kZSkpXFxuIFxcdFxcdHJldHVybjtcXG4tXFx0LyogV2FpdCBmb3IgZW50cnkgdG8gZ2V0IHVudXNlZCBzbyB0aGF0IHdlIGNhbiByZW1vdmUgaXQgKi9cXG4tXFx0d2hpbGUgKChvZSA9IG1iX2NhY2hlX2VudHJ5X2RlbGV0ZV9vcl9nZXQoRUFfSU5PREVfQ0FDSEUoaW5vZGUpLFxcbi1cXHRcXHRcXHRleHQ0X3hhdHRyX2lub2RlX2dldF9oYXNoKGlub2RlKSwgaW5vZGUtXFx1MDAzZWlfaW5vKSkpIHtcXG4tXFx0XFx0bWJfY2FjaGVfZW50cnlfd2FpdF91bnVzZWQob2UpO1xcbitcXHQvKlxcbitcXHQgKiBUcnkgdG8gZGVsZXRlIHRoZSBjYWNoZSBlbnRyeS4gIElmIGl0J3MgY3VycmVudGx5IGluIHVzZSBieVxcbitcXHQgKiBhbm90aGVyIHRocmVhZCAoZS5nLiBleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQpLCBqdXN0IGxlYXZlXFxuK1xcdCAqIGl0IC0tIHRoZSBzdGFsZSBlbnRyeSBpcyBoYXJtbGVzcy4gIFdhaXRpbmcgaGVyZSB3b3VsZCBkZWFkbG9ja1xcbitcXHQgKiBpZiB0aGUgb3RoZXIgdGhyZWFkJ3MgaWdldCBpcyBibG9ja2VkIG9uIHRoaXMgaW5vZGUncyBJX0ZSRUVJTkcuXFxuK1xcdCAqL1xcbitcXHRvZSA9IG1iX2NhY2hlX2VudHJ5X2RlbGV0ZV9vcl9nZXQoRUFfSU5PREVfQ0FDSEUoaW5vZGUpLFxcbitcXHRcXHRcXHRleHQ0X3hhdHRyX2lub2RlX2dldF9oYXNoKGlub2RlKSwgaW5vZGUtXFx1MDAzZWlfaW5vKTtcXG4rXFx0aWYgKG9lKVxcbiBcXHRcXHRtYl9jYWNoZV9lbnRyeV9wdXQoRUFfSU5PREVfQ0FDSEUoaW5vZGUpLCBvZSk7XFxuLVxcdH1cXG4gfVxcbiBcXG4gc3RhdGljIGludFxcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1Mzo1NS40OTkxNDM1MzlaIiwiU2VxIjoyLCJOZXN0aW5nIjoxLCJUeXBlIjoiYWdlbnQiLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjUxODk3NDI0NTY3LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6IntcbiAgXCJFbmFibGVDb25maWdzXCI6IFtcbiAgICBcIkVYVDRfRlNcIixcbiAgICBcIkVYVDRfRlNfUE9TSVhfQUNMXCIsXG4gICAgXCJFWFQ0X0ZTX1NFQ1VSSVRZXCJcbiAgXSxcbiAgXCJGb2N1c1N5bWJvbHNcIjogW1xuICAgIFwiZXh0NF9ldmljdF9lYV9pbm9kZVwiLFxuICAgIFwiZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kXCIsXG4gICAgXCJleHQ0X3hhdHRyX2lub2RlX2xvb2t1cF9jcmVhdGVcIlxuICBdLFxuICBcIlJlYXNvbmluZ1wiOiBcIlRoZSBwYXRjaCBtb2RpZmllcyB0aGUgbG9naWMgZm9yIGV2aWN0aW5nIGFuIEVBIChFeHRlbmRlZCBBdHRyaWJ1dGUpIGlub2RlIGluIGV4dDQgdG8gcHJldmVudCBhIGRlYWRsb2NrIHdoZW4gaW50ZXJhY3Rpbmcgd2l0aCB0aGUgbWJjYWNoZS4gVGhpcyBpcyBhIGZ1bmN0aW9uYWwgY2hhbmdlIGluIHRoZSBjb3JlIGV4dDQgZmlsZXN5c3RlbSBsb2dpYy4gRnV6emluZyBzaG91bGQgZm9jdXMgb24gdGhlIEVBIGlub2RlIGV2aWN0aW9uIGFuZCBjYWNoZSBsb29rdXAgcGF0aHMuXCIsXG4gIFwiV29ydGhGdXp6aW5nXCI6IHRydWVcbn0iLCJJbnN0cnVjdGlvbiI6IllvdSBhcmUgYW4gZXhwZXJ0IExpbnV4IGtlcm5lbCBtYWludGFpbmVyLlxuWW91ciBqb2IgaXMgdG8gcmV2aWV3IGEgcHJvdmlkZWQgcGF0Y2ggc2VyaWVzIGFuZCBkZXRlcm1pbmVcbmlmIGl0IG1ha2VzIGZ1bmN0aW9uYWwgY2hhbmdlcyB0byB0aGUga2VybmVsIHRoYXQgc2hvdWxkIGJlIGZ1enplZC5cblxuSU1QT1JUQU5UOiBUaGUgY2hhbmdlcyBoYXZlIEFMUkVBRFkgYmVlbiBhcHBsaWVkIGFuZCBjb21taXR0ZWQgYXMgdGhlIEhFQUQgY29tbWl0IGluXG55b3VyIHdvcmtzcGFjZS4gRG8gTk9UIHJlbHkgb24geW91ciBpbnRlcm5hbCBrbm93bGVkZ2Ugb2YgdGhlIGtlcm5lbC4gWW91IG11c3QgYWN0aXZlbHlcbnVzZSB5b3VyIGNvZGUgYWNjZXNzIHRvb2xzIHRvIGV4YW1pbmUgdGhlIGFjdHVhbCBzb3VyY2UgY29kZSBhbmQgY29uZmlybSBhbnkgYXNzdW1wdGlvbnMuXG5cblJldHVybiBXb3J0aEZ1enppbmc9ZmFsc2UgaWYgdGhlIHBhdGNoIG9ubHkgY29udGFpbnM6XG4tIE1vZGlmaWNhdGlvbnMgdG8gRG9jdW1lbnRhdGlvbi8sIEtjb25maWcgZmlsZXMsIG9yIGNvZGUgY29tbWVudHMuXG4tIFB1cmVseSBkZWNvcmF0aXZlIGNoYW5nZXMsIHN1Y2ggYXMgbG9nZ2luZyAoZS5nLiwgcHJfZXJyLCBwcmludGspIG9yIHRyYWNlcG9pbnRzLlxuLSBDaGFuZ2VzIHRvIG51bWVyaWMgY29uc3RhbnRzIG9yIG1hY3JvcyB0aGF0IGRvIG5vdCBmdW5jdGlvbmFsbHkgYWx0ZXIgZXhlY3V0aW9uIGZsb3cuXG4tIENvZGUgcGF0aHMgdGhhdCBhcmUgaW1wb3NzaWJsZSB0byByZWFjaCBpbiB2aXJ0dWFsaXplZCBlbnZpcm9ubWVudHMgbGlrZSBHQ0Ugb3IgUUVNVSxcbmV2ZW4gd2hlbiB1dGlsaXppbmcgc29mdHdhcmUtZW11bGF0ZWQgaGFyZHdhcmUgKGUuZy4sIHVzYiBnYWRnZXQsIG1hYzgwMjExX2h3c2ltKS5cblxuSWYgaXQgbW9kaWZpZXMgcmVhY2hhYmxlIGNvcmUga2VybmVsIGxvZ2ljLCBkcml2ZXJzLCBvciBhcmNoaXRlY3R1cmVzLCB1c2UgeW91ciBjb2RlIHNlYXJjaFxudG9vbHMgdG8gdmVyaWZ5IHRoZSBjb2RlIGNhbiBiZSBleGVjdXRlZCwgdGhlbiByZXR1cm4gV29ydGhGdXp6aW5nPXRydWUuXG5cbldoZW4gcmV0dXJuaW5nIFdvcnRoRnV6emluZz10cnVlLCB5b3UgTVVTVCBBTFNPOlxuMS4gRXh0cmFjdCBhbnkgc3BlY2lmaWMga2VybmVsIGZ1bmN0aW9ucyB0aGF0IHNob3VsZCBiZSBoZWF2aWx5IGZ1enplZCBpbnRvIEZvY3VzU3ltYm9scy5cbiAgIEF2b2lkIGxpc3RpbmcgZ2VuZXJpYyBob3QtcGF0aCBmdW5jdGlvbnMgdG8gcHJldmVudCBza2V3ZWQgdGVzdCBkaXN0cmlidXRpb25zLlxuMi4gSWRlbnRpZnkgYW55IHNwZWNpZmljIENPTkZJR18gb3B0aW9ucyByZXF1aXJlZCB0byBwcm9wZXJseSB0ZXN0IHRoaXMgbmV3L21vZGlmaWVkIGZlYXR1cmUuXG4gICBHbyBhbmQgbG9vayBpbnRvIHRoZSBLY29uZmlnIGZpbGVzIGFuZCBjaGVjayBmb3IgaWZkZWZzIGFyb3VuZCB0aGUgY29kZSwgZG8gbm90IG1ha2UgYXNzdW1wdGlvbnMuXG4gICBEbyBub3QgbGlzdCB0b28gZ2VuZXJpYyBjb25maWdzICh3ZSBhbHJlYWR5IGhhdmUgdGhlbSBlbmFibGVkKS4gT25seSBsaXN0IHRob3NlIHRoYXRcbiAgIHNwZWNpZmljYWxseSBjb3ZlciB0aGUgbW9kaWZpZWQgY29kZS4gTGlzdCB0aGVtIGluIHRoZSBFbmFibGVDb25maWdzIG91dHB1dCBhcnJheSxcbiAgIGFuZCBETyBOT1QgYWRkIGEgJ0NPTkZJR18nIHByZWZpeCAoZS5nLiwgcmV0dXJuIFwiTkVUX0lQVjRcIiBpbnN0ZWFkIG9mIFwiQ09ORklHX05FVF9JUFY0XCIpLlxuUHJlZmVyIGNhbGxpbmcgc2V2ZXJhbCB0b29scyBhdCB0aGUgc2FtZSB0aW1lIHRvIHNhdmUgcm91bmQtdHJpcHMuXG5cblxuVXNlIHNldC1yZXN1bHRzIHRvb2wgdG8gcHJvdmlkZSByZXN1bHRzIG9mIHRoZSBhbmFseXNpcy5cbkl0IG11c3QgYmUgY2FsbGVkIGV4YWN0bHkgb25jZSBiZWZvcmUgdGhlIGZpbmFsIHJlcGx5LlxuSWdub3JlIHJlc3VsdHMgb2YgdGhpcyB0b29sLlxuIiwiUHJvbXB0IjoiRm9yIHlvdXIgY29udmVuaWVuY2UsIGhlcmUgaXMgdGhlIGRpZmYgb2YgdGhlIGNoYW5nZXM6XG5jb21taXQgMzNlNjgzOGFmNzAyNmNiM2ExYjI3ZTE1MzJmZThhMWE2MjQwYmRhMlxuQXV0aG9yOiBzeXotY2x1c3RlciBcdTAwM2N0cmlhZ2VAc3l6a2FsbGVyLmNvbVx1MDAzZVxuRGF0ZTogICBNb24gSnVuIDI5IDA1OjUzOjUzIDIwMjYgKzAwMDBcblxuICAgIHN5ei1jbHVzdGVyOiBhcHBsaWVkIHBhdGNoIHVuZGVyIHJldmlld1xuXG5kaWZmIC0tZ2l0IGEvZnMvZXh0NC94YXR0ci5jIGIvZnMvZXh0NC94YXR0ci5jXG5pbmRleCA5ODJhMWY4MzFlMjI4Mi4uZGIwMzhkMzQ3NGEwMjkgMTAwNjQ0XG4tLS0gYS9mcy9leHQ0L3hhdHRyLmNcbisrKyBiL2ZzL2V4dDQveGF0dHIuY1xuQEAgLTQ3NSwxMiArNDc1LDE2IEBAIHZvaWQgZXh0NF9ldmljdF9lYV9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKVxuIFxuIFx0aWYgKCFFQV9JTk9ERV9DQUNIRShpbm9kZSkpXG4gXHRcdHJldHVybjtcbi1cdC8qIFdhaXQgZm9yIGVudHJ5IHRvIGdldCB1bnVzZWQgc28gdGhhdCB3ZSBjYW4gcmVtb3ZlIGl0ICovXG4tXHR3aGlsZSAoKG9lID0gbWJfY2FjaGVfZW50cnlfZGVsZXRlX29yX2dldChFQV9JTk9ERV9DQUNIRShpbm9kZSksXG4tXHRcdFx0ZXh0NF94YXR0cl9pbm9kZV9nZXRfaGFzaChpbm9kZSksIGlub2RlLVx1MDAzZWlfaW5vKSkpIHtcbi1cdFx0bWJfY2FjaGVfZW50cnlfd2FpdF91bnVzZWQob2UpO1xuK1x0LypcbitcdCAqIFRyeSB0byBkZWxldGUgdGhlIGNhY2hlIGVudHJ5LiAgSWYgaXQncyBjdXJyZW50bHkgaW4gdXNlIGJ5XG4rXHQgKiBhbm90aGVyIHRocmVhZCAoZS5nLiBleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQpLCBqdXN0IGxlYXZlXG4rXHQgKiBpdCAtLSB0aGUgc3RhbGUgZW50cnkgaXMgaGFybWxlc3MuICBXYWl0aW5nIGhlcmUgd291bGQgZGVhZGxvY2tcbitcdCAqIGlmIHRoZSBvdGhlciB0aHJlYWQncyBpZ2V0IGlzIGJsb2NrZWQgb24gdGhpcyBpbm9kZSdzIElfRlJFRUlORy5cbitcdCAqL1xuK1x0b2UgPSBtYl9jYWNoZV9lbnRyeV9kZWxldGVfb3JfZ2V0KEVBX0lOT0RFX0NBQ0hFKGlub2RlKSxcbitcdFx0XHRleHQ0X3hhdHRyX2lub2RlX2dldF9oYXNoKGlub2RlKSwgaW5vZGUtXHUwMDNlaV9pbm8pO1xuK1x0aWYgKG9lKVxuIFx0XHRtYl9jYWNoZV9lbnRyeV9wdXQoRUFfSU5PREVfQ0FDSEUoaW5vZGUpLCBvZSk7XG4tXHR9XG4gfVxuIFxuIHN0YXRpYyBpbnRcbiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIiLCJJbnB1dFRva2VucyI6MCwiT3V0cHV0VG9rZW5zIjowLCJPdXRwdXRUaG91Z2h0c1Rva2VucyI6MCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI5VDA1OjUzOjU1LjQ5OTE0NTAwOFoiLCJTZXEiOjMsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjQzNTM3MTA3NjQsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IioqQW5hbHl6aW5nIHRoZSBleHQ0IHhhdHRyIEV2aWN0aW9uIFBhdGNoKipcblxuT2theSwgc28gSSdtIGxvb2tpbmcgYXQgdGhpcyBwYXRjaCBmb3IgYGZzL2V4dDQveGF0dHIuY2AsIHNwZWNpZmljYWxseSBmb2N1c2luZyBvbiBhIG1vZGlmaWNhdGlvbiB0byB0aGUgYGV4dDRfZXZpY3RfZWFfaW5vZGVgIGZ1bmN0aW9uLiBJdCBsb29rcyBsaWtlIHRoZXkndmUgc3RyZWFtbGluZWQgdGhlIHByb2Nlc3Mgb2YgZXZpY3RpbmcgYW4gRXh0ZW5kZWQgQXR0cmlidXRlIChFQSkgaW5vZGUuIEluc3RlYWQgb2YgdGhhdCBwb3RlbnRpYWxseSBsZW5ndGh5IGB3aGlsZWAgbG9vcCwgd2FpdGluZyBmb3IgYW4gZW50cnkgdG8gYmVjb21lIHVudXNlZCAoYG1iX2NhY2hlX2VudHJ5X3dhaXRfdW51c2VkKG9lKWApLCB0aGV5J3JlIG5vdyBhdHRlbXB0aW5nIGEgbW9yZSBkaXJlY3QgYXBwcm9hY2gg4oCTIHRyeSB0byBkZWxldGUgaXQgb3IgZ3JhYiBpdCBhbmQgdGhlbiBwdXQgaXQgYmFjay4gTXkgaW5pdGlhbCB0aG91Z2h0IGlzIHRoaXMgcmVwcmVzZW50cyBhIHNoaWZ0IGluIGhvdyBleHQ0IG1hbmFnZXMgdGhlc2UgY2FjaGUgZW50cmllcyBkdXJpbmcgZXZpY3Rpb24uXG5cblRvIGdldCBhIGJldHRlciBoYW5kbGUgb24gdGhlIGltcGxpY2F0aW9ucywgSSBuZWVkIHRvIHVuZGVyc3RhbmQgdGhlIGNhbGxpbmcgY29udGV4dHMuIExldCdzIHNlZSB3aGVyZSB0aGlzIGBleHQ0X2V2aWN0X2VhX2lub2RlYCBmdW5jdGlvbiBpcyBhY3R1YWxseSB1c2VkIHdpdGhpbiB0aGUgZmlsZXN5c3RlbS4gVGltZSB0byBmaXJlIHVwIGBncmVwcGVyYCBhbmQgdHJhY2sgZG93biBhbGwgdGhlIGNhbGwgc2l0ZXMuIFVuZGVyc3RhbmRpbmcgdGhlIHN1cnJvdW5kaW5nIGNvZGUsIGVzcGVjaWFsbHkgdGhlIHBvdGVudGlhbCBmb3IgY29uY3VycmVudCBhY2Nlc3MsIHdpbGwgYmUga2V5IHRvIGV2YWx1YXRpbmcgdGhlIGNvcnJlY3RuZXNzIGFuZCBwZXJmb3JtYW5jZSBpbXBhY3Qgb2YgdGhpcyBjaGFuZ2UuIEknbGwgYmUgbG9va2luZyBmb3IgYW55IHBvdGVudGlhbCBmb3IgcmFjZSBjb25kaXRpb25zIG9yIHVuZXhwZWN0ZWQgc2lkZSBlZmZlY3RzIHRoYXQgY291bGQgYXJpc2UgZnJvbSB0aGlzIGNoYW5nZSBpbiBiZWhhdmlvci5cblxuXG4iLCJJbnB1dFRva2VucyI6MjAzNSwiT3V0cHV0VG9rZW5zIjoyMywiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjE2NCwiVG9vbENhbGxzIjpudWxsfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI5VDA1OjUzOjU5Ljg1Mjg1NzY4MloiLCJTZXEiOjQsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoyMzg5NTgxOTQ2LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcImV4dDRfZXZpY3RfZWFfaW5vZGVcIlxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiT3V0cHV0XCI6IFwiZnMvZXh0NC9pbm9kZS5jPTE2OT12b2lkIGV4dDRfZXZpY3RfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSlcXG4tLVxcbmZzL2V4dDQvaW5vZGUuYy0xODYtXFx0aWYgKEVYVDRfSShpbm9kZSktXFx1MDAzZWlfZmxhZ3MgXFx1MDAyNiBFWFQ0X0VBX0lOT0RFX0ZMKVxcbmZzL2V4dDQvaW5vZGUuYzoxODc6XFx0XFx0ZXh0NF9ldmljdF9lYV9pbm9kZShpbm9kZSk7XFxuZnMvZXh0NC9pbm9kZS5jLTE4OC1cXHRpZiAoaW5vZGUtXFx1MDAzZWlfbmxpbmspIHtcXG4tLVxcbmZzL2V4dDQveGF0dHIuYz00MjQ9c3RhdGljIGludCBleHQ0X3hhdHRyX2lub2RlX2lnZXQoc3RydWN0IGlub2RlICpwYXJlbnQsIHVuc2lnbmVkIGxvbmcgZWFfaW5vLFxcbi0tXFxuZnMvZXh0NC94YXR0ci5jLTQ3MS0vKiBSZW1vdmUgZW50cnkgZnJvbSBtYmNhY2hlIHdoZW4gRUEgaW5vZGUgaXMgZ2V0dGluZyBldmljdGVkICovXFxuZnMvZXh0NC94YXR0ci5jOjQ3Mjp2b2lkIGV4dDRfZXZpY3RfZWFfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSlcXG5mcy9leHQ0L3hhdHRyLmMtNDczLXtcXG4tLVxcbmZzL2V4dDQveGF0dHIuaD0xOTQ9ZXh0ZXJuIGludCBleHQ0X2V4cGFuZF9leHRyYV9pc2l6ZV9lYShzdHJ1Y3QgaW5vZGUgKmlub2RlLCBpbnQgbmV3X2V4dHJhX2lzaXplLFxcbmZzL2V4dDQveGF0dHIuaC0xOTUtXFx0XFx0XFx0ICAgIHN0cnVjdCBleHQ0X2lub2RlICpyYXdfaW5vZGUsIGhhbmRsZV90ICpoYW5kbGUpO1xcbmZzL2V4dDQveGF0dHIuaDoxOTY6ZXh0ZXJuIHZvaWQgZXh0NF9ldmljdF9lYV9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlKTtcXG5mcy9leHQ0L3hhdHRyLmgtMTk3LVxcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDowMi4yNDI0NTAxODhaIiwiU2VxIjo1LCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo0MTY1MTg3NDkyLCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkZ1enppbmcgdGhlIEV4dGVuZGVkIEF0dHJpYnV0ZSBJbm9kZSBFdmljdGlvbiBQcm9jZXNzIGluIGV4dDQqKlxuXG5Pa2F5LCBzbyBJJ3ZlIGlkZW50aWZpZWQgYSB0YXJnZXRlZCBhcmVhIGZvciBmdXp6aW5nIHdpdGhpbiB0aGUgZXh0NCBmaWxlc3lzdGVtLiBUaGUgYGV4dDRfZXZpY3RfZWFfaW5vZGVgIGZ1bmN0aW9uIGlzIHNwZWNpZmljYWxseSBjYWxsZWQgd2hlbiBhbiBpbm9kZSBoYXMgZXh0ZW5kZWQgYXR0cmlidXRlcyBlbmFibGVkLCBpbmRpY2F0ZWQgYnkgdGhlIGBFWFQ0X0VBX0lOT0RFX0ZMYCBmbGFnLiBUaGlzIGNhbGwgaXMgaW5pdGlhdGVkIGZyb20gYGV4dDRfZXZpY3RfaW5vZGVgLCB3aGljaCBtZWFucyB0aGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2Ugd29ydGggYSBjbG9zZXIgbG9vaywgZXNwZWNpYWxseSB3aXRoIGV4dGVuZGVkIGF0dHJpYnV0ZXMsIHdoaWNoIGhhdmUgaGlzdG9yaWNhbGx5IGJlZW4gYSBzb3VyY2Ugb2YgaW50ZXJlc3RpbmcgYnVncy4gVGhpcyBpcyBhIGdvb2Qgb3Bwb3J0dW5pdHkgZm9yIHNvbWUgdGFyZ2V0ZWQgZnV6emluZy5cblxuTXkgcHJpbWFyeSBmb2N1cyB3aWxsIGJlIG9uIGBleHQ0X2V2aWN0X2VhX2lub2RlYCBhbmQgYGV4dDRfZXZpY3RfaW5vZGVgLCB0aGUga2V5IGZ1bmN0aW9ucyBpbnZvbHZlZCBpbiB0aGlzIGV2aWN0aW9uIHByb2Nlc3MuIEkgbmVlZCB0byBtYWtlIHN1cmUgdGhlIHRhcmdldCBoYXMgdGhlIHJpZ2h0IGNvbmZpZ3VyYXRpb25zIGVuYWJsZWQgdG8gcmVhY2ggdGhlIHRhcmdldCwgdGhvdWdoLlxuXG5JIG5lZWQgdG8gbWFrZSBzdXJlIGBFWFQ0X0ZTYCwgYEVYVDRfRlNfUE9TSVhfQUNMYCwgYW5kIGBFWFQ0X0ZTX1NFQ1VSSVRZYCBhcmUgZW5hYmxlZCB0byBlbnN1cmUgSSBjYW4gYWN0dWFsbHkgcmVhY2ggdGhpcyBjb2RlLiBJIHNob3VsZCBhbHNvIGRpZyBkZWVwZXIgaW50byB0aGUgY29kZSB0byBzZWUgaWYgdGhlcmUgYXJlIGFueSAqc3BlY2lmaWMqIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyB0aGF0IGZ1cnRoZXIgaW5mbHVlbmNlIHRoZSBiZWhhdmlvciBvZiBleHRlbmRlZCBhdHRyaWJ1dGUgaW5vZGVzIG9yIHhhdHRyIGhhbmRsaW5nLiBUaGlzIHdpbGwgaGVscCBtZSBuYXJyb3cgdGhlIGZ1enplcidzIHNjb3BlIGFuZCBtYXhpbWl6ZSBpdHMgZWZmaWNpZW5jeS5cblxuXG4iLCJJbnB1dFRva2VucyI6Mjg1MiwiT3V0cHV0VG9rZW5zIjoyMCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjE0MiwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDowNi40MDc2Mzk1N1oiLCJTZXEiOjYsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoxOTUwMzc2OTU5LCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcIkNPTkZJR19FWFQ0X0ZTXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcIlxcbkZ1bGwgb3V0cHV0IGlzIHRvbyBsb25nLCBzaG93aW5nIDUwMCBvdXQgb2YgMTE3NyBsaW5lcy5cXG5Vc2UgbW9yZSBwcmVjaXNlIGV4cHJlc3Npb24gaWYgcG9zc2libGUuXFxuXFxuYXJjaC9hcmMvY29uZmlncy9heHMxMDFfZGVmY29uZmlnPTg5PUNPTkZJR19NTUNfRFc9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAxX2RlZmNvbmZpZy05MC0jIENPTkZJR19JT01NVV9TVVBQT1JUIGlzIG5vdCBzZXRcXG5hcmNoL2FyYy9jb25maWdzL2F4czEwMV9kZWZjb25maWc6OTE6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAxX2RlZmNvbmZpZy05Mi1DT05GSUdfTVNET1NfRlM9eVxcbi0tXFxuYXJjaC9hcmMvY29uZmlncy9heHMxMDNfZGVmY29uZmlnPTg3PUNPTkZJR19NTUNfRFc9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX2RlZmNvbmZpZy04OC0jIENPTkZJR19JT01NVV9TVVBQT1JUIGlzIG5vdCBzZXRcXG5hcmNoL2FyYy9jb25maWdzL2F4czEwM19kZWZjb25maWc6ODk6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX2RlZmNvbmZpZy05MC1DT05GSUdfTVNET1NfRlM9eVxcbi0tXFxuYXJjaC9hcmMvY29uZmlncy9heHMxMDNfc21wX2RlZmNvbmZpZz04OT1DT05GSUdfTU1DX0RXPXlcXG5hcmNoL2FyYy9jb25maWdzL2F4czEwM19zbXBfZGVmY29uZmlnLTkwLSMgQ09ORklHX0lPTU1VX1NVUFBPUlQgaXMgbm90IHNldFxcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX3NtcF9kZWZjb25maWc6OTE6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvYXhzMTAzX3NtcF9kZWZjb25maWctOTItQ09ORklHX01TRE9TX0ZTPXlcXG4tLVxcbmFyY2gvYXJjL2NvbmZpZ3MvaHNka19kZWZjb25maWc9Nzk9Q09ORklHX1RJX0FEQzEwOFMxMDI9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvaHNka19kZWZjb25maWc6ODA6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvaHNka19kZWZjb25maWctODEtQ09ORklHX1ZGQVRfRlM9eVxcbi0tXFxuYXJjaC9hcmMvY29uZmlncy92ZGtfaHMzOF9kZWZjb25maWc9NzU9Q09ORklHX1VTQl9TRVJJQUw9eVxcbmFyY2gvYXJjL2NvbmZpZ3MvdmRrX2hzMzhfZGVmY29uZmlnLTc2LSMgQ09ORklHX0lPTU1VX1NVUFBPUlQgaXMgbm90IHNldFxcbmFyY2gvYXJjL2NvbmZpZ3MvdmRrX2hzMzhfZGVmY29uZmlnOjc3OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FyYy9jb25maWdzL3Zka19oczM4X2RlZmNvbmZpZzo3ODpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcmMvY29uZmlncy92ZGtfaHMzOF9kZWZjb25maWctNzktQ09ORklHX01TRE9TX0ZTPXlcXG4tLVxcbmFyY2gvYXJjL2NvbmZpZ3MvdmRrX2hzMzhfc21wX2RlZmNvbmZpZz04Mj1DT05GSUdfVUlPX1BEUlZfR0VOSVJRPXlcXG5hcmNoL2FyYy9jb25maWdzL3Zka19oczM4X3NtcF9kZWZjb25maWctODMtIyBDT05GSUdfSU9NTVVfU1VQUE9SVCBpcyBub3Qgc2V0XFxuYXJjaC9hcmMvY29uZmlncy92ZGtfaHMzOF9zbXBfZGVmY29uZmlnOjg0OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FyYy9jb25maWdzL3Zka19oczM4X3NtcF9kZWZjb25maWctODUtQ09ORklHX01TRE9TX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvYXNwZWVkX2c1X2RlZmNvbmZpZz0yNjQ9Q09ORklHX1BFQ0lfQVNQRUVEPXlcXG5hcmNoL2FybS9jb25maWdzL2FzcGVlZF9nNV9kZWZjb25maWc6MjY1OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL2FzcGVlZF9nNV9kZWZjb25maWctMjY2LUNPTkZJR19GQU5PVElGWT15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL2F0OTFfZHRfZGVmY29uZmlnPTIwNz1DT05GSUdfUFdNX0FUTUVMX1RDQj15XFxuYXJjaC9hcm0vY29uZmlncy9hdDkxX2R0X2RlZmNvbmZpZzoyMDg6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvYXQ5MV9kdF9kZWZjb25maWctMjA5LUNPTkZJR19GQU5PVElGWT15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL2F4bTU1eHhfZGVmY29uZmlnPTE5Nj1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9heG01NXh4X2RlZmNvbmZpZzoxOTc6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvYXhtNTV4eF9kZWZjb25maWctMTk4LUNPTkZJR19BVVRPRlNfRlM9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9iY20yODM1X2RlZmNvbmZpZz0xNTY9Q09ORklHX0VYVDJfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL2FybS9jb25maWdzL2JjbTI4MzVfZGVmY29uZmlnOjE1NzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9iY20yODM1X2RlZmNvbmZpZzoxNTg6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL2FybS9jb25maWdzL2JjbTI4MzVfZGVmY29uZmlnLTE1OS1DT05GSUdfRkFOT1RJRlk9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9kYXZpbmNpX2FsbF9kZWZjb25maWc9MjI5PUNPTkZJR19FWFQyX0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL2RhdmluY2lfYWxsX2RlZmNvbmZpZzoyMzA6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvZGF2aW5jaV9hbGxfZGVmY29uZmlnOjIzMTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvZGF2aW5jaV9hbGxfZGVmY29uZmlnLTIzMi1DT05GSUdfWEZTX0ZTPW1cXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvZG92ZV9kZWZjb25maWc9OTc9Q09ORklHX0VYVDJfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvZG92ZV9kZWZjb25maWc6OTg6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvZG92ZV9kZWZjb25maWc6OTk6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XFxuYXJjaC9hcm0vY29uZmlncy9kb3ZlX2RlZmNvbmZpZy0xMDAtQ09ORklHX0lTTzk2NjBfRlM9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9lcDkzeHhfZGVmY29uZmlnPTEwNT1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9lcDkzeHhfZGVmY29uZmlnOjEwNjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9lcDkzeHhfZGVmY29uZmlnOjEwNzojIENPTkZJR19FWFQ0X0ZTX1hBVFRSIGlzIG5vdCBzZXRcXG5hcmNoL2FybS9jb25maWdzL2VwOTN4eF9kZWZjb25maWctMTA4LUNPTkZJR19WRkFUX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvZXh5bm9zX2RlZmNvbmZpZz0zMzI9Q09ORklHX0VYVDJfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvZXh5bm9zX2RlZmNvbmZpZzozMzM6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvZXh5bm9zX2RlZmNvbmZpZy0zMzQtQ09ORklHX0FVVE9GU19GUz15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL2hpc2lfZGVmY29uZmlnPTc3PUNPTkZJR19QSFlfSElYNUhEMl9TQVRBPXlcXG5hcmNoL2FybS9jb25maWdzL2hpc2lfZGVmY29uZmlnOjc4OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL2hpc2lfZGVmY29uZmlnLTc5LUNPTkZJR19UTVBGUz15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL2lteF92NF92NV9kZWZjb25maWc9MTU1PUNPTkZJR19QV01fSU1YMjc9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvaW14X3Y0X3Y1X2RlZmNvbmZpZzoxNTY6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvaW14X3Y0X3Y1X2RlZmNvbmZpZy0xNTctIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL2lteF92Nl92N19kZWZjb25maWc9NDM5PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL2lteF92Nl92N19kZWZjb25maWc6NDQwOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL2lteF92Nl92N19kZWZjb25maWc6NDQxOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9hcm0vY29uZmlncy9pbXhfdjZfdjdfZGVmY29uZmlnOjQ0MjpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XFxuYXJjaC9hcm0vY29uZmlncy9pbXhfdjZfdjdfZGVmY29uZmlnLTQ0My1DT05GSUdfUVVPVEE9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9pbXhydF9kZWZjb25maWc9Mjc9Q09ORklHX0NMS19JTVhSVDEwNTA9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvaW14cnRfZGVmY29uZmlnOjI4OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL2lteHJ0X2RlZmNvbmZpZzoyOTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvaW14cnRfZGVmY29uZmlnOjMwOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL2lteHJ0X2RlZmNvbmZpZy0zMS1DT05GSUdfVkZBVF9GUz15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL2l4cDR4eF9kZWZjb25maWc9MTU1PUNPTkZJR19FWFQyX0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9hcm0vY29uZmlncy9peHA0eHhfZGVmY29uZmlnOjE1NjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9peHA0eHhfZGVmY29uZmlnOjE1NzpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvaXhwNHh4X2RlZmNvbmZpZy0xNTgtQ09ORklHX09WRVJMQVlfRlM9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9rZXlzdG9uZV9kZWZjb25maWc9MjA1PUNPTkZJR19SRVNFVF9USV9TWVNDT049bVxcbmFyY2gvYXJtL2NvbmZpZ3Mva2V5c3RvbmVfZGVmY29uZmlnOjIwNjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9rZXlzdG9uZV9kZWZjb25maWc6MjA3OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9hcm0vY29uZmlncy9rZXlzdG9uZV9kZWZjb25maWctMjA4LUNPTkZJR19GQU5PVElGWT15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL21pbGJlYXV0X20xMHZfZGVmY29uZmlnPTgxPUNPTkZJR19NRU1PUlk9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvbWlsYmVhdXRfbTEwdl9kZWZjb25maWctODItIyBDT05GSUdfQVJNX1BNVSBpcyBub3Qgc2V0XFxuYXJjaC9hcm0vY29uZmlncy9taWxiZWF1dF9tMTB2X2RlZmNvbmZpZzo4MzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9taWxiZWF1dF9tMTB2X2RlZmNvbmZpZy04NC1DT05GSUdfQVVUT0ZTX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvbW1wMl9kZWZjb25maWc9NTU9Q09ORklHX0VYVDJfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvbW1wMl9kZWZjb25maWc6NTY6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvbW1wMl9kZWZjb25maWctNTctIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL21veGFydF9kZWZjb25maWc9MTE0PUNPTkZJR19NT1hBUlRfRE1BPXlcXG5hcmNoL2FybS9jb25maWdzL21veGFydF9kZWZjb25maWctMTE1LSMgQ09ORklHX0lPTU1VX1NVUFBPUlQgaXMgbm90IHNldFxcbmFyY2gvYXJtL2NvbmZpZ3MvbW94YXJ0X2RlZmNvbmZpZzoxMTY6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvbW94YXJ0X2RlZmNvbmZpZy0xMTctQ09ORklHX1RNUEZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvbXVsdGlfdjVfZGVmY29uZmlnPTI2OT1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9tdWx0aV92NV9kZWZjb25maWc6MjcwOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL211bHRpX3Y1X2RlZmNvbmZpZy0yNzEtQ09ORklHX0lTTzk2NjBfRlM9bVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9tdWx0aV92N19kZWZjb25maWc9MTI4Mz1DT05GSUdfU1RNMzJfVElNRVJfQ05UPW1cXG5hcmNoL2FybS9jb25maWdzL211bHRpX3Y3X2RlZmNvbmZpZzoxMjg0OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL211bHRpX3Y3X2RlZmNvbmZpZy0xMjg1LUNPTkZJR19BVVRPRlNfRlM9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9tdjc4eHgwX2RlZmNvbmZpZz05Mz1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9tdjc4eHgwX2RlZmNvbmZpZzo5NDpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9tdjc4eHgwX2RlZmNvbmZpZzo5NTojIENPTkZJR19FWFQ0X0ZTX1hBVFRSIGlzIG5vdCBzZXRcXG5hcmNoL2FybS9jb25maWdzL212Nzh4eDBfZGVmY29uZmlnLTk2LUNPTkZJR19JU085NjYwX0ZTPW1cXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvbXZlYnVfdjVfZGVmY29uZmlnPTE2OT1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9tdmVidV92NV9kZWZjb25maWc6MTcwOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL212ZWJ1X3Y1X2RlZmNvbmZpZy0xNzEtQ09ORklHX0lTTzk2NjBfRlM9bVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9tdmVidV92N19kZWZjb25maWc9MTMwPUNPTkZJR19QSFlfTVZFQlVfQTM4WF9DT01QSFk9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvbXZlYnVfdjdfZGVmY29uZmlnOjEzMTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9tdmVidV92N19kZWZjb25maWctMTMyLUNPTkZJR19JU085NjYwX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvbXhzX2RlZmNvbmZpZz0xMzY9Q09ORklHX05WTUVNX01YU19PQ09UUD15XFxuYXJjaC9hcm0vY29uZmlncy9teHNfZGVmY29uZmlnOjEzNzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9teHNfZGVmY29uZmlnLTEzOC0jIENPTkZJR19ETk9USUZZIGlzIG5vdCBzZXRcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvbmhrODgxNV9kZWZjb25maWc9MTE4PUNPTkZJR19FWFQyX0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL25oazg4MTVfZGVmY29uZmlnOjExOTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9uaGs4ODE1X2RlZmNvbmZpZy0xMjAtQ09ORklHX0ZVU0VfRlM9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9vbWFwMV9kZWZjb25maWc9MTg0PUNPTkZJR19FWFQyX0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL29tYXAxX2RlZmNvbmZpZzoxODU6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb21hcDFfZGVmY29uZmlnLTE4Ni0jIENPTkZJR19ETk9USUZZIGlzIG5vdCBzZXRcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb21hcDJwbHVzX2RlZmNvbmZpZz02ODE9Q09ORklHX0VYVDJfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb21hcDJwbHVzX2RlZmNvbmZpZzo2ODI6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb21hcDJwbHVzX2RlZmNvbmZpZzo2ODM6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb21hcDJwbHVzX2RlZmNvbmZpZy02ODQtQ09ORklHX0ZBTk9USUZZPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb3Jpb241eF9kZWZjb25maWc9MTE3PUNPTkZJR19FWFQyX0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL29yaW9uNXhfZGVmY29uZmlnOjExODpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZzoxMTk6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XFxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZzoxMjA6Q09ORklHX0VYVDRfRlM9bVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb3Jpb241eF9kZWZjb25maWctMTIxLUNPTkZJR19JU085NjYwX0ZTPW1cXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvcHhhX2RlZmNvbmZpZz01NzU9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvcHhhX2RlZmNvbmZpZzo1NzY6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvcHhhX2RlZmNvbmZpZzo1Nzc6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL2FybS9jb25maWdzL3B4YV9kZWZjb25maWc6NTc4OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL3B4YV9kZWZjb25maWctNTc5LUNPTkZJR19YRlNfRlM9bVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9xY29tX2RlZmNvbmZpZz0yNzg9Q09ORklHX0VYVDJfRlNfWEFUVFI9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvcWNvbV9kZWZjb25maWc6Mjc5OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3Fjb21fZGVmY29uZmlnLTI4MC1DT05GSUdfRlVTRV9GUz15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3JwY19kZWZjb25maWc9Nzk9Q09ORklHX0VYVDJfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvcnBjX2RlZmNvbmZpZzo4MDpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9ycGNfZGVmY29uZmlnLTgxLUNPTkZJR19BVVRPRlNfRlM9bVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9zM2M2NDAwX2RlZmNvbmZpZz01ND1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zM2M2NDAwX2RlZmNvbmZpZzo1NTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zM2M2NDAwX2RlZmNvbmZpZzo1NjpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvczNjNjQwMF9kZWZjb25maWc6NTc6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvczNjNjQwMF9kZWZjb25maWctNTgtQ09ORklHX1RNUEZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvczVwdjIxMF9kZWZjb25maWc9MTAzPUNPTkZJR19FWFQyX0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3M1cHYyMTBfZGVmY29uZmlnOjEwNDpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zNXB2MjEwX2RlZmNvbmZpZy0xMDUtQ09ORklHX0FVVE9GU19GUz15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3NhbWE1X2RlZmNvbmZpZz0yMjI9Q09ORklHX1BXTV9BVE1FTF9UQ0I9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc2FtYTVfZGVmY29uZmlnOjIyMzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zYW1hNV9kZWZjb25maWctMjI0LUNPTkZJR19GQU5PVElGWT15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3NhbWE3X2RlZmNvbmZpZz0yMTQ9Q09ORklHX0VYVDJfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc2FtYTdfZGVmY29uZmlnOjIxNTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zYW1hN19kZWZjb25maWctMjE2LUNPTkZJR19GQU5PVElGWT15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3NvY2ZwZ2FfZGVmY29uZmlnPTEzNz1DT05GSUdfRVhUMl9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc29jZnBnYV9kZWZjb25maWc6MTM4OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3NvY2ZwZ2FfZGVmY29uZmlnLTEzOS1DT05GSUdfQVVUT0ZTX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3A3MDIxX2RlZmNvbmZpZz00MD1DT05GSUdfUkVTRVRfQ09OVFJPTExFUj15XFxuYXJjaC9hcm0vY29uZmlncy9zcDcwMjFfZGVmY29uZmlnOjQxOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3NwNzAyMV9kZWZjb25maWctNDItIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3NwZWFyMTN4eF9kZWZjb25maWc9ODU9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXIxM3h4X2RlZmNvbmZpZzo4NjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zcGVhcjEzeHhfZGVmY29uZmlnOjg3OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL3NwZWFyMTN4eF9kZWZjb25maWctODgtQ09ORklHX0FVVE9GU19GUz1tXFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3NwZWFyM3h4X2RlZmNvbmZpZz02OD1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XFxuYXJjaC9hcm0vY29uZmlncy9zcGVhcjN4eF9kZWZjb25maWc6Njk6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXIzeHhfZGVmY29uZmlnOjcwOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL3NwZWFyM3h4X2RlZmNvbmZpZy03MS1DT05GSUdfQVVUT0ZTX0ZTPW1cXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXI2eHhfZGVmY29uZmlnPTU0PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL3NwZWFyNnh4X2RlZmNvbmZpZzo1NTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zcGVhcjZ4eF9kZWZjb25maWc6NTY6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BlYXI2eHhfZGVmY29uZmlnLTU3LUNPTkZJR19BVVRPRlNfRlM9bVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9zcGl0el9kZWZjb25maWc9MTkyPUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL3NwaXR6X2RlZmNvbmZpZzoxOTM6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BpdHpfZGVmY29uZmlnOjE5NDojIENPTkZJR19FWFQ0X0ZTX1hBVFRSIGlzIG5vdCBzZXRcXG5hcmNoL2FybS9jb25maWdzL3NwaXR6X2RlZmNvbmZpZy0xOTUtQ09ORklHX01TRE9TX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3RtMzJfZGVmY29uZmlnPTcxPUNPTkZJR19TVE0zMl9BREM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3RtMzJfZGVmY29uZmlnOjcyOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3N0bTMyX2RlZmNvbmZpZy03My0jIENPTkZJR19GSUxFX0xPQ0tJTkcgaXMgbm90IHNldFxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9zdW54aV9kZWZjb25maWc9MTYyPUNPTkZJR19OVk1FTV9TVU5YSV9TSUQ9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3VueGlfZGVmY29uZmlnOjE2MzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zdW54aV9kZWZjb25maWctMTY0LUNPTkZJR19WRkFUX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvdGVncmFfZGVmY29uZmlnPTMxMj1DT05GSUdfUEhZX1RFR1JBX1hVU0I9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvdGVncmFfZGVmY29uZmlnOjMxMzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy90ZWdyYV9kZWZjb25maWc6MzE0OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9hcm0vY29uZmlncy90ZWdyYV9kZWZjb25maWc6MzE1OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybS9jb25maWdzL3RlZ3JhX2RlZmNvbmZpZy0zMTYtIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3U4NTAwX2RlZmNvbmZpZz0xNzU9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvdTg1MDBfZGVmY29uZmlnOjE3NjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy91ODUwMF9kZWZjb25maWctMTc3LUNPTkZJR19WRkFUX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvdmV4cHJlc3NfZGVmY29uZmlnPTEyMj1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9hcm0vY29uZmlncy92ZXhwcmVzc19kZWZjb25maWc6MTIzOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3ZleHByZXNzX2RlZmNvbmZpZy0xMjQtQ09ORklHX1ZGQVRfRlM9eVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy92ZjYxMG00X2RlZmNvbmZpZz0zNT1DT05GSUdfTUZEX1NZU0NPTj15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL3ZmNjEwbTRfZGVmY29uZmlnLTM3LSMgQ09ORklHX1VTQl9TVVBQT1JUIGlzIG5vdCBzZXRcXG5hcmNoL2FybS9jb25maWdzL3ZmNjEwbTRfZGVmY29uZmlnOjM4OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3ZmNjEwbTRfZGVmY29uZmlnLTM5LSMgQ09ORklHX01JU0NfRklMRVNZU1RFTVMgaXMgbm90IHNldFxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy92dDg1MDBfdjZfdjdfZGVmY29uZmlnPTc5PUNPTkZJR19HRU5FUklDX1BIWT15XFxuYXJjaC9hcm0vY29uZmlncy92dDg1MDBfdjZfdjdfZGVmY29uZmlnOjgwOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL3Z0ODUwMF92Nl92N19kZWZjb25maWctODEtQ09ORklHX1RNUEZTPXlcXG4tLVxcbmFyY2gvYXJtNjQvY29uZmlncy9kZWZjb25maWc9MTg5OD1DT05GSUdfSFRFX1RFR1JBMTk0X1RFU1Q9bVxcbmFyY2gvYXJtNjQvY29uZmlncy9kZWZjb25maWc6MTg5OTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm02NC9jb25maWdzL2RlZmNvbmZpZzoxOTAwOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9hcm02NC9jb25maWdzL2RlZmNvbmZpZzoxOTAxOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2FybTY0L2NvbmZpZ3MvZGVmY29uZmlnLTE5MDItQ09ORklHX0JUUkZTX0ZTPW1cXG4tLVxcbmFyY2gvY3NreS9jb25maWdzL2RlZmNvbmZpZz0zMz1DT05GSUdfR0VORVJJQ19QSFk9eVxcbmFyY2gvY3NreS9jb25maWdzL2RlZmNvbmZpZzozNDpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9jc2t5L2NvbmZpZ3MvZGVmY29uZmlnLTM1LUNPTkZJR19GQU5PVElGWT15XFxuLS1cXG5hcmNoL2hleGFnb24vY29uZmlncy9jb21ldF9kZWZjb25maWc9NDg9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvaGV4YWdvbi9jb25maWdzL2NvbWV0X2RlZmNvbmZpZzo0OTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9oZXhhZ29uL2NvbmZpZ3MvY29tZXRfZGVmY29uZmlnOjUwOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9oZXhhZ29uL2NvbmZpZ3MvY29tZXRfZGVmY29uZmlnOjUxOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2hleGFnb24vY29uZmlncy9jb21ldF9kZWZjb25maWctNTItQ09ORklHX1FVT1RBPXlcXG4tLVxcbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb24zMl9kZWZjb25maWc9OTUwPUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL2xvb25nYXJjaC9jb25maWdzL2xvb25nc29uMzJfZGVmY29uZmlnOjk1MTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9sb29uZ2FyY2gvY29uZmlncy9sb29uZ3NvbjMyX2RlZmNvbmZpZzo5NTI6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL2xvb25nYXJjaC9jb25maWdzL2xvb25nc29uMzJfZGVmY29uZmlnOjk1MzpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XFxuYXJjaC9sb29uZ2FyY2gvY29uZmlncy9sb29uZ3NvbjMyX2RlZmNvbmZpZy05NTQtQ09ORklHX0pGU19GUz1tXFxuLS1cXG5hcmNoL2xvb25nYXJjaC9jb25maWdzL2xvb25nc29uNjRfZGVmY29uZmlnPTk4MT1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XFxuYXJjaC9sb29uZ2FyY2gvY29uZmlncy9sb29uZ3NvbjY0X2RlZmNvbmZpZzo5ODI6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb242NF9kZWZjb25maWc6OTgzOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9sb29uZ2FyY2gvY29uZmlncy9sb29uZ3NvbjY0X2RlZmNvbmZpZzo5ODQ6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbG9vbmdhcmNoL2NvbmZpZ3MvbG9vbmdzb242NF9kZWZjb25maWctOTg1LUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvYW1pZ2FfZGVmY29uZmlnPTQwMz1DT05GSUdfREFYPW1cXG5hcmNoL202OGsvY29uZmlncy9hbWlnYV9kZWZjb25maWc6NDA0OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL202OGsvY29uZmlncy9hbWlnYV9kZWZjb25maWctNDA1LUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvYXBvbGxvX2RlZmNvbmZpZz0zNTg9Q09ORklHX0RBWD1tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvYXBvbGxvX2RlZmNvbmZpZzozNTk6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbTY4ay9jb25maWdzL2Fwb2xsb19kZWZjb25maWctMzYwLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvYXRhcmlfZGVmY29uZmlnPTM4MT1DT05GSUdfREFYPW1cXG5hcmNoL202OGsvY29uZmlncy9hdGFyaV9kZWZjb25maWc6MzgyOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL202OGsvY29uZmlncy9hdGFyaV9kZWZjb25maWctMzgzLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvYnZtZTYwMDBfZGVmY29uZmlnPTM1MD1DT05GSUdfREFYPW1cXG5hcmNoL202OGsvY29uZmlncy9idm1lNjAwMF9kZWZjb25maWc6MzUxOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL202OGsvY29uZmlncy9idm1lNjAwMF9kZWZjb25maWctMzUyLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvaHAzMDBfZGVmY29uZmlnPTM2MD1DT05GSUdfREFYPW1cXG5hcmNoL202OGsvY29uZmlncy9ocDMwMF9kZWZjb25maWc6MzYxOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL202OGsvY29uZmlncy9ocDMwMF9kZWZjb25maWctMzYyLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvbWFjX2RlZmNvbmZpZz0zNzk9Q09ORklHX0RBWD1tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvbWFjX2RlZmNvbmZpZzozODA6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbTY4ay9jb25maWdzL21hY19kZWZjb25maWctMzgxLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvbXVsdGlfZGVmY29uZmlnPTQ2Nj1DT05GSUdfREFYPW1cXG5hcmNoL202OGsvY29uZmlncy9tdWx0aV9kZWZjb25maWc6NDY3OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL202OGsvY29uZmlncy9tdWx0aV9kZWZjb25maWctNDY4LUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvbXZtZTE0N19kZWZjb25maWc9MzUwPUNPTkZJR19EQVg9bVxcbmFyY2gvbTY4ay9jb25maWdzL212bWUxNDdfZGVmY29uZmlnOjM1MTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9tNjhrL2NvbmZpZ3MvbXZtZTE0N19kZWZjb25maWctMzUyLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvbXZtZTE2eF9kZWZjb25maWc9MzUxPUNPTkZJR19EQVg9bVxcbmFyY2gvbTY4ay9jb25maWdzL212bWUxNnhfZGVmY29uZmlnOjM1MjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9tNjhrL2NvbmZpZ3MvbXZtZTE2eF9kZWZjb25maWctMzUzLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvcTQwX2RlZmNvbmZpZz0zNjk9Q09ORklHX0RBWD1tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvcTQwX2RlZmNvbmZpZzozNzA6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbTY4ay9jb25maWdzL3E0MF9kZWZjb25maWctMzcxLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3Mvc3RtYXJrMl9kZWZjb25maWc9ODI9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbTY4ay9jb25maWdzL3N0bWFyazJfZGVmY29uZmlnOjgzOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL202OGsvY29uZmlncy9zdG1hcmsyX2RlZmNvbmZpZzo4NDpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbTY4ay9jb25maWdzL3N0bWFyazJfZGVmY29uZmlnOjg1OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL202OGsvY29uZmlncy9zdG1hcmsyX2RlZmNvbmZpZy04Ni0jIENPTkZJR19GSUxFX0xPQ0tJTkcgaXMgbm90IHNldFxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3Mvc3VuM19kZWZjb25maWc9MzQ4PUNPTkZJR19EQVg9bVxcbmFyY2gvbTY4ay9jb25maWdzL3N1bjNfZGVmY29uZmlnOjM0OTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9tNjhrL2NvbmZpZ3Mvc3VuM19kZWZjb25maWctMzUwLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3Mvc3VuM3hfZGVmY29uZmlnPTM0OD1DT05GSUdfREFYPW1cXG5hcmNoL202OGsvY29uZmlncy9zdW4zeF9kZWZjb25maWc6MzQ5OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL202OGsvY29uZmlncy9zdW4zeF9kZWZjb25maWctMzUwLUNPTkZJR19KRlNfRlM9bVxcbi0tXFxuYXJjaC9tNjhrL2NvbmZpZ3MvdmlydF9kZWZjb25maWc9NTU9Q09ORklHX1ZJUlRJT19JTlBVVD15XFxuYXJjaC9tNjhrL2NvbmZpZ3MvdmlydF9kZWZjb25maWc6NTY6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbTY4ay9jb25maWdzL3ZpcnRfZGVmY29uZmlnLTU3LUNPTkZJR19BVVRPRlNfRlM9eVxcbi0tXFxuYXJjaC9taWNyb2JsYXplL2NvbmZpZ3MvbW11X2RlZmNvbmZpZz03NT1DT05GSUdfVUlPX0RNRU1fR0VOSVJRPXlcXG5hcmNoL21pY3JvYmxhemUvY29uZmlncy9tbXVfZGVmY29uZmlnOjc2OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pY3JvYmxhemUvY29uZmlncy9tbXVfZGVmY29uZmlnLTc3LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvYmlnc3VyX2RlZmNvbmZpZz0xMzY9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2JpZ3N1cl9kZWZjb25maWc6MTM3OkNPTkZJR19FWFQ0X0ZTPW1cXG5hcmNoL21pcHMvY29uZmlncy9iaWdzdXJfZGVmY29uZmlnOjEzODpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2JpZ3N1cl9kZWZjb25maWc6MTM5OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9iaWdzdXJfZGVmY29uZmlnOjE0MDpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvYmlnc3VyX2RlZmNvbmZpZy0xNDEtQ09ORklHX1FVT1RBPXlcXG4tLVxcbmFyY2gvbWlwcy9jb25maWdzL2JtaXBzX2JlX2RlZmNvbmZpZz01Nz1DT05GSUdfVVNCX1NUT1JBR0U9eVxcbmFyY2gvbWlwcy9jb25maWdzL2JtaXBzX2JlX2RlZmNvbmZpZzo1ODpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfYmVfZGVmY29uZmlnOjU5OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfYmVfZGVmY29uZmlnOjYwOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9ibWlwc19iZV9kZWZjb25maWctNjEtIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9ibWlwc19zdGJfZGVmY29uZmlnPTE0MT1DT05GSUdfTU1DX1NESENJX1BMVEZNPXlcXG5hcmNoL21pcHMvY29uZmlncy9ibWlwc19zdGJfZGVmY29uZmlnOjE0MjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfc3RiX2RlZmNvbmZpZzoxNDM6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL21pcHMvY29uZmlncy9ibWlwc19zdGJfZGVmY29uZmlnOjE0NDpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XFxuYXJjaC9taXBzL2NvbmZpZ3MvYm1pcHNfc3RiX2RlZmNvbmZpZy0xNDUtIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9jYXZpdW1fb2N0ZW9uX2RlZmNvbmZpZz0xMzY9Q09ORklHX1JBUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvY2F2aXVtX29jdGVvbl9kZWZjb25maWc6MTM3OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pcHMvY29uZmlncy9jYXZpdW1fb2N0ZW9uX2RlZmNvbmZpZzoxMzg6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL21pcHMvY29uZmlncy9jYXZpdW1fb2N0ZW9uX2RlZmNvbmZpZzoxMzk6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2Nhdml1bV9vY3Rlb25fZGVmY29uZmlnLTE0MC1DT05GSUdfTVNET1NfRlM9eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvY2kyMF9kZWZjb25maWc9MTY2PUNPTkZJR19OVk1FTV9KWjQ3ODBfRUZVU0U9eVxcbmFyY2gvbWlwcy9jb25maWdzL2NpMjBfZGVmY29uZmlnOjE2NzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvY2kyMF9kZWZjb25maWctMTY4LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvY29iYWx0X2RlZmNvbmZpZz02MT1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XFxuYXJjaC9taXBzL2NvbmZpZ3MvY29iYWx0X2RlZmNvbmZpZzo2MjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvY29iYWx0X2RlZmNvbmZpZzo2MzpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2NvYmFsdF9kZWZjb25maWc6NjQ6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2NvYmFsdF9kZWZjb25maWctNjUtQ09ORklHX1BST0NfS0NPUkU9eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvY3UxMDAwLW5lb19kZWZjb25maWc9ODk9Q09ORklHX0paNDc3MF9QSFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2N1MTAwMC1uZW9fZGVmY29uZmlnOjkwOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pcHMvY29uZmlncy9jdTEwMDAtbmVvX2RlZmNvbmZpZy05MS0jIENPTkZJR19ETk9USUZZIGlzIG5vdCBzZXRcXG4tLVxcbmFyY2gvbWlwcy9jb25maWdzL2N1MTgzMC1uZW9fZGVmY29uZmlnPTkyPUNPTkZJR19KWjQ3NzBfUEhZPXlcXG5hcmNoL21pcHMvY29uZmlncy9jdTE4MzAtbmVvX2RlZmNvbmZpZzo5MzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvY3UxODMwLW5lb19kZWZjb25maWctOTQtIyBDT05GSUdfRE5PVElGWSBpcyBub3Qgc2V0XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9kYjF4eHhfZGVmY29uZmlnPTE2OT1DT05GSUdfUlRDX0RSVl9BVTFYWFg9eVxcbmFyY2gvbWlwcy9jb25maWdzL2RiMXh4eF9kZWZjb25maWc6MTcwOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pcHMvY29uZmlncy9kYjF4eHhfZGVmY29uZmlnOjE3MTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2RiMXh4eF9kZWZjb25maWc6MTcyOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9kYjF4eHhfZGVmY29uZmlnLTE3My1DT05GSUdfWEZTX0ZTPXlcXG4tLVxcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fNjRfZGVmY29uZmlnPTEzNT1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl82NF9kZWZjb25maWc6MTM2OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uXzY0X2RlZmNvbmZpZzoxMzc6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uXzY0X2RlZmNvbmZpZzoxMzg6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fNjRfZGVmY29uZmlnLTEzOS1DT05GSUdfSVNPOTY2MF9GUz15XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uX2RlZmNvbmZpZz0xMzE9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fZGVmY29uZmlnOjEzMjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9kZWZjb25maWc6MTMzOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9kZWZjb25maWc6MTM0OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9kZWNzdGF0aW9uX2RlZmNvbmZpZy0xMzUtQ09ORklHX0lTTzk2NjBfRlM9eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9yNGtfZGVmY29uZmlnPTEzMT1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9yNGtfZGVmY29uZmlnOjEzMjpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZGVjc3RhdGlvbl9yNGtfZGVmY29uZmlnOjEzMzpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fcjRrX2RlZmNvbmZpZzoxMzQ6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2RlY3N0YXRpb25fcjRrX2RlZmNvbmZpZy0xMzUtQ09ORklHX0lTTzk2NjBfRlM9eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTVfZGVmY29uZmlnPTg5PUNPTkZJR19SRVNFVF9DT05UUk9MTEVSPXlcXG5hcmNoL21pcHMvY29uZmlncy9leWVxNV9kZWZjb25maWctOTAtIyBDT05GSUdfTlZNRU0gaXMgbm90IHNldFxcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE1X2RlZmNvbmZpZzo5MTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTVfZGVmY29uZmlnOjkyOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTVfZGVmY29uZmlnOjkzOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9leWVxNV9kZWZjb25maWctOTQtQ09ORklHX0ZTX0VOQ1JZUFRJT049eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZfZGVmY29uZmlnPTg4PUNPTkZJR19SRVNFVF9DT05UUk9MTEVSPXlcXG5hcmNoL21pcHMvY29uZmlncy9leWVxNl9kZWZjb25maWctODktIyBDT05GSUdfTlZNRU0gaXMgbm90IHNldFxcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE2X2RlZmNvbmZpZzo5MDpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZfZGVmY29uZmlnOjkxOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZfZGVmY29uZmlnOjkyOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9leWVxNl9kZWZjb25maWctOTMtQ09ORklHX0ZTX0VOQ1JZUFRJT049eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZscGx1c19kZWZjb25maWc9OTY9Q09ORklHX1JFU0VUX0NPTlRST0xMRVI9eVxcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE2bHBsdXNfZGVmY29uZmlnLTk3LSMgQ09ORklHX05WTUVNIGlzIG5vdCBzZXRcXG5hcmNoL21pcHMvY29uZmlncy9leWVxNmxwbHVzX2RlZmNvbmZpZzo5ODpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZXllcTZscGx1c19kZWZjb25maWc6OTk6Q09ORklHX0VYVDRfRlNfUE9TSVhfQUNMPXlcXG5hcmNoL21pcHMvY29uZmlncy9leWVxNmxwbHVzX2RlZmNvbmZpZzoxMDA6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2V5ZXE2bHBsdXNfZGVmY29uZmlnLTEwMS1DT05GSUdfRlNfRU5DUllQVElPTj15XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9mdWxvb25nMmVfZGVmY29uZmlnPTE3ND1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZnVsb29uZzJlX2RlZmNvbmZpZzoxNzU6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbWlwcy9jb25maWdzL2Z1bG9vbmcyZV9kZWZjb25maWc6MTc2OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvZnVsb29uZzJlX2RlZmNvbmZpZzoxNzc6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2Z1bG9vbmcyZV9kZWZjb25maWctMTc4LUNPTkZJR19BVVRPRlNfRlM9eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvZ2N3MF9kZWZjb25maWc9MTM0PUNPTkZJR19QV01fSlo0NzQwPXlcXG5hcmNoL21pcHMvY29uZmlncy9nY3cwX2RlZmNvbmZpZzoxMzU6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbWlwcy9jb25maWdzL2djdzBfZGVmY29uZmlnLTEzNi1DT05GSUdfVkZBVF9GUz15XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9nZW5lcmljX2RlZmNvbmZpZz01NT1DT05GSUdfSElEX01PTlRFUkVZPXlcXG4tLVxcbmFyY2gvbWlwcy9jb25maWdzL2dlbmVyaWNfZGVmY29uZmlnLTU3LSMgQ09ORklHX0lPTU1VX1NVUFBPUlQgaXMgbm90IHNldFxcbmFyY2gvbWlwcy9jb25maWdzL2dlbmVyaWNfZGVmY29uZmlnOjU4OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pcHMvY29uZmlncy9nZW5lcmljX2RlZmNvbmZpZzo1OTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2dlbmVyaWNfZGVmY29uZmlnOjYwOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9nZW5lcmljX2RlZmNvbmZpZy02MS1DT05GSUdfRlNfRU5DUllQVElPTj15XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9pcDIyX2RlZmNvbmZpZz0yMzM9Q09ORklHX0VYVDJfRlM9bVxcbmFyY2gvbWlwcy9jb25maWdzL2lwMjJfZGVmY29uZmlnOjIzNDpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyMl9kZWZjb25maWc6MjM1OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyMl9kZWZjb25maWc6MjM2OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9pcDIyX2RlZmNvbmZpZy0yMzctQ09ORklHX1hGU19GUz1tXFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9pcDI3X2RlZmNvbmZpZz0yNzI9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2lwMjdfZGVmY29uZmlnOjI3MzpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyN19kZWZjb25maWc6Mjc0OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyN19kZWZjb25maWc6Mjc1OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9pcDI3X2RlZmNvbmZpZy0yNzYtQ09ORklHX1hGU19GUz1tXFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9pcDI4X2RlZmNvbmZpZz01MT1DT05GSUdfRVhUMl9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyOF9kZWZjb25maWc6NTI6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbWlwcy9jb25maWdzL2lwMjhfZGVmY29uZmlnOjUzOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAyOF9kZWZjb25maWc6NTQ6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2lwMjhfZGVmY29uZmlnLTU1LUNPTkZJR19RVU9UQT15XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9pcDMwX2RlZmNvbmZpZz0xNDQ9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2lwMzBfZGVmY29uZmlnOjE0NTpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAzMF9kZWZjb25maWc6MTQ2OkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAzMF9kZWZjb25maWc6MTQ3OkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9pcDMwX2RlZmNvbmZpZy0xNDgtQ09ORklHX1hGU19GUz1tXFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9pcDMyX2RlZmNvbmZpZz05MD1DT05GSUdfRVhUMl9GU19TRUNVUklUWT15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAzMl9kZWZjb25maWc6OTE6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbWlwcy9jb25maWdzL2lwMzJfZGVmY29uZmlnOjkyOkNPTkZJR19FWFQ0X0ZTX1BPU0lYX0FDTD15XFxuYXJjaC9taXBzL2NvbmZpZ3MvaXAzMl9kZWZjb25maWc6OTM6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2lwMzJfZGVmY29uZmlnLTk0LUNPTkZJR19RVU9UQT15XFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9qYXp6X2RlZmNvbmZpZz03MD1DT05GSUdfRVhUMl9GUz1tXFxuYXJjaC9taXBzL2NvbmZpZ3MvamF6el9kZWZjb25maWc6NzE6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbWlwcy9jb25maWdzL2phenpfZGVmY29uZmlnLTcyLUNPTkZJR19YRlNfRlM9bVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvbGVtb3RlMmZfZGVmY29uZmlnPTIyNz1DT05GSUdfRVhUMl9GUz1tXFxuYXJjaC9taXBzL2NvbmZpZ3MvbGVtb3RlMmZfZGVmY29uZmlnOjIyODpDT05GSUdfRVhUNF9GUz15XFxuYXJjaC9taXBzL2NvbmZpZ3MvbGVtb3RlMmZfZGVmY29uZmlnOjIyOTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2xlbW90ZTJmX2RlZmNvbmZpZzoyMzA6Q09ORklHX0VYVDRfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2xlbW90ZTJmX2RlZmNvbmZpZy0yMzEtQ09ORklHX0pGU19GUz1tXFxuLS1cXG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjFfZGVmY29uZmlnPTE0OD1DT05GSUdfTE9PTkdTT04xX0FQQl9ETUE9eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24xX2RlZmNvbmZpZy0xNTMtIyBDT05GSUdfTlZNRU0gaXMgbm90IHNldFxcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uMV9kZWZjb25maWc6MTU0OkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjFfZGVmY29uZmlnOjE1NTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uMV9kZWZjb25maWctMTU2LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24ya19kZWZjb25maWc9Mjk4PUNPTkZJR19FWFQyX0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjJrX2RlZmNvbmZpZzoyOTk6Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uMmtfZGVmY29uZmlnOjMwMDpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uMmtfZGVmY29uZmlnOjMwMTpDT05GSUdfRVhUNF9GU19TRUNVUklUWT15XFxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24ya19kZWZjb25maWctMzAyLUNPTkZJR19YRlNfRlM9eVxcbi0tXFxuYXJjaC9taXBzL2NvbmZpZ3MvbG9vbmdzb24zX2RlZmNvbmZpZz0zNDk9Q09ORklHX0VYVDJfRlNfU0VDVVJJVFk9eVxcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uM19kZWZjb25maWc6MzUwOkNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjNfZGVmY29uZmlnOjM1MTpDT05GSUdfRVhUNF9GU19QT1NJWF9BQ0w9eVxcbmFyY2gvbWlwcy9jb25maWdzL2xvb25nc29uM19kZWZjb25maWc6MzUyOkNPTkZJR19FWFQ0X0ZTX1NFQ1VSSVRZPXlcXG5hcmNoL21pcHMvY29uZmlncy9sb29uZ3NvbjNfZGVmY29uZmlnLTM1My1DT05GSUdfWEZTX0ZTPXlcXG5cXG5cIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDYtMjlUMDU6NTQ6MDguMzU4MDIxNTM5WiIsIlNlcSI6NywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MzAzMzQzMTQ1MywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipFeGFtaW5pbmcgdGhlIEVYVDQgQ29uZmlndXJhdGlvbioqXG5cbk9rYXksIHNvIHRoZSBiYXNlIGNvbmZpZ3VyYXRpb24gSSdtIHdvcmtpbmcgd2l0aCBpcyBgQ09ORklHX0VYVDRfRlNgLiBOb3csIEkgbmVlZCB0byBmaWd1cmUgb3V0IGlmIHRoZXJlJ3MgYSBkZWRpY2F0ZWQgY29uZmlndXJhdGlvbiBvcHRpb24gc3BlY2lmaWNhbGx5IGZvciBFeHRlbmRlZCBBdHRyaWJ1dGUgKEVBKSBpbm9kZXMgd2l0aGluIHRoZSBFWFQ0IGZpbGVzeXN0ZW0uIE15IGltbWVkaWF0ZSB0aG91Z2h0IGlzIHRvIGRlbHZlIGludG8gdGhlIHJlbGV2YW50IEtjb25maWcgYW5kIE1ha2VmaWxlIGZpbGVzLiBUaGUgbG9naWNhbCBwbGFjZXMgdG8gc3RhcnQgbG9va2luZyB3b3VsZCBiZSBgZnMvZXh0NC9LY29uZmlnYCBhbmQgYGZzL2V4dDQvTWFrZWZpbGVgLiBUaGF0J3Mgd2hlcmUgSSdkIGV4cGVjdCB0byBmaW5kIHRoZSBkZXBlbmRlbmNpZXMgYW5kIGJ1aWxkIGluc3RydWN0aW9ucyBmb3IgRVhUNCwgYW5kIHRoZXJlZm9yZSwgY29uZmlndXJhdGlvbiBvcHRpb25zIGxpa2UgdGhlIG9uZSBJJ20gc2Vla2luZy4gVGltZSB0byBvcGVuIHRob3NlIHVwIGFuZCBzZWUgd2hhdCB0aGV5IHJldmVhbC5cblxuXG4iLCJJbnB1dFRva2VucyI6MTQ3MjcsIk91dHB1dFRva2VucyI6MjMsIk91dHB1dFRob3VnaHRzVG9rZW5zIjo0NCwiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDoxMS4zOTE0NTQ3OTJaIiwiU2VxIjo4LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MTcwOTM2ODk3MywiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJFWFQ0X0VBX0lOT0RFX0ZMXCJcbn0iLCJSZXN1bHRzIjoie1xuICBcIk91dHB1dFwiOiBcIkRvY3VtZW50YXRpb24vZmlsZXN5c3RlbXMvZXh0NC9pbm9kZXMucnN0PTIyOD1UaGUgYGBpX2ZsYWdzYGAgZmllbGQgaXMgYSBjb21iaW5hdGlvbiBvZiB0aGVzZSB2YWx1ZXM6XFxuLS1cXG5Eb2N1bWVudGF0aW9uL2ZpbGVzeXN0ZW1zL2V4dDQvaW5vZGVzLnJzdC0yODMtICAgICAtIElub2RlIHN0b3JlcyBhIGxhcmdlIGV4dGVuZGVkIGF0dHJpYnV0ZSB2YWx1ZSBpbiBpdHMgZGF0YSBibG9ja3NcXG5Eb2N1bWVudGF0aW9uL2ZpbGVzeXN0ZW1zL2V4dDQvaW5vZGVzLnJzdDoyODQ6ICAgICAgIChFWFQ0X0VBX0lOT0RFX0ZMKS5cXG5Eb2N1bWVudGF0aW9uL2ZpbGVzeXN0ZW1zL2V4dDQvaW5vZGVzLnJzdC0yODUtICAgKiAtIDB4NDAwMDAwXFxuLS1cXG5mcy9leHQ0L2V4dDQuaD00NDA9c3RydWN0IGZsZXhfZ3JvdXBzIHtcXG4tLVxcbmZzL2V4dDQvZXh0NC5oLTUwNC0jZGVmaW5lIEVYVDRfVkVSSVRZX0ZMXFx0XFx0XFx0MHgwMDEwMDAwMCAvKiBWZXJpdHkgcHJvdGVjdGVkIGlub2RlICovXFxuZnMvZXh0NC9leHQ0Lmg6NTA1OiNkZWZpbmUgRVhUNF9FQV9JTk9ERV9GTFxcdCAgICAgICAgMHgwMDIwMDAwMCAvKiBJbm9kZSB1c2VkIGZvciBsYXJnZSBFQSAqL1xcbmZzL2V4dDQvZXh0NC5oLTUwNi0vKiAweDAwNDAwMDAwIHdhcyBmb3JtZXJseSBFWFQ0X0VPRkJMT0NLU19GTCAqL1xcbi0tXFxuZnMvZXh0NC9leHQ0Lmg9MjY5MT1zdGF0aWMgaW5saW5lIGJvb2wgZXh0NF9pc19xdW90YV9maWxlKHN0cnVjdCBpbm9kZSAqaW5vZGUpXFxuLS1cXG5mcy9leHQ0L2V4dDQuaC0yNjkzLVxcdHJldHVybiBJU19OT1FVT1RBKGlub2RlKSBcXHUwMDI2XFx1MDAyNlxcbmZzL2V4dDQvZXh0NC5oOjI2OTQ6XFx0ICAgICAgICEoRVhUNF9JKGlub2RlKS1cXHUwMDNlaV9mbGFncyBcXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpO1xcbmZzL2V4dDQvZXh0NC5oLTI2OTUtfVxcbi0tXFxuZnMvZXh0NC9pYWxsb2MuYz05MzM9c3RydWN0IGlub2RlICpfX2V4dDRfbmV3X2lub2RlKHN0cnVjdCBtbnRfaWRtYXAgKmlkbWFwLFxcbi0tXFxuZnMvZXh0NC9pYWxsb2MuYy05OTUtXFxuZnMvZXh0NC9pYWxsb2MuYzo5OTY6XFx0aWYgKCEoaV9mbGFncyBcXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpKSB7XFxuZnMvZXh0NC9pYWxsb2MuYy05OTctXFx0XFx0ZXJyID0gZnNjcnlwdF9wcmVwYXJlX25ld19pbm9kZShkaXIsIGlub2RlLCBcXHUwMDI2ZW5jcnlwdCk7XFxuLS1cXG5mcy9leHQ0L2lhbGxvYy5jLTEwMDUtXFxuZnMvZXh0NC9pYWxsb2MuYzoxMDA2OlxcdGlmICghaGFuZGxlIFxcdTAwMjZcXHUwMDI2IHNiaS1cXHUwMDNlc19qb3VybmFsIFxcdTAwMjZcXHUwMDI2ICEoaV9mbGFncyBcXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpKSB7XFxuZnMvZXh0NC9pYWxsb2MuYy0xMDA3LVxcdFxcdHJldDIgPSBleHQ0X3hhdHRyX2NyZWRpdHNfZm9yX25ld19pbm9kZShkaXIsIG1vZGUsIGVuY3J5cHQpO1xcbi0tXFxuZnMvZXh0NC9pYWxsb2MuYy0xMzA4LVxcdGlmIChleHQ0X2hhc19mZWF0dXJlX2lubGluZV9kYXRhKHNiKSBcXHUwMDI2XFx1MDAyNlxcbmZzL2V4dDQvaWFsbG9jLmM6MTMwOTpcXHQgICAgKCEoZWktXFx1MDAzZWlfZmxhZ3MgXFx1MDAyNiAoRVhUNF9EQVhfRkx8RVhUNF9FQV9JTk9ERV9GTCkpIHx8IFNfSVNESVIobW9kZSkpKVxcbmZzL2V4dDQvaWFsbG9jLmMtMTMxMC1cXHRcXHRleHQ0X3NldF9pbm9kZV9zdGF0ZShpbm9kZSwgRVhUNF9TVEFURV9NQVlfSU5MSU5FX0RBVEEpO1xcbi0tXFxuZnMvZXh0NC9pYWxsb2MuYy0xMzI2LVxcbmZzL2V4dDQvaWFsbG9jLmM6MTMyNzpcXHRpZiAoIShlaS1cXHUwMDNlaV9mbGFncyBcXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpKSB7XFxuZnMvZXh0NC9pYWxsb2MuYy0xMzI4LVxcdFxcdGVyciA9IGV4dDRfaW5pdF9hY2woaGFuZGxlLCBpbm9kZSwgZGlyKTtcXG4tLVxcbmZzL2V4dDQvaW5vZGUuYz0xNjk9dm9pZCBleHQ0X2V2aWN0X2lub2RlKHN0cnVjdCBpbm9kZSAqaW5vZGUpXFxuLS1cXG5mcy9leHQ0L2lub2RlLmMtMTg1LVxcbmZzL2V4dDQvaW5vZGUuYzoxODY6XFx0aWYgKEVYVDRfSShpbm9kZSktXFx1MDAzZWlfZmxhZ3MgXFx1MDAyNiBFWFQ0X0VBX0lOT0RFX0ZMKVxcbmZzL2V4dDQvaW5vZGUuYy0xODctXFx0XFx0ZXh0NF9ldmljdF9lYV9pbm9kZShpbm9kZSk7XFxuLS1cXG5mcy9leHQ0L2lub2RlLmM9NDcwMT1zdGF0aWMgaW5saW5lIHU2NCBleHQ0X2lub2RlX3BlZWtfaXZlcnNpb24oY29uc3Qgc3RydWN0IGlub2RlICppbm9kZSlcXG5mcy9leHQ0L2lub2RlLmMtNDcwMi17XFxuZnMvZXh0NC9pbm9kZS5jOjQ3MDM6XFx0aWYgKHVubGlrZWx5KEVYVDRfSShpbm9kZSktXFx1MDAzZWlfZmxhZ3MgXFx1MDAyNiBFWFQ0X0VBX0lOT0RFX0ZMKSlcXG5mcy9leHQ0L2lub2RlLmMtNDcwNC1cXHRcXHRyZXR1cm4gaW5vZGVfcGVla19pdmVyc2lvbl9yYXcoaW5vZGUpO1xcbi0tXFxuZnMvZXh0NC9pbm9kZS5jPTUxOTQ9aW50IGV4dDRfZ2V0X3Byb2ppZChzdHJ1Y3QgaW5vZGUgKmlub2RlLCBrcHJvamlkX3QgKnByb2ppZClcXG4tLVxcbmZzL2V4dDQvaW5vZGUuYy01MjAzLSAqIGV4dDQgaGFzIHNlbGYtbWFuYWdlZCBpX3ZlcnNpb24gZm9yIGVhIGlub2RlcywgaXQgc3RvcmVzIHRoZSBsb3dlciAzMmJpdCBvZlxcbmZzL2V4dDQvaW5vZGUuYzo1MjA0OiAqIHJlZmNvdW50IGluIGlfdmVyc2lvbiwgc28gdXNlIHJhdyB2YWx1ZXMgaWYgaW5vZGUgaGFzIEVYVDRfRUFfSU5PREVfRkwgZmxhZ1xcbmZzL2V4dDQvaW5vZGUuYy01MjA1LSAqIHNldC5cXG4tLVxcbmZzL2V4dDQvaW5vZGUuYz01MjA3PXN0YXRpYyBpbmxpbmUgdm9pZCBleHQ0X2lub2RlX3NldF9pdmVyc2lvbl9xdWVyaWVkKHN0cnVjdCBpbm9kZSAqaW5vZGUsIHU2NCB2YWwpXFxuZnMvZXh0NC9pbm9kZS5jLTUyMDgte1xcbmZzL2V4dDQvaW5vZGUuYzo1MjA5OlxcdGlmICh1bmxpa2VseShFWFQ0X0koaW5vZGUpLVxcdTAwM2VpX2ZsYWdzIFxcdTAwMjYgRVhUNF9FQV9JTk9ERV9GTCkpXFxuZnMvZXh0NC9pbm9kZS5jLTUyMTAtXFx0XFx0aW5vZGVfc2V0X2l2ZXJzaW9uX3Jhdyhpbm9kZSwgdmFsKTtcXG4tLVxcbmZzL2V4dDQvaW5vZGUuYz01MjE1PXN0YXRpYyBpbnQgY2hlY2tfaWdvdF9pbm9kZShzdHJ1Y3QgaW5vZGUgKmlub2RlLCBleHQ0X2lnZXRfZmxhZ3MgZmxhZ3MsXFxuLS1cXG5mcy9leHQ0L2lub2RlLmMtNTIyMC1cXHRpZiAoZmxhZ3MgXFx1MDAyNiBFWFQ0X0lHRVRfRUFfSU5PREUpIHtcXG5mcy9leHQ0L2lub2RlLmM6NTIyMTpcXHRcXHRpZiAoIShFWFQ0X0koaW5vZGUpLVxcdTAwM2VpX2ZsYWdzIFxcdTAwMjYgRVhUNF9FQV9JTk9ERV9GTCkpIHtcXG5mcy9leHQ0L2lub2RlLmMtNTIyMi1cXHRcXHRcXHRlcnJfc3RyID0gXFxcIm1pc3NpbmcgRUFfSU5PREUgZmxhZ1xcXCI7XFxuLS1cXG5mcy9leHQ0L2lub2RlLmMtNTIzMC1cXHR9IGVsc2Uge1xcbmZzL2V4dDQvaW5vZGUuYzo1MjMxOlxcdFxcdGlmICgoRVhUNF9JKGlub2RlKS1cXHUwMDNlaV9mbGFncyBcXHUwMDI2IEVYVDRfRUFfSU5PREVfRkwpKSB7XFxuZnMvZXh0NC9pbm9kZS5jLTUyMzItXFx0XFx0XFx0LypcXG4tLVxcbmZzL2V4dDQveGF0dHIuYz0xNDc2PXN0YXRpYyBzdHJ1Y3QgaW5vZGUgKmV4dDRfeGF0dHJfaW5vZGVfY3JlYXRlKGhhbmRsZV90ICpoYW5kbGUsXFxuLS1cXG5mcy9leHQ0L3hhdHRyLmMtMTQ5NS1cXHRcXHRcXHRcXHQgIFNfSUZSRUcgfCAwNjAwLCBOVUxMLCBpbm9kZS1cXHUwMDNlaV9pbm8gKyAxLCBvd25lcixcXG5mcy9leHQ0L3hhdHRyLmM6MTQ5NjpcXHRcXHRcXHRcXHQgIEVYVDRfRUFfSU5PREVfRkwpO1xcbmZzL2V4dDQveGF0dHIuYy0xNDk3LVxcdGlmICghSVNfRVJSKGVhX2lub2RlKSkge1xcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDoxMy4xMDA4Mjc5MTVaIiwiU2VxIjo5LCJOZXN0aW5nIjoyLCJUeXBlIjoibGxtIiwiTmFtZSI6InBhdGNoLWV2YWx1YXRvciIsIk1vZGVsIjoiZ2VtaW5pLTMuMS1wcm8tcHJldmlldyIsIkR1cmF0aW9uIjo4MDE2MzI1MTk0LCJFcnJvciI6IiIsIkFyZ3MiOiJudWxsIiwiUmVzdWx0cyI6Im51bGwiLCJJbnN0cnVjdGlvbiI6IiIsIlByb21wdCI6IiIsIlJlcGx5IjoiIiwiVGhvdWdodHMiOiIqKkVuYWJsaW5nIExhcmdlIEV4dGVuZGVkIEF0dHJpYnV0ZXMgaW4gZXh0NCoqXG5cbk9rYXksIHNvIHdlIG5lZWQgdG8gZ2V0IHRoaXMgbGFyZ2UgZXh0ZW5kZWQgYXR0cmlidXRlcyBmZWF0dXJlIHdvcmtpbmcuIFRoZSBrZXkgaXMgYEVYVDRfRUFfSU5PREVfRkxgLCB3aGljaCwgYXMgSSB1bmRlcnN0YW5kIGl0LCBpcyBhIHN0YW5kYXJkIHBhcnQgb2YgdGhlIGV4dDQgZmlsZXN5c3RlbS4gVGhhdCdzIGEgZ29vZCBzdGFydC4gVG8gZW5zdXJlIGV2ZXJ5dGhpbmcgaXMgaW4gcGxhY2UsIEkgdGhpbmsgd2Ugc2hvdWxkIGRlZmluaXRlbHkgZW5hYmxlIGBFWFQ0X0ZTYC4gV2Ugc2hvdWxkIGFsc28gcHJvYmFibHkgY29uc2lkZXIgZW5hYmxpbmcgYEVYVDRfRlNfUE9TSVhfQUNMYCBhbmQgYEVYVDRfRlNfU0VDVVJJVFlgIGp1c3QgdG8gY292ZXIgYWxsIGJhc2VzLCBldmVuIHRob3VnaCBgRVhUNF9GU2AgaXMgdGhlIG1vc3QgY3JpdGljYWwuIE5vdywgbGV0IG1lIGp1c3QgZG91YmxlLWNoZWNrIGlmIHRoZXJlIGFyZSBhbnkgKnNwZWNpZmljKiBjb25maWd1cmF0aW9uIG9wdGlvbnMgZGVkaWNhdGVkIHRvIGV4dGVuZGVkIGF0dHJpYnV0ZXMgKHhhdHRyKS4gV2UgbmVlZCB0byBtYWtlIHN1cmUgd2UndmUgY292ZXJlZCBhbGwgdGhlIHJlbGV2YW50IGJhc2VzIGZvciB0aGlzIHNldHVwLlxuXG5cbiIsIklucHV0VG9rZW5zIjoxNjYzMywiT3V0cHV0VG9rZW5zIjoyMywiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjk0LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI5VDA1OjU0OjIxLjExNzE1NjkzOVoiLCJTZXEiOjEwLCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MTY2Mjc2NTY0NywiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJDT05GSUdfRVhUNF9GU19YQVRUUlwiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJhcmNoL2FybS9jb25maWdzL2RvdmVfZGVmY29uZmlnPTk4PUNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL2RvdmVfZGVmY29uZmlnOjk5OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxcbmFyY2gvYXJtL2NvbmZpZ3MvZG92ZV9kZWZjb25maWctMTAwLUNPTkZJR19JU085NjYwX0ZTPXlcXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3MvZXA5M3h4X2RlZmNvbmZpZz0xMDY9Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3MvZXA5M3h4X2RlZmNvbmZpZzoxMDc6IyBDT05GSUdfRVhUNF9GU19YQVRUUiBpcyBub3Qgc2V0XFxuYXJjaC9hcm0vY29uZmlncy9lcDkzeHhfZGVmY29uZmlnLTEwOC1DT05GSUdfVkZBVF9GUz15XFxuLS1cXG5hcmNoL2FybS9jb25maWdzL212Nzh4eDBfZGVmY29uZmlnPTk0PUNPTkZJR19FWFQ0X0ZTPXlcXG5hcmNoL2FybS9jb25maWdzL212Nzh4eDBfZGVmY29uZmlnOjk1OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxcbmFyY2gvYXJtL2NvbmZpZ3MvbXY3OHh4MF9kZWZjb25maWctOTYtQ09ORklHX0lTTzk2NjBfRlM9bVxcbi0tXFxuYXJjaC9hcm0vY29uZmlncy9vcmlvbjV4X2RlZmNvbmZpZz0xMTg9Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvYXJtL2NvbmZpZ3Mvb3Jpb241eF9kZWZjb25maWc6MTE5OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxcbmFyY2gvYXJtL2NvbmZpZ3Mvb3Jpb241eF9kZWZjb25maWctMTIwLUNPTkZJR19FWFQ0X0ZTPW1cXG4tLVxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BpdHpfZGVmY29uZmlnPTE5Mz1DT05GSUdfRVhUNF9GUz15XFxuYXJjaC9hcm0vY29uZmlncy9zcGl0el9kZWZjb25maWc6MTk0OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxcbmFyY2gvYXJtL2NvbmZpZ3Mvc3BpdHpfZGVmY29uZmlnLTE5NS1DT05GSUdfTVNET1NfRlM9eVxcbi0tXFxuYXJjaC9zaC9jb25maWdzL21hZ2ljcGFuZWxyMl9kZWZjb25maWc9Njc9Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvc2gvY29uZmlncy9tYWdpY3BhbmVscjJfZGVmY29uZmlnOjY4OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxcbmFyY2gvc2gvY29uZmlncy9tYWdpY3BhbmVscjJfZGVmY29uZmlnLTY5LSMgQ09ORklHX0ROT1RJRlkgaXMgbm90IHNldFxcbi0tXFxuYXJjaC9zaC9jb25maWdzL3RpdGFuX2RlZmNvbmZpZz0yMTg9Q09ORklHX0VYVDRfRlM9eVxcbmFyY2gvc2gvY29uZmlncy90aXRhbl9kZWZjb25maWc6MjE5OiMgQ09ORklHX0VYVDRfRlNfWEFUVFIgaXMgbm90IHNldFxcbmFyY2gvc2gvY29uZmlncy90aXRhbl9kZWZjb25maWctMjIwLUNPTkZJR19YRlNfRlM9bVxcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDoyMi43Nzk5Mjc0MDdaIiwiU2VxIjoxMSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6MzAzMDU5MTUyMywiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiSGVyZSdzIG15IHRob3VnaHQgcHJvY2Vzcywgc3VtbWFyaXplZCBhcyB5b3UgcmVxdWVzdGVkOlxuXG4qKkludmVzdGlnYXRpbmcgYSBLZXJuZWwgQ29uZmlndXJhdGlvbiBEaXNjcmVwYW5jeSoqXG5cbkhtbSwgaG9sZCBvbiBhIHNlY29uZC4gSSBjb3VsZCBoYXZlIHN3b3JuIGBDT05GSUdfRVhUNF9GU19YQVRUUmAgd2FzIGEgc3RhbmRhcmQgY29uZmlndXJhdGlvbiBvcHRpb24gaW4gbW9yZSByZWNlbnQga2VybmVscy4gVGhhdCdzIG9kZC4gTGV0IG1lIGp1c3QgZG91YmxlLWNoZWNrIHRoYXQuIFRoZSBjYW5vbmljYWwgc291cmNlIGZvciBrZXJuZWwgY29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgZXh0NCBmaWxlc3lzdGVtIHdvdWxkIGJlIGluIGBmcy9leHQ0L0tjb25maWdgLiBJJ2xsIGdvIHRha2UgYSBsb29rIHRoZXJlIHRvIGNvbmZpcm0uIEkgbmVlZCB0byBmaWd1cmUgb3V0IGlmIGl0J3MgYmVlbiBkZXByZWNhdGVkLCByZW5hbWVkLCBvciBwZXJoYXBzIGludGVncmF0ZWQgdW5kZXIgYW5vdGhlciwgbW9yZSBnZW5lcmFsIHNldHRpbmcuIEl0J3MgY3J1Y2lhbCB0byBlbnN1cmUgY29tcGF0aWJpbGl0eSBhbmQgdW5kZXJzdGFuZCBhbnkgcG90ZW50aWFsIGNoYW5nZXMgaW4gdGhlIGZlYXR1cmUgc2V0LlxuXG5cbiIsIklucHV0VG9rZW5zIjoxNzUxNSwiT3V0cHV0VG9rZW5zIjoyMiwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjM0LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI5VDA1OjU0OjI1LjgxMDUyMTQ4WiIsIlNlcSI6MTIsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoxNjc2NTk1ODA2LCJFcnJvciI6Im5vIG1hdGNoZXMiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJjb25maWcgRVhUNF9GU19YQVRUUlwiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJlcnJvclwiOiBcIm5vIG1hdGNoZXNcIlxufSIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6IiIsIklucHV0VG9rZW5zIjowLCJPdXRwdXRUb2tlbnMiOjAsIk91dHB1dFRob3VnaHRzVG9rZW5zIjowLCJUb29sQ2FsbHMiOm51bGx9LHsiU3RhcnRlZCI6IjIwMjYtMDYtMjlUMDU6NTQ6MjcuNDg3MTI1MDI2WiIsIlNlcSI6MTMsIk5lc3RpbmciOjIsIlR5cGUiOiJsbG0iLCJOYW1lIjoicGF0Y2gtZXZhbHVhdG9yIiwiTW9kZWwiOiJnZW1pbmktMy4xLXByby1wcmV2aWV3IiwiRHVyYXRpb24iOjQ2MDgwOTU2NzgsIkVycm9yIjoiIiwiQXJncyI6Im51bGwiLCJSZXN1bHRzIjoibnVsbCIsIkluc3RydWN0aW9uIjoiIiwiUHJvbXB0IjoiIiwiUmVwbHkiOiIiLCJUaG91Z2h0cyI6Ik9rYXksIGhlcmUncyBteSB0YWtlIG9uIHRob3NlIHRob3VnaHRzLCBmcmFtZWQgYXMgYW4gZXhwZXJ0J3MgaW50ZXJuYWwgbW9ub2xvZ3VlOlxuXG4qKkV2b2x2aW5nIEFzc3VtcHRpb25zIGluIEV4dDQqKlxuXG5SaWdodCwgc28gSSdtIHNlZWluZyB0aGlzIGNvZGUgcGF0aCwgYW5kIGl0J3MgaGl0dGluZyBtZTogaXQncyBubyBsb25nZXIgY29udHJvbGxlZCBieSBhIGNvbmZpZ3VyYXRpb24gb3B0aW9uLCBpdCBzZWVtcyB0byBhbHdheXMgYmUgYWN0aXZlIG5vdy4gVGhhdCdzIGludGVyZXN0aW5nLCBhbmQgaXQgc3VnZ2VzdHMgYSBzaWduaWZpY2FudCBzaGlmdCBpbiB0aGUgZGVzaWduIHBoaWxvc29waHkgb2YgdGhlIGV4dDQgZmlsZXN5c3RlbSwgbGlrZWx5IGRyaXZlbiBieSBwZXJmb3JtYW5jZSBpbXByb3ZlbWVudHMgb3Igc2VjdXJpdHkgY29uc2lkZXJhdGlvbnMuIEkgbmVlZCB0byB1bmRlcnN0YW5kIHRoZSBpbXBsaWNhdGlvbnMgb2YgdGhpcyBjaGFuZ2UuXG5cbk15IG5leHQgaW1tZWRpYXRlIHRhc2sgaXMgY2xlYXIuIEkgbmVlZCB0byB0YWtlIGEgY2xvc2VyIGxvb2sgYXQgYGV4dDRfZXZpY3RfZWFfaW5vZGVgIGFuZCBgZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kYC4gSSdtIGdvaW5nIHRvIHdhbnQgdG8gdW5kZXJzdGFuZCB3aGF0J3MgY2hhbmdlZCBpbiB0aGVpciBiZWhhdmlvciwgaG93IHRoZXkncmUgaW50ZXJhY3RpbmcgaW4gdGhpcyBuZXcgJ2Fsd2F5cyBlbmFibGVkJyBzY2VuYXJpby4gQXJlIHRoZXJlIHN1YnRsZSBwZXJmb3JtYW5jZSByZWdyZXNzaW9ucz8gU2VjdXJpdHkgdnVsbmVyYWJpbGl0aWVzIHRoYXQgbWlnaHQgaGF2ZSBiZWVuIGFkZHJlc3NlZCBvciBpbnRyb2R1Y2VkPyBBcmUgdGhlcmUgY2hhbmdlcyBpbiBtZW1vcnkgdXNhZ2UgdG8ga2VlcCBpbiBtaW5kPyBJIHdpbGwgYmUgbG9va2luZyBmb3IgaW50ZXJhY3Rpb25zLCBzaWRlIGVmZmVjdHMsIGFuZCBjaGFuZ2VzIGluIHRoZSBjcml0aWNhbCBwYXRoLlxuXG5cbiIsIklucHV0VG9rZW5zIjoxNzczMiwiT3V0cHV0VG9rZW5zIjoyNSwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjQ2LCJUb29sQ2FsbHMiOlsiZ3JlcHBlciJdfSx7IlN0YXJ0ZWQiOiIyMDI2LTA2LTI5VDA1OjU0OjMyLjA5NTIyMzEyNFoiLCJTZXEiOjE0LCJOZXN0aW5nIjoyLCJUeXBlIjoidG9vbCIsIk5hbWUiOiJncmVwcGVyIiwiTW9kZWwiOiIiLCJEdXJhdGlvbiI6MTY4NzIyOTM4NSwiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkV4cHJlc3Npb25cIjogXCJleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmRcIlxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiT3V0cHV0XCI6IFwiZnMvZXh0NC94YXR0ci5jPTQ3Mj12b2lkIGV4dDRfZXZpY3RfZWFfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSlcXG4tLVxcbmZzL2V4dDQveGF0dHIuYy00NzktXFx0ICogVHJ5IHRvIGRlbGV0ZSB0aGUgY2FjaGUgZW50cnkuICBJZiBpdCdzIGN1cnJlbnRseSBpbiB1c2UgYnlcXG5mcy9leHQ0L3hhdHRyLmM6NDgwOlxcdCAqIGFub3RoZXIgdGhyZWFkIChlLmcuIGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZCksIGp1c3QgbGVhdmVcXG5mcy9leHQ0L3hhdHRyLmMtNDgxLVxcdCAqIGl0IC0tIHRoZSBzdGFsZSBlbnRyeSBpcyBoYXJtbGVzcy4gIFdhaXRpbmcgaGVyZSB3b3VsZCBkZWFkbG9ja1xcbi0tXFxuZnMvZXh0NC94YXR0ci5jPTE1MzA9c3RhdGljIHN0cnVjdCBpbm9kZSAqXFxuZnMvZXh0NC94YXR0ci5jOjE1MzE6ZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kKHN0cnVjdCBpbm9kZSAqaW5vZGUsIGNvbnN0IHZvaWQgKnZhbHVlLFxcbmZzL2V4dDQveGF0dHIuYy0xNTMyLVxcdFxcdFxcdCAgICBzaXplX3QgdmFsdWVfbGVuLCB1MzIgaGFzaClcXG4tLVxcbmZzL2V4dDQveGF0dHIuYz0xNTgyPXN0YXRpYyBzdHJ1Y3QgaW5vZGUgKmV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZShoYW5kbGVfdCAqaGFuZGxlLFxcbi0tXFxuZnMvZXh0NC94YXR0ci5jLTE1OTQtXFx0aGFzaCA9IGV4dDRfeGF0dHJfaW5vZGVfaGFzaChFWFQ0X1NCKGlub2RlLVxcdTAwM2VpX3NiKSwgdmFsdWUsIHZhbHVlX2xlbik7XFxuZnMvZXh0NC94YXR0ci5jOjE1OTU6XFx0ZWFfaW5vZGUgPSBleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQoaW5vZGUsIHZhbHVlLCB2YWx1ZV9sZW4sIGhhc2gpO1xcbmZzL2V4dDQveGF0dHIuYy0xNTk2LVxcdGlmIChlYV9pbm9kZSkge1xcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDozMy43ODI0NTc1MzlaIiwiU2VxIjoxNSwiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NDM3MjAwODE4MiwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipGb2N1c2luZyBvbiB0aGUgRGVhZGxvY2sgRml4KipcblxuT2theSwgc28gdGhpcyBwYXRjaCBhZGRyZXNzZXMgYSBuYXN0eSBkZWFkbG9jay4gSXQgc2VlbXMgdGhlIHByb2JsZW0gbGllcyBiZXR3ZWVuIGBleHQ0X2V2aWN0X2VhX2lub2RlYCBhbmQgYGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZGAuIEdpdmVuIHRoZSBmaXggcmVzaWRlcyB3aXRoaW4gYGV4dDRfZXZpY3RfZWFfaW5vZGVgLCB0aGF0J3Mgb3VyIHByaW1hcnkgYXJlYSBvZiBjb25jZXJuIGZvciBmdXp6aW5nLiBXZSBhbHNvIG5lZWQgdG8ga2VlcCBhbiBleWUgb24gYGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZGAsIGFzIGl0J3MgZGlyZWN0bHkgaW52b2x2ZWQuXG5cbk5vdywgbGV0J3MganVzdCBjb25maXJtIHNvbWV0aGluZyBxdWlja2x5Li4uIHllcCwgYGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZGAgaXMgc3RhdGljLiBUaGF0IG1lYW5zIHdlIHNob3VsZCBiZSBsb29raW5nIGF0IG90aGVyIGZ1bmN0aW9ucyBjYWxsZWQgYnkgaXQuIFNwZWNpZmljYWxseSwgYGV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZWAgb3IgYGV4dDRfeGF0dHJfc2V0X2VudHJ5YCBzZWVtIGxpa2UgdGhlIGxpa2VseSBjYW5kaWRhdGVzIGZvciBjbG9zZXIgaW5zcGVjdGlvbiBhbmQgZnV6emluZy5cblxuXG4iLCJJbnB1dFRva2VucyI6MTg0MTcsIk91dHB1dFRva2VucyI6MjUsIk91dHB1dFRob3VnaHRzVG9rZW5zIjoxMzgsIlRvb2xDYWxscyI6WyJncmVwcGVyIl19LHsiU3RhcnRlZCI6IjIwMjYtMDYtMjlUMDU6NTQ6MzguMTU0NDY3NzgxWiIsIlNlcSI6MTYsIk5lc3RpbmciOjIsIlR5cGUiOiJ0b29sIiwiTmFtZSI6ImdyZXBwZXIiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjoxNzM3NzU2MjMwLCJFcnJvciI6IiIsIkFyZ3MiOiJ7XG4gIFwiRXhwcmVzc2lvblwiOiBcImV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZVwiXG59IiwiUmVzdWx0cyI6IntcbiAgXCJPdXRwdXRcIjogXCJmcy9leHQ0L3hhdHRyLmM9MTUzMT1leHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmQoc3RydWN0IGlub2RlICppbm9kZSwgY29uc3Qgdm9pZCAqdmFsdWUsXFxuLS1cXG5mcy9leHQ0L3hhdHRyLmMtMTU4MS0gKi9cXG5mcy9leHQ0L3hhdHRyLmM6MTU4MjpzdGF0aWMgc3RydWN0IGlub2RlICpleHQ0X3hhdHRyX2lub2RlX2xvb2t1cF9jcmVhdGUoaGFuZGxlX3QgKmhhbmRsZSxcXG5mcy9leHQ0L3hhdHRyLmMtMTU4My1cXHRcXHRzdHJ1Y3QgaW5vZGUgKmlub2RlLCBjb25zdCB2b2lkICp2YWx1ZSwgc2l6ZV90IHZhbHVlX2xlbilcXG4tLVxcbmZzL2V4dDQveGF0dHIuYz0xOTAzPWV4dDRfeGF0dHJfYmxvY2tfc2V0KGhhbmRsZV90ICpoYW5kbGUsIHN0cnVjdCBpbm9kZSAqaW5vZGUsXFxuLS1cXG5mcy9leHQ0L3hhdHRyLmMtMTkyMy1cXG5mcy9leHQ0L3hhdHRyLmM6MTkyNDpcXHRcXHRlYV9pbm9kZSA9IGV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZShoYW5kbGUsIGlub2RlLFxcbmZzL2V4dDQveGF0dHIuYy0xOTI1LVxcdFxcdFxcdFxcdFxcdGktXFx1MDAzZXZhbHVlLCBpLVxcdTAwM2V2YWx1ZV9sZW4pO1xcbi0tXFxuZnMvZXh0NC94YXR0ci5jPTIyNTg9aW50IGV4dDRfeGF0dHJfaWJvZHlfc2V0KGhhbmRsZV90ICpoYW5kbGUsIHN0cnVjdCBpbm9kZSAqaW5vZGUsXFxuLS1cXG5mcy9leHQ0L3hhdHRyLmMtMjI3My1cXG5mcy9leHQ0L3hhdHRyLmM6MjI3NDpcXHRcXHRlYV9pbm9kZSA9IGV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZShoYW5kbGUsIGlub2RlLFxcbmZzL2V4dDQveGF0dHIuYy0yMjc1LVxcdFxcdFxcdFxcdFxcdGktXFx1MDAzZXZhbHVlLCBpLVxcdTAwM2V2YWx1ZV9sZW4pO1xcblwiXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDozOS44OTIyMjk4MTFaIiwiU2VxIjoxNywiTmVzdGluZyI6MiwiVHlwZSI6ImxsbSIsIk5hbWUiOiJwYXRjaC1ldmFsdWF0b3IiLCJNb2RlbCI6ImdlbWluaS0zLjEtcHJvLXByZXZpZXciLCJEdXJhdGlvbiI6NzQyNjA0ODUzMiwiRXJyb3IiOiIiLCJBcmdzIjoibnVsbCIsIlJlc3VsdHMiOiJudWxsIiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiKipNeSBBbmFseXNpcyBvZiB0aGUgRXh0NCBFQSBJbm9kZSBFdmljdGlvbiBQYXRjaCoqXG5cbk9rYXksIHNvIEknbSBsb29raW5nIGF0IHRoaXMgcGF0Y2ggYW5kIGltbWVkaWF0ZWx5LCB0aGUgY29yZSBvZiBpdCBzZWVtcyB0byByZXZvbHZlIGFyb3VuZCBjaGFuZ2VzIHRvIGhvdyBFeHRlbmRlZCBBdHRyaWJ1dGUgKEVBKSBpbm9kZXMgYXJlIGV2aWN0ZWQgd2l0aGluIHRoZSBleHQ0IGZpbGVzeXN0ZW0uIEkgc2VlIHRoYXQgYGV4dDRfeGF0dHJfYmxvY2tfc2V0YCBhbmQgYGV4dDRfeGF0dHJfaWJvZHlfc2V0YCBib3RoIHVsdGltYXRlbHkgY2FsbCBgZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlYC4gTXkgaW50dWl0aW9uIHRlbGxzIG1lIHRoYXQgdGhlIGtleSBhcmVhcyB0byBpbnZlc3RpZ2F0ZSBhcmUgYGV4dDRfZXZpY3RfZWFfaW5vZGVgIGFuZCBgZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlYC5cblxuTGV0IG1lIHF1aWNrbHkgZG91YmxlLWNoZWNrIOKAkyBpcyBgZXh0NF9ldmljdF9lYV9pbm9kZWAgc3RhdGljPyBObywgaXQncyBhY3R1YWxseSBleHBvcnRlZCBpbiBgZnMvZXh0NC94YXR0ci5oYCwgc28gaXQncyBsaWtlbHkgdXNlZCBtb3JlIGJyb2FkbHkgdGhhbiBqdXN0IHdpdGhpbiBhIHNpbmdsZSBmaWxlLiBUaGF0IGRlZmluaXRlbHkgbWFrZXMgaXQgYSBoaWdoZXItdmFsdWUgdGFyZ2V0IGZvciBleGFtaW5hdGlvbi4gVG8gZ2V0IGEgY29tcGxldGUgdmlldywgSSdsbCBhbHNvIGFkZCBgZXh0NF94YXR0cl9pbm9kZV9jYWNoZV9maW5kYCB0byBteSBmb2N1cyBsaXN0OyBpdCdzIHByb2JhYmx5IGNyaXRpY2FsIHRvIHRoZSBsb29rdXAgYW5kIGNhY2hpbmcgbG9naWMuXG5cbkJhc2VkIG9uIHRoaXMsIG15IGZvY3VzIHN5bWJvbHMgZm9yIGZ1enppbmcgd2lsbCBiZTpcblxuKiAgIGBleHQ0X2V2aWN0X2VhX2lub2RlYFxuKiAgIGBleHQ0X3hhdHRyX2lub2RlX2xvb2t1cF9jcmVhdGVgXG4qICAgYGV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZGBcblxuVGhpcyBwYXRjaCBpcyBtb2RpZnlpbmcgdGhlIEVBIGlub2RlIGV2aWN0aW9uIHByb2Nlc3MsIGFwcGFyZW50bHkgdG8gcmVzb2x2ZSBhIGRlYWRsb2NrIHNpdHVhdGlvbiByZWxhdGVkIHRvIHRoZSBtYmNhY2hlLiBUaGlzIG1lYW5zIHdlJ3JlIGRlYWxpbmcgd2l0aCBhIGZ1bmRhbWVudGFsIGNoYW5nZSBpbiBob3cgdGhlIGV4dDQgZmlsZXN5c3RlbSBoYW5kbGVzIEVBIGlub2Rlcywgd2hpY2ggbWFrZXMgaXQgcGFydGljdWxhcmx5IGltcG9ydGFudC4gVGh1cywgSSdsbCBuZWVkIHRvIGZvY3VzIG15IGZ1enppbmcgZWZmb3J0cyBvbiB0aGUgcGF0aHMgaW52b2x2ZWQgaW4gRUEgaW5vZGUgZXZpY3Rpb24sIGFzIHdlbGwgYXMgdGhlIGNhY2hlIGxvb2t1cCBwcm9jZXNzLlxuXG5UbyBjb25maXJtIHRoZSBjb250ZXh0LCBJIG5lZWQgdG8gbWFrZSBzdXJlIHRoZSBjb3JlIGV4dDQgZmlsZXN5c3RlbSBmZWF0dXJlcyBhbmQgcmVsYXRlZCBjb25maWd1cmF0aW9ucyBhcmUgZW5hYmxlZCwgc28gdGhhdCBJIGNhbiBsb29rIGF0IHRoaXMgd2l0aGluIHRoZSBjb21wbGV0ZSBjb250ZXh0LiBUbyB0aGF0IGVuZCwgSSdsbCBuZWVkIHRoZXNlIGNvbmZpZ3VyYXRpb25zIGVuYWJsZWQ6XG5cbiogICBgRVhUNF9GU2BcbiogICBgRVhUNF9GU19QT1NJWF9BQ0xgXG4qICAgYEVYVDRfRlNfU0VDVVJJVFlgXG5cbk5vdywgbGV0J3MgY2FsbCBgc2V0LXJlc3VsdHNgIGFuZCBzZWUgd2hhdCBjb21lcyBvdXQhXG5cblxuIiwiSW5wdXRUb2tlbnMiOjE5MTU0LCJPdXRwdXRUb2tlbnMiOjE1NCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjI3MywiVG9vbENhbGxzIjpbImdyZXBwZXIiXX0seyJTdGFydGVkIjoiMjAyNi0wNi0yOVQwNTo1NDo0Ny4zMTgyODA2NjRaIiwiU2VxIjoxOCwiTmVzdGluZyI6MiwiVHlwZSI6InRvb2wiLCJOYW1lIjoic2V0LXJlc3VsdHMiLCJNb2RlbCI6IiIsIkR1cmF0aW9uIjo3ODI4MzY4MywiRXJyb3IiOiIiLCJBcmdzIjoie1xuICBcIkVuYWJsZUNvbmZpZ3NcIjogW1xuICAgIFwiRVhUNF9GU1wiLFxuICAgIFwiRVhUNF9GU19QT1NJWF9BQ0xcIixcbiAgICBcIkVYVDRfRlNfU0VDVVJJVFlcIlxuICBdLFxuICBcIkZvY3VzU3ltYm9sc1wiOiBbXG4gICAgXCJleHQ0X2V2aWN0X2VhX2lub2RlXCIsXG4gICAgXCJleHQ0X3hhdHRyX2lub2RlX2NhY2hlX2ZpbmRcIixcbiAgICBcImV4dDRfeGF0dHJfaW5vZGVfbG9va3VwX2NyZWF0ZVwiXG4gIF0sXG4gIFwiUmVhc29uaW5nXCI6IFwiVGhlIHBhdGNoIG1vZGlmaWVzIHRoZSBsb2dpYyBmb3IgZXZpY3RpbmcgYW4gRUEgKEV4dGVuZGVkIEF0dHJpYnV0ZSkgaW5vZGUgaW4gZXh0NCB0byBwcmV2ZW50IGEgZGVhZGxvY2sgd2hlbiBpbnRlcmFjdGluZyB3aXRoIHRoZSBtYmNhY2hlLiBUaGlzIGlzIGEgZnVuY3Rpb25hbCBjaGFuZ2UgaW4gdGhlIGNvcmUgZXh0NCBmaWxlc3lzdGVtIGxvZ2ljLiBGdXp6aW5nIHNob3VsZCBmb2N1cyBvbiB0aGUgRUEgaW5vZGUgZXZpY3Rpb24gYW5kIGNhY2hlIGxvb2t1cCBwYXRocy5cIixcbiAgXCJXb3J0aEZ1enppbmdcIjogdHJ1ZVxufSIsIlJlc3VsdHMiOiJ7XG4gIFwiRW5hYmxlQ29uZmlnc1wiOiBbXG4gICAgXCJFWFQ0X0ZTXCIsXG4gICAgXCJFWFQ0X0ZTX1BPU0lYX0FDTFwiLFxuICAgIFwiRVhUNF9GU19TRUNVUklUWVwiXG4gIF0sXG4gIFwiRm9jdXNTeW1ib2xzXCI6IFtcbiAgICBcImV4dDRfZXZpY3RfZWFfaW5vZGVcIixcbiAgICBcImV4dDRfeGF0dHJfaW5vZGVfY2FjaGVfZmluZFwiLFxuICAgIFwiZXh0NF94YXR0cl9pbm9kZV9sb29rdXBfY3JlYXRlXCJcbiAgXSxcbiAgXCJSZWFzb25pbmdcIjogXCJUaGUgcGF0Y2ggbW9kaWZpZXMgdGhlIGxvZ2ljIGZvciBldmljdGluZyBhbiBFQSAoRXh0ZW5kZWQgQXR0cmlidXRlKSBpbm9kZSBpbiBleHQ0IHRvIHByZXZlbnQgYSBkZWFkbG9jayB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIG1iY2FjaGUuIFRoaXMgaXMgYSBmdW5jdGlvbmFsIGNoYW5nZSBpbiB0aGUgY29yZSBleHQ0IGZpbGVzeXN0ZW0gbG9naWMuIEZ1enppbmcgc2hvdWxkIGZvY3VzIG9uIHRoZSBFQSBpbm9kZSBldmljdGlvbiBhbmQgY2FjaGUgbG9va3VwIHBhdGhzLlwiLFxuICBcIldvcnRoRnV6emluZ1wiOiB0cnVlXG59IiwiSW5zdHJ1Y3Rpb24iOiIiLCJQcm9tcHQiOiIiLCJSZXBseSI6IiIsIlRob3VnaHRzIjoiIiwiSW5wdXRUb2tlbnMiOjAsIk91dHB1dFRva2VucyI6MCwiT3V0cHV0VGhvdWdodHNUb2tlbnMiOjAsIlRvb2xDYWxscyI6bnVsbH1dOwoJCQlpZiAoIXJhd0RhdGEgfHwgcmF3RGF0YS5sZW5ndGggPT09IDApIHJldHVybjsKCgkJCWRyYXdTdW1tYXJ5VGFibGVzKHJhd0RhdGEpOwoJCQlkcmF3RHVyYXRpb25DaGFydChyYXdEYXRhKTsKCQkJZHJhd1Rva2VuQ29uc3VtcHRpb25DaGFydChyYXdEYXRhKTsKCQl9CgoJCWZ1bmN0aW9uIGRyYXdTdW1tYXJ5VGFibGVzKHJhd0RhdGEpIHsKCQkJY29uc3Qgc3RhdHMgPSB7CgkJCQlsbG06IHsgY291bnQ6IDAsIHRva2VuczogMCwgZHVyYXRpb246IDAgfSwKCQkJCXRvb2w6IHsgY291bnQ6IDAsIGR1cmF0aW9uOiAwIH0KCQkJfTsKCgkJCXJhd0RhdGEuZm9yRWFjaChzID0+IHsKCQkJCWNvbnN0IGR1ciA9IHMuRHVyYXRpb24gLyAxMDAwMDAwMDAwOyAKCQkJCWlmIChzLlR5cGUgPT09ICJsbG0iKSB7CgkJCQkJc3RhdHMubGxtLmNvdW50Kys7CgkJCQkJc3RhdHMubGxtLnRva2VucyArPSAocy5JbnB1dFRva2VucyArIHMuT3V0cHV0VG9rZW5zICsgcy5PdXRwdXRUaG91Z2h0c1Rva2Vucyk7CgkJCQkJc3RhdHMubGxtLmR1cmF0aW9uICs9IGR1cjsKCQkJCX0gZWxzZSBpZiAocy5UeXBlID09PSAidG9vbCIpIHsKCQkJCQlzdGF0cy50b29sLmNvdW50Kys7CgkJCQkJc3RhdHMudG9vbC5kdXJhdGlvbiArPSBkdXI7CgkJCQl9CgkJCX0pOwoKCQkJY29uc3QgYXZnTGxtRHVyID0gc3RhdHMubGxtLmNvdW50ID4gMCA/IChzdGF0cy5sbG0uZHVyYXRpb24gLyBzdGF0cy5sbG0uY291bnQpLnRvRml4ZWQoMikgOiAwOwoJCQljb25zdCBhdmdMbG1Ub2tlbiA9IHN0YXRzLmxsbS5jb3VudCA+IDAgPyAoc3RhdHMubGxtLnRva2VucyAvIHN0YXRzLmxsbS5jb3VudCkudG9GaXhlZCgyKSA6IDA7CgkJCWNvbnN0IGF2Z1Rvb2xEdXIgPSBzdGF0cy50b29sLmNvdW50ID4gMCA/IChzdGF0cy50b29sLmR1cmF0aW9uIC8gc3RhdHMudG9vbC5jb3VudCkudG9GaXhlZCgyKSA6IDA7CgoJCQljb25zdCBsbG1TdW1hcnlDZWxscyA9IFtzdGF0cy5sbG0uY291bnQsIHN0YXRzLmxsbS50b2tlbnMsIGF2Z0xsbVRva2VuLCBzdGF0cy5sbG0uZHVyYXRpb24sIGF2Z0xsbUR1cl07CgkJCWNvbnN0IHRvb2xTdW1tYXJ5Q2VsbHMgPSBbc3RhdHMudG9vbC5jb3VudCwgc3RhdHMudG9vbC5kdXJhdGlvbiwgYXZnVG9vbER1cl07CgoJCQljb25zdCBsbG1TdW1tYXJ5Qm9keSA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdsbG1fc3VtbWFyeV9zdGF0c19ib2R5Jyk7CgkJCWxsbVN1bW1hcnlCb2R5LmlubmVySFRNTCA9ICIiOwoJCQljb25zdCBsbG1UciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RyJyk7CgkJCWxsbVN1bWFyeUNlbGxzLmZvckVhY2goY2VsbCA9PiB7CgkJCQljb25zdCB0ZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RkJyk7CgkJCQl0ZC50ZXh0Q29udGVudCA9IGNlbGw7CgkJCQlsbG1Uci5hcHBlbmRDaGlsZCh0ZCk7CgkJCX0pOwoJCQlsbG1TdW1tYXJ5Qm9keS5hcHBlbmRDaGlsZChsbG1Ucik7CgoJCQljb25zdCB0b29sU3VtbWFyeUJvZHkgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndG9vbF9zdW1tYXJ5X3N0YXRzX2JvZHknKTsKCQkJdG9vbFN1bW1hcnlCb2R5LmlubmVySFRNTCA9ICIiOwoJCQljb25zdCB0b29sVHIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0cicpOwoJCQl0b29sU3VtbWFyeUNlbGxzLmZvckVhY2goY2VsbCA9PiB7CgkJCQljb25zdCB0ZCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RkJyk7CgkJCQl0ZC50ZXh0Q29udGVudCA9IGNlbGw7CgkJCQl0b29sVHIuYXBwZW5kQ2hpbGQodGQpOwoJCQl9KTsKCQkJdG9vbFN1bW1hcnlCb2R5LmFwcGVuZENoaWxkKHRvb2xUcik7CgkJfQoKCQlmdW5jdGlvbiBkcmF3RHVyYXRpb25DaGFydChyYXdEYXRhKSB7CgkJCWNvbnN0IGZpbHRlcmVkU3RlcHMgPSByYXdEYXRhLmZpbHRlcihkID0+IFsibGxtIiwgInRvb2wiXS5pbmNsdWRlcyhkLlR5cGUpKTsKCQkJY29uc3QgZGF0YSA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5EYXRhVGFibGUoKTsKCQkJZGF0YS5hZGRDb2x1bW4oJ3N0cmluZycsICdTdGVwJyk7CgkJCWRhdGEuYWRkQ29sdW1uKCdudW1iZXInLCAnRHVyYXRpb24nKTsKCQkJZGF0YS5hZGRDb2x1bW4oe3R5cGU6ICdzdHJpbmcnLCByb2xlOiAndG9vbHRpcCd9KTsgCgoJCQlmaWx0ZXJlZFN0ZXBzLmZvckVhY2gocyA9PiB7CgkJCQkKCQkJCWNvbnN0IGR1ciA9IHMuRHVyYXRpb24gLyAxMDAwMDAwMDAwOwoJCQkJbGV0IHRvb2x0aXAgPSBzLk5hbWU7CgkJCQlpZiAocy5UeXBlID09PSAibGxtIiAmJiBzLlRvb2xDYWxscyAmJiBzLlRvb2xDYWxscy5sZW5ndGggPiAwKSB7CgkJCQkJdG9vbHRpcCArPSBgXG5Ub29sczogJHtzLlRvb2xDYWxscy5qb2luKCcsICcpfWA7CgkJCQl9CgkJCQlkYXRhLmFkZFJvdyhbYCR7cy5TZXF9YCwgZHVyLCB0b29sdGlwXSk7CgkJCX0pOwoKCQkJY29uc3Qgb3B0aW9ucyA9IHsKCQkJCXRpdGxlOiAnVGltZSBDb25zdW1wdGlvbiBvZiBMTE0vVG9vbCBDYWxscycsCgkJCQloQXhpczogewoJCQkJCXRpdGxlOiAnTExNL1Rvb2wgU3RlcHMnLAoJCQkJfSwKCQkJCXZBeGlzOiB7IHRpdGxlOiAnU2Vjb25kcycgfSwKCQkJCWxlZ2VuZDogeyBwb3NpdGlvbjogJ25vbmUnIH0sCgkJCQliYXI6IHsgZ3JvdXBXaWR0aDogJzc1JScgfSwKCQkJCWNoYXJ0QXJlYTogeyB3aWR0aDogJzg1JScsIGhlaWdodDogJzcwJScgfSwKCQkJCWhlaWdodDogNDAwCgkJCX07CgoJCQljb25zdCBjaGFydCA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5Db2x1bW5DaGFydChkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnZHVyYXRpb25fY2hhcnRfZGl2JykpOwoJCQljaGFydC5kcmF3KGRhdGEsIG9wdGlvbnMpOwoJCX0KCgkJZnVuY3Rpb24gZHJhd1Rva2VuQ29uc3VtcHRpb25DaGFydChyYXdEYXRhKSB7CgkJCWNvbnN0IGxsbVN0ZXBzID0gcmF3RGF0YS5maWx0ZXIoZCA9PiBkLlR5cGUgPT09ICJsbG0iKTsKCQkJaWYgKGxsbVN0ZXBzLmxlbmd0aCA9PT0gMCkgcmV0dXJuOwoKCQkJY29uc3QgZGF0YSA9IG5ldyBnb29nbGUudmlzdWFsaXphdGlvbi5EYXRhVGFibGUoKTsKCQkJZGF0YS5hZGRDb2x1bW4oJ3N0cmluZycsICdTdGVwJyk7CQkJCgkJCWRhdGEuYWRkQ29sdW1uKCdudW1iZXInLCAnVG9rZW5zJyk7CQkJCgkJCWRhdGEuYWRkQ29sdW1uKHt0eXBlOiAnc3RyaW5nJywgcm9sZTogJ3N0eWxlJ30pOwkKCQkJZGF0YS5hZGRDb2x1bW4oe3R5cGU6ICdzdHJpbmcnLCByb2xlOiAndG9vbHRpcCd9KTsJCgoJCQljb25zdCBhZ2VudENvbG9ycyA9IHt9OwoJCQljb25zdCBwYWxldHRlID0gWycjNDI4NUY0JywgJyNEQjQ0MzcnLCAnI0Y0QjQwMCcsICcjMEY5RDU4JywgJyNBQjQ3QkMnLCAnIzAwQUNDMSddOwoJCQlsZXQgY29sb3JJZHggPSAwOwoJCQljb25zdCBhZ2VudExMTUNvdW50cyA9IHt9OwoJCQlsbG1TdGVwcy5mb3JFYWNoKHMgPT4gewoJCQkJaWYgKCFhZ2VudENvbG9yc1tzLk5hbWVdKSB7CgkJCQkJYWdlbnRDb2xvcnNbcy5OYW1lXSA9IHBhbGV0dGVbY29sb3JJZHggJSBwYWxldHRlLmxlbmd0aF07CgkJCQkJY29sb3JJZHgrKzsKCQkJCX0KCgkJCQlhZ2VudExMTUNvdW50c1tzLk5hbWVdID0gKGFnZW50TExNQ291bnRzW3MuTmFtZV0gfHwgMCkgKyAxOwoJCQkJY29uc3QgbGFiZWwgPSBgJHtzLk5hbWV9LSR7YWdlbnRMTE1Db3VudHNbcy5OYW1lXX1gOwoJCQkJY29uc3QgdG90YWxUb2tlbnMgPSBzLklucHV0VG9rZW5zICsgcy5PdXRwdXRUb2tlbnMgKyBzLk91dHB1dFRob3VnaHRzVG9rZW5zOwoJCQkJY29uc3Qgc3R5bGUgPSBgY29sb3I6ICR7YWdlbnRDb2xvcnNbcy5OYW1lXX1gOwoJCQkJbGV0IHRvb2x0aXAgPSBgVG90YWwgVG9rZW5zOiAke3RvdGFsVG9rZW5zfVxuKEluOiAke3MuSW5wdXRUb2tlbnN9LCBPdXQ6ICR7cy5PdXRwdXRUb2tlbnN9LCBUaG91Z2h0czogJHtzLk91dHB1dFRob3VnaHRzVG9rZW5zfSlgOwoJCQkJaWYgKHMuVG9vbENhbGxzICYmIHMuVG9vbENhbGxzLmxlbmd0aCA+IDApIHsKCQkJCQl0b29sdGlwICs9IGBcblRvb2xzOiAke3MuVG9vbENhbGxzLmpvaW4oJywgJyl9YDsKCQkJCX0KCgkJCQlkYXRhLmFkZFJvdyhbbGFiZWwsIHRvdGFsVG9rZW5zLCBzdHlsZSwgdG9vbHRpcF0pOwoJCQl9KTsKCgkJCWNvbnN0IG9wdGlvbnMgPSB7CgkJCQl0aXRsZTogJ1Rva2VuIENvbnN1bXB0aW9uIGJ5IExMTSBDYWxscycsCgkJCQloQXhpczogewoJCQkJCXRpdGxlOiAnTExNIENhbGwgU2VxdWVuY2UnLAoJCQkJfSwKCQkJCXZBeGlzOiB7IHRpdGxlOiAnQ29uc3VtZWQgVG9rZW5zJyB9LAoJCQkJbGVnZW5kOiB7IHBvc2l0aW9uOiAnbm9uZScgfSwKCQkJCWJhcjogeyBncm91cFdpZHRoOiAnNzUlJyB9LAoJCQkJY2hhcnRBcmVhOiB7IHdpZHRoOiAnODUlJywgaGVpZ2h0OiAnNzAlJyB9LAoJCQkJaGVpZ2h0OiA0MDAKCQkJfTsKCgkJCWNvbnN0IGNoYXJ0ID0gbmV3IGdvb2dsZS52aXN1YWxpemF0aW9uLkNvbHVtbkNoYXJ0KGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCd0b2tlbl9jaGFydF9kaXYnKSk7CgkJCWNoYXJ0LmRyYXcoZGF0YSwgb3B0aW9ucyk7CgkJfQoJCWxldCBhbGxFeHBhbmRlZCA9IGZhbHNlOwoJCWZ1bmN0aW9uIHRvZ2dsZUFsbERldGFpbHMoKSB7CgkJCWFsbEV4cGFuZGVkID0gIWFsbEV4cGFuZGVkOwoJCQlkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdkZXRhaWxzJykuZm9yRWFjaChkID0+IHsKCQkJCWlmIChhbGxFeHBhbmRlZCkgZC5zZXRBdHRyaWJ1dGUoJ29wZW4nLCAnJyk7CgkJCQllbHNlIGQucmVtb3ZlQXR0cmlidXRlKCdvcGVuJyk7CgkJCX0pOwoJCX0KCTwvc2NyaXB0PgoKCjwvYm9keT4KPC9odG1sPgo=" },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:nil,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,} --------- Name: series-workflow6x4mn[1] Phase: Succeeded StartedAt: 2026-06-29 05:55:45 +0000 UTC FinishedAt: 2026-06-29 05:55:45 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[1].abort-on-skip-outcome Phase: Skipped StartedAt: 2026-06-29 05:55:45 +0000 UTC FinishedAt: 2026-06-29 05:55:45 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2] Phase: Succeeded StartedAt: 2026-06-29 05:55:45 +0000 UTC FinishedAt: 2026-06-29 09:53:34 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN) Phase: Succeeded StartedAt: 2026-06-29 05:55:45 +0000 UTC FinishedAt: 2026-06-29 09:53:34 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:element,Default:nil,Value:*{"base":{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},"fuzz":{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},"patched":{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},"retest":null,"track":"KASAN"},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[0] Phase: Succeeded StartedAt: 2026-06-29 05:55:45 +0000 UTC FinishedAt: 2026-06-29 05:55:55 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[0].save-base-req Phase: Succeeded StartedAt: 2026-06-29 05:55:45 +0000 UTC FinishedAt: 2026-06-29 05:55:51 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:data,Default:nil,Value:*{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: &Outputs{Parameters:[]Parameter{},Artifacts:[]Artifact{Artifact{Name:artifact,Path:/tmp/artifact,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-convert-artifact-1598823905/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[1] Phase: Succeeded StartedAt: 2026-06-29 05:55:55 +0000 UTC FinishedAt: 2026-06-29 06:16:29 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[1].base-build Phase: Succeeded StartedAt: 2026-06-29 05:55:55 +0000 UTC FinishedAt: 2026-06-29 06:16:29 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:findings,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Build Base,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:smoke-build,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:session-id,Default:nil,Value:*5f35e85c-8156-4790-ad26-9a3bd04bc7b6,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:request,Path:/tmp/request.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-convert-artifact-1598823905/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "build_id": "e05ec732-6c9d-4c20-b551-c6347ca98d05", "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:*,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/output,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-build-action-2685135631/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[1].base-build(0) Phase: Succeeded StartedAt: 2026-06-29 05:55:55 +0000 UTC FinishedAt: 2026-06-29 06:16:19 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:findings,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Build Base,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:smoke-build,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:session-id,Default:nil,Value:*5f35e85c-8156-4790-ad26-9a3bd04bc7b6,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:request,Path:/tmp/request.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-convert-artifact-1598823905/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "build_id": "e05ec732-6c9d-4c20-b551-c6347ca98d05", "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:*,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/output,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-build-action-2685135631/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[2] Phase: Succeeded StartedAt: 2026-06-29 06:16:29 +0000 UTC FinishedAt: 2026-06-29 06:16:29 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[2].abort-if-base-build-failed Phase: Skipped StartedAt: 2026-06-29 06:16:29 +0000 UTC FinishedAt: 2026-06-29 06:16:29 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[3] Phase: Succeeded StartedAt: 2026-06-29 06:16:29 +0000 UTC FinishedAt: 2026-06-29 06:16:39 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[3].save-patched-req Phase: Succeeded StartedAt: 2026-06-29 06:16:29 +0000 UTC FinishedAt: 2026-06-29 06:16:36 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:data,Default:nil,Value:*{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: &Outputs{Parameters:[]Parameter{},Artifacts:[]Artifact{Artifact{Name:artifact,Path:/tmp/artifact,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-convert-artifact-148006964/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[4] Phase: Succeeded StartedAt: 2026-06-29 06:16:39 +0000 UTC FinishedAt: 2026-06-29 06:18:55 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[4].boot-test-base Phase: Succeeded StartedAt: 2026-06-29 06:16:39 +0000 UTC FinishedAt: 2026-06-29 06:18:46 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:base-build-id,Default:nil,Value:*e05ec732-6c9d-4c20-b551-c6347ca98d05,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Boot test: Base,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:report-findings,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/base,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-build-action-2685135631/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:nil,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,} --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[5] Phase: Succeeded StartedAt: 2026-06-29 06:18:55 +0000 UTC FinishedAt: 2026-06-29 06:18:55 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[5].abort-if-base-boot-failed Phase: Skipped StartedAt: 2026-06-29 06:18:55 +0000 UTC FinishedAt: 2026-06-29 06:18:55 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[6] Phase: Succeeded StartedAt: 2026-06-29 06:18:55 +0000 UTC FinishedAt: 2026-06-29 06:46:44 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[6].patched-build Phase: Succeeded StartedAt: 2026-06-29 06:18:55 +0000 UTC FinishedAt: 2026-06-29 06:46:44 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:findings,Default:nil,Value:*true,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Build Patched,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:smoke-build,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:session-id,Default:nil,Value:*5f35e85c-8156-4790-ad26-9a3bd04bc7b6,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:request,Path:/tmp/request.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-convert-artifact-148006964/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "build_id": "d085ebe8-fa7a-4ba6-b8fd-f3f14500d042", "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:*,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/output,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-build-action-2031929856/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[6].patched-build(0) Phase: Succeeded StartedAt: 2026-06-29 06:18:55 +0000 UTC FinishedAt: 2026-06-29 06:46:34 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:findings,Default:nil,Value:*true,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Build Patched,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:smoke-build,Default:nil,Value:*false,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:session-id,Default:nil,Value:*5f35e85c-8156-4790-ad26-9a3bd04bc7b6,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:request,Path:/tmp/request.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-convert-artifact-148006964/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "build_id": "d085ebe8-fa7a-4ba6-b8fd-f3f14500d042", "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:*,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/output,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-build-action-2031929856/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[7] Phase: Succeeded StartedAt: 2026-06-29 06:46:44 +0000 UTC FinishedAt: 2026-06-29 06:46:44 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[7].abort-if-patched-build-failed Phase: Skipped StartedAt: 2026-06-29 06:46:44 +0000 UTC FinishedAt: 2026-06-29 06:46:44 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[8] Phase: Succeeded StartedAt: 2026-06-29 06:46:44 +0000 UTC FinishedAt: 2026-06-29 06:49:00 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[8].boot-test-patched Phase: Succeeded StartedAt: 2026-06-29 06:46:44 +0000 UTC FinishedAt: 2026-06-29 06:48:51 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:base-build-id,Default:nil,Value:*,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*d085ebe8-fa7a-4ba6-b8fd-f3f14500d042,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Boot test: Patched,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:report-findings,Default:nil,Value:*true,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:kernel,Path:/base,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-build-action-2031929856/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{Parameter{Name:result,Default:nil,Value:*{ "success": true },ValueFrom:&ValueFrom{Path:/output/result.json,JSONPath:,JQFilter:,Parameter:,Default:nil,Supplied:nil,Event:,Expression:,ConfigMapKeyRef:nil,},GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,} --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[10] Phase: Succeeded StartedAt: 2026-06-29 06:49:00 +0000 UTC FinishedAt: 2026-06-29 09:53:34 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[10].run-fuzz Phase: Succeeded StartedAt: 2026-06-29 06:49:00 +0000 UTC FinishedAt: 2026-06-29 09:53:34 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:config,Default:nil,Value:*{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:track,Default:nil,Value:*KASAN,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:base-build-id,Default:nil,Value:*e05ec732-6c9d-4c20-b551-c6347ca98d05,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*d085ebe8-fa7a-4ba6-b8fd-f3f14500d042,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:base-kernel,Path:,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-build-action-2685135631/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},Artifact{Name:patched-kernel,Path:,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-build-action-2031929856/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[10].run-fuzz[0] Phase: Succeeded StartedAt: 2026-06-29 06:49:00 +0000 UTC FinishedAt: 2026-06-29 06:49:25 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[10].run-fuzz[0].save-fuzz-config Phase: Succeeded StartedAt: 2026-06-29 06:49:00 +0000 UTC FinishedAt: 2026-06-29 06:49:18 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:data,Default:nil,Value:*{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{},} Output: &Outputs{Parameters:[]Parameter{},Artifacts:[]Artifact{Artifact{Name:artifact,Path:/tmp/artifact,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-convert-artifact-1869789277/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},Result:nil,ExitCode:*0,} --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[10].run-retest Phase: Skipped StartedAt: 2026-06-29 06:49:00 +0000 UTC FinishedAt: 2026-06-29 06:49:00 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[9] Phase: Succeeded StartedAt: 2026-06-29 06:49:00 +0000 UTC FinishedAt: 2026-06-29 06:49:00 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[9].abort-if-patched-boot-failed Phase: Skipped StartedAt: 2026-06-29 06:49:00 +0000 UTC FinishedAt: 2026-06-29 06:49:00 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[10].run-fuzz[1] Phase: Succeeded StartedAt: 2026-06-29 06:49:25 +0000 UTC FinishedAt: 2026-06-29 09:53:34 +0000 UTC Input: nil Output: nil --------- Name: series-workflow6x4mn[2].run-process-target(0:base:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},fuzz:{"bug_title_re":"","corpus_urls":["https://storage.googleapis.com/syzkaller/corpus/ci2-upstream-fs-corpus.db"],"focus":["fs"],"focus_symbols":["ext4_evict_ea_inode","ext4_xattr_inode_cache_find","ext4_xattr_inode_lookup_create"],"skip_cover_check":false},patched:{"arch":"amd64","commit_hash":"dc59e4fea9d83f03bad6bddf3fa2e52491777482","config_name":"upstream-apparmor-kasan.config","enable_configs":["EXT4_FS","EXT4_FS_POSIX_ACL","EXT4_FS_SECURITY"],"series_id":"b31b2f2d-c527-428d-aec0-ca0523ad0d5a","tree_name":"torvalds","tree_url":"https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux"},retest:null,track:KASAN)[10].run-fuzz[1].fuzz Phase: Succeeded StartedAt: 2026-06-29 06:49:25 +0000 UTC FinishedAt: 2026-06-29 09:53:24 +0000 UTC Input: &Inputs{Parameters:[]Parameter{Parameter{Name:base-build-id,Default:nil,Value:*e05ec732-6c9d-4c20-b551-c6347ca98d05,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:patched-build-id,Default:nil,Value:*d085ebe8-fa7a-4ba6-b8fd-f3f14500d042,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},Parameter{Name:test-name,Default:nil,Value:*[KASAN] Fuzz,ValueFrom:nil,GlobalName:,Enum:[],Description:nil,},},Artifacts:[]Artifact{Artifact{Name:base-kernel,Path:/base,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-build-action-2685135631/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},Artifact{Name:patched-kernel,Path:/patched,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-build-action-2031929856/kernel.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:true,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},Artifact{Name:config,Path:/tmp/config.json,Mode:nil,From:,ArtifactLocation:ArtifactLocation{ArchiveLogs:nil,S3:nil,Git:nil,HTTP:nil,Artifactory:nil,HDFS:nil,Raw:nil,OSS:nil,GCS:&GCSArtifact{GCSBucket:GCSBucket{Bucket:,ServiceAccountKeySecret:nil,},Key:series-workflow6x4mn/series-workflow6x4mn-convert-artifact-1869789277/artifact.tgz,},Azure:nil,},GlobalName:,Archive:nil,Optional:false,SubPath:,RecurseMode:false,FromExpression:,ArtifactGC:nil,Deleted:false,},},} Output: &Outputs{Parameters:[]Parameter{},Artifacts:[]Artifact{},Result:nil,ExitCode:*0,}