subiquity/examples/curtin-events-postinstall.json

67 lines
42 KiB
JSON

{"origin": "curtin", "event_type": "start", "level": "DEBUG", "timestamp": 1505187730.387403, "name": "cmd-install", "description": "curtin command install"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187730.416036, "name": "cmd-install/stage-early", "description": "preparing for installation"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187730.4184864, "name": "cmd-install/stage-early", "result": "SUCCESS", "description": "preparing for installation"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187730.4236422, "name": "cmd-install/stage-partitioning", "description": "configuring storage"}
{"origin": "curtin", "event_type": "start", "level": "DEBUG", "timestamp": 1505187730.4254482, "name": "cmd-install/stage-partitioning/builtin", "description": "running 'c u r t i n b l o c k - m e t a c u s t o m'"}
{"origin": "curtin", "event_type": "start", "level": "DEBUG", "timestamp": 1505187730.8944354, "name": "cmd-install/stage-partitioning/builtin/cmd-block-meta", "description": "curtin command block-meta"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187730.9062672, "name": "cmd-install/stage-partitioning/builtin/cmd-block-meta", "description": "removing previous storage devices"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187731.0728686, "name": "cmd-install/stage-partitioning/builtin/cmd-block-meta", "result": "SUCCESS", "description": "removing previous storage devices"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187731.07791, "name": "cmd-install/stage-partitioning/builtin/cmd-block-meta", "description": "configuring disk: disk-0"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187731.6285036, "name": "cmd-install/stage-partitioning/builtin/cmd-block-meta", "result": "SUCCESS", "description": "configuring disk: disk-0"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187731.6309845, "name": "cmd-install/stage-partitioning/builtin/cmd-block-meta", "description": "configuring partition: part-0"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187731.9249995, "name": "cmd-install/stage-partitioning/builtin/cmd-block-meta", "result": "SUCCESS", "description": "configuring partition: part-0"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187731.9297528, "name": "cmd-install/stage-partitioning/builtin/cmd-block-meta", "description": "configuring partition: part-1"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187732.2012045, "name": "cmd-install/stage-partitioning/builtin/cmd-block-meta", "result": "SUCCESS", "description": "configuring partition: part-1"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187732.2083402, "name": "cmd-install/stage-partitioning/builtin/cmd-block-meta", "description": "configuring format: fs-0"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187732.696612, "name": "cmd-install/stage-partitioning/builtin/cmd-block-meta", "result": "SUCCESS", "description": "configuring format: fs-0"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187732.7018569, "name": "cmd-install/stage-partitioning/builtin/cmd-block-meta", "description": "configuring mount: mount-0"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187733.6277962, "name": "cmd-install/stage-partitioning/builtin/cmd-block-meta", "result": "SUCCESS", "description": "configuring mount: mount-0"}
{"origin": "curtin", "event_type": "finish", "level": "DEBUG", "timestamp": 1505187733.632549, "name": "cmd-install/stage-partitioning/builtin/cmd-block-meta", "result": "SUCCESS", "description": "curtin command block-meta"}
{"origin": "curtin", "event_type": "finish", "level": "DEBUG", "timestamp": 1505187733.6581404, "name": "cmd-install/stage-partitioning/builtin", "result": "SUCCESS", "description": "running 'c u r t i n b l o c k - m e t a c u s t o m'"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187733.6625082, "name": "cmd-install/stage-partitioning", "result": "SUCCESS", "description": "configuring storage"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187733.6644485, "name": "cmd-install/stage-network", "description": "configuring network"}
{"origin": "curtin", "event_type": "start", "level": "DEBUG", "timestamp": 1505187733.670174, "name": "cmd-install/stage-network/builtin", "description": "running 'curtin net-meta auto'"}
{"origin": "curtin", "event_type": "start", "level": "DEBUG", "timestamp": 1505187734.110104, "name": "cmd-install/stage-network/builtin/cmd-net-meta", "description": "curtin command net-meta"}
{"origin": "curtin", "event_type": "finish", "level": "DEBUG", "timestamp": 1505187734.1280391, "name": "cmd-install/stage-network/builtin/cmd-net-meta", "result": "SUCCESS", "description": "curtin command net-meta"}
{"origin": "curtin", "event_type": "finish", "level": "DEBUG", "timestamp": 1505187734.172315, "name": "cmd-install/stage-network/builtin", "result": "SUCCESS", "description": "running 'curtin net-meta auto'"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187734.179751, "name": "cmd-install/stage-network", "result": "SUCCESS", "description": "configuring network"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187734.18368, "name": "cmd-install/stage-extract", "description": "writing install sources to disk"}
{"origin": "curtin", "event_type": "start", "level": "DEBUG", "timestamp": 1505187734.185926, "name": "cmd-install/stage-extract/builtin", "description": "running 'curtin extract'"}
{"origin": "curtin", "event_type": "start", "level": "DEBUG", "timestamp": 1505187734.6197803, "name": "cmd-install/stage-extract/builtin/cmd-extract", "description": "curtin command extract"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187734.6307557, "name": "cmd-install/stage-extract/builtin/cmd-extract", "description": "acquiring and extracting image from cp:///rofs"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187740.1971083, "name": "cmd-install/stage-extract/builtin/cmd-extract", "result": "SUCCESS", "description": "acquiring and extracting image from cp:///rofs"}
{"origin": "curtin", "event_type": "finish", "level": "DEBUG", "timestamp": 1505187740.208411, "name": "cmd-install/stage-extract/builtin/cmd-extract", "result": "SUCCESS", "description": "curtin command extract"}
{"origin": "curtin", "event_type": "finish", "level": "DEBUG", "timestamp": 1505187740.2404938, "name": "cmd-install/stage-extract/builtin", "result": "SUCCESS", "description": "running 'curtin extract'"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187740.2480564, "name": "cmd-install/stage-extract", "result": "SUCCESS", "description": "writing install sources to disk"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187740.253386, "name": "cmd-install/stage-curthooks", "description": "configuring installed system"}
{"origin": "curtin", "event_type": "start", "level": "DEBUG", "timestamp": 1505187740.2583199, "name": "cmd-install/stage-curthooks/builtin", "description": "running 'curtin curthooks'"}
{"origin": "curtin", "event_type": "start", "level": "DEBUG", "timestamp": 1505187740.771961, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks", "description": "curtin command curthooks"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187740.7829099, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/writing-config", "description": "configuring apt configuring apt"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187740.9312112, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/writing-config", "result": "SUCCESS", "description": "configuring apt configuring apt"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187740.9344666, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/installing-missing-packages", "description": "installing missing packages"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187740.9704719, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/installing-missing-packages", "result": "SUCCESS", "description": "installing missing packages"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187740.9782822, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/installing-kernel", "description": "installing kernel"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187741.2833116, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/installing-kernel", "result": "SUCCESS", "description": "installing kernel"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187741.291272, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/setting-up-swap", "description": "setting up swap"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187741.4805856, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/setting-up-swap", "result": "SUCCESS", "description": "setting up swap"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187741.4832706, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/apply-networking-config", "description": "apply networking config"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187741.4888265, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/apply-networking-config", "result": "SUCCESS", "description": "apply networking config"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187741.497015, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/writing-etc-fstab", "description": "writing etc/fstab"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187741.503997, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/writing-etc-fstab", "result": "SUCCESS", "description": "writing etc/fstab"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187741.5110745, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/configuring-multipath", "description": "configuring multipath"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187741.6981237, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/configuring-multipath", "result": "SUCCESS", "description": "configuring multipath"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187741.7038646, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/system-upgrade", "description": "updating packages on target system"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187741.7130704, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks/system-upgrade", "result": "SUCCESS", "description": "updating packages on target system"}
{"origin": "curtin", "event_type": "finish", "level": "DEBUG", "timestamp": 1505187750.4389873, "name": "cmd-install/stage-curthooks/builtin/cmd-curthooks", "result": "SUCCESS", "description": "curtin command curthooks"}
{"origin": "curtin", "event_type": "finish", "level": "DEBUG", "timestamp": 1505187750.479971, "name": "cmd-install/stage-curthooks/builtin", "result": "SUCCESS", "description": "running 'curtin curthooks'"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187750.4881587, "name": "cmd-install/stage-curthooks", "result": "SUCCESS", "description": "configuring installed system"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187750.4917908, "name": "cmd-install/stage-hook", "description": "finalizing installation"}
{"origin": "curtin", "event_type": "start", "level": "DEBUG", "timestamp": 1505187750.4987683, "name": "cmd-install/stage-hook/builtin", "description": "running 'curtin hook'"}
{"origin": "curtin", "event_type": "start", "level": "DEBUG", "timestamp": 1505187750.9342012, "name": "cmd-install/stage-hook/builtin/cmd-hook", "description": "curtin command hook"}
{"origin": "curtin", "event_type": "finish", "level": "DEBUG", "timestamp": 1505187750.948129, "name": "cmd-install/stage-hook/builtin/cmd-hook", "result": "SUCCESS", "description": "curtin command hook"}
{"origin": "curtin", "event_type": "finish", "level": "DEBUG", "timestamp": 1505187750.9763474, "name": "cmd-install/stage-hook/builtin", "result": "SUCCESS", "description": "running 'curtin hook'"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187750.9888413, "name": "cmd-install/stage-hook", "result": "SUCCESS", "description": "finalizing installation"}
{"origin": "curtin", "event_type": "start", "level": "INFO", "timestamp": 1505187750.9909797, "name": "cmd-install/stage-late", "description": "executing late commands"}
{"origin": "curtin", "event_type": "finish", "level": "INFO", "timestamp": 1505187750.9950516, "name": "cmd-install/stage-late", "result": "SUCCESS", "description": "executing late commands"}
{"files": [{"content": "Y3VydGluOiBJbnN0YWxsYXRpb24gc3RhcnRlZC4gKDAuMS4wfmJ6cjUxOS0wdWJ1bnR1MSkKc3RhcnQ6IGNtZC1pbnN0YWxsL3N0YWdlLXBhcnRpdGlvbmluZy9idWlsdGluL2NtZC1ibG9jay1tZXRhOiBjdXJ0aW4gY29tbWFuZCBibG9jay1tZXRhCnN0YXJ0OiBjbWQtaW5zdGFsbC9zdGFnZS1wYXJ0aXRpb25pbmcvYnVpbHRpbi9jbWQtYmxvY2stbWV0YTogcmVtb3ZpbmcgcHJldmlvdXMgc3RvcmFnZSBkZXZpY2VzClJ1bm5pbmcgY29tbWFuZCBbJ21kYWRtJywgJy0tYXNzZW1ibGUnLCAnLS1zY2FuJywgJy12J10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMCwgMSwgMl0gKGNhcHR1cmU9VHJ1ZSkKbWRhZG0gYXNzZW1ibGUgc2NhbiByZXN1bHRzOgoKbWRhZG06IGxvb2tpbmcgZm9yIGRldmljZXMgZm9yIGZ1cnRoZXIgYXNzZW1ibHkKbWRhZG06IGNhbm5vdCBvcGVuIGRldmljZSAvZGV2L2ZkMDogTm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwptZGFkbTogbm8gcmVjb2duaXNlYWJsZSBzdXBlcmJsb2NrIG9uIC9kZXYvc3IwCm1kYWRtOiBubyByZWNvZ25pc2VhYmxlIHN1cGVyYmxvY2sgb24gL2Rldi9zZGEyCm1kYWRtOiBubyByZWNvZ25pc2VhYmxlIHN1cGVyYmxvY2sgb24gL2Rldi9zZGExCm1kYWRtOiBDYW5ub3QgYXNzZW1ibGUgbWJyIG1ldGFkYXRhIG9uIC9kZXYvc2RhCm1kYWRtOiBubyByZWNvZ25pc2VhYmxlIHN1cGVyYmxvY2sgb24gL2Rldi9sb29wMwptZGFkbTogbm8gcmVjb2duaXNlYWJsZSBzdXBlcmJsb2NrIG9uIC9kZXYvbG9vcDIKbWRhZG06IG5vIHJlY29nbmlzZWFibGUgc3VwZXJibG9jayBvbiAvZGV2L2xvb3AxCm1kYWRtOiBubyByZWNvZ25pc2VhYmxlIHN1cGVyYmxvY2sgb24gL2Rldi9sb29wMAptZGFkbTogTm8gYXJyYXlzIGZvdW5kIGluIGNvbmZpZyBmaWxlIG9yIGF1dG9tYXRpY2FsbHkKClJ1bm5pbmcgY29tbWFuZCBbJ21kYWRtJywgJy0tZGV0YWlsJywgJy0tc2NhbicsICctdiddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzAsIDFdIChjYXB0dXJlPVRydWUpCm1kYWRtIGRldGFpbCBzY2FuIGFmdGVyIGFzc2VtYmxlOgoKClJ1bm5pbmcgY29tbWFuZCBbJ3VkZXZhZG0nLCAnc2V0dGxlJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9RmFsc2UpClJ1bm5pbmcgY29tbWFuZCBbJ21vZHByb2JlJywgJ2JjYWNoZSddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzAsIDFdIChjYXB0dXJlPUZhbHNlKQpDdXJyZW50IGRldmljZSBzdG9yYWdlIHRyZWU6CgpmaW5pc2g6IGNtZC1pbnN0YWxsL3N0YWdlLXBhcnRpdGlvbmluZy9idWlsdGluL2NtZC1ibG9jay1tZXRhOiBTVUNDRVNTOiByZW1vdmluZyBwcmV2aW91cyBzdG9yYWdlIGRldmljZXMKc3RhcnQ6IGNtZC1pbnN0YWxsL3N0YWdlLXBhcnRpdGlvbmluZy9idWlsdGluL2NtZC1ibG9jay1tZXRhOiBjb25maWd1cmluZyBkaXNrOiBkaXNrLTAKZ2V0X3BhdGhfdG9fc3RvcmFnZV92b2x1bWUgZm9yIHZvbHVtZSBkaXNrLTAKUHJvY2Vzc2luZyBzZXJpYWwgUUVNVV9IQVJERElTS19RTTAwMDAxIHZpYSB1ZGV2IHRvIFFFTVVfSEFSRERJU0tfUU0wMDAwMQpkZXZzeW5jIGZvciAvZGV2L3NkYQpSdW5uaW5nIGNvbW1hbmQgWydwYXJ0cHJvYmUnLCAnL2Rldi9zZGEnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswLCAxXSAoY2FwdHVyZT1GYWxzZSkKUnVubmluZyBjb21tYW5kIFsndWRldmFkbScsICdzZXR0bGUnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1GYWxzZSkKZGV2c3luYyBoYXBweSAtIHBhdGggL2Rldi9zZGEgbm93IGV4aXN0cwpyZXR1cm4gdm9sdW1lIHBhdGggL2Rldi9zZGEKUnVubmluZyBjb21tYW5kIFsnbHNibGsnLCAnLS1ub2hlYWRpbmdzJywgJy0tYnl0ZXMnLCAnLS1wYWlycycsICctLW91dHB1dD1BTElHTk1FTlQsRElTQy1BTE4sRElTQy1HUkFOLERJU0MtTUFYLERJU0MtWkVSTyxGU1RZUEUsR1JPVVAsS05BTUUsTEFCRUwsTE9HLVNFQyxNQUo6TUlOLE1JTi1JTyxNT0RFLE1PREVMLE1PVU5UUE9JTlQsTkFNRSxPUFQtSU8sT1dORVIsUEhZLVNFQyxSTSxSTyxST1RBLFJRLVNJWkUsU0laRSxTVEFURSxUWVBFLFVVSUQnLCAnL2Rldi9zZGEnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1UcnVlKQpnZXRfYmxvY2tkZXZfc2VjdG9yX3NpemU6IGluZm86CnsKICJzZGEiOiB7CiAgIkFMSUdOTUVOVCI6ICIwIiwKICAiRElTQy1BTE4iOiAiMCIsCiAgIkRJU0MtR1JBTiI6ICI1MTIiLAogICJESVNDLU1BWCI6ICIyMTQ3NDUwODgwIiwKICAiRElTQy1aRVJPIjogIjAiLAogICJGU1RZUEUiOiAiIiwKICAiR1JPVVAiOiAiZGlzayIsCiAgIktOQU1FIjogInNkYSIsCiAgIkxBQkVMIjogIiIsCiAgIkxPRy1TRUMiOiAiNTEyIiwKICAiTUFKOk1JTiI6ICI4OjAiLAogICJNSU4tSU8iOiAiNTEyIiwKICAiTU9ERSI6ICJicnctcnctLS0tIiwKICAiTU9ERUwiOiAiUUVNVSBIQVJERElTSyAgICIsCiAgIk1PVU5UUE9JTlQiOiAiIiwKICAiTkFNRSI6ICJzZGEiLAogICJPUFQtSU8iOiAiMCIsCiAgIk9XTkVSIjogInJvb3QiLAogICJQSFktU0VDIjogIjUxMiIsCiAgIlJNIjogIjAiLAogICJSTyI6ICIwIiwKICAiUk9UQSI6ICIxIiwKICAiUlEtU0laRSI6ICIxMjgiLAogICJTSVpFIjogIjEwNzM3NDE4MjQwIiwKICAiU1RBVEUiOiAicnVubmluZyIsCiAgIlRZUEUiOiAiZGlzayIsCiAgIlVVSUQiOiAiIiwKICAiZGV2aWNlX3BhdGgiOiAiL2Rldi9zZGEiCiB9LAogInNkYTEiOiB7CiAgIkFMSUdOTUVOVCI6ICIwIiwKICAiRElTQy1BTE4iOiAiMCIsCiAgIkRJU0MtR1JBTiI6ICI1MTIiLAogICJESVNDLU1BWCI6ICIyMTQ3NDUwODgwIiwKICAiRElTQy1aRVJPIjogIjAiLAogICJGU1RZUEUiOiAiIiwKICAiR1JPVVAiOiAiZGlzayIsCiAgIktOQU1FIjogInNkYTEiLAogICJMQUJFTCI6ICIiLAogICJMT0ctU0VDIjogIjUxMiIsCiAgIk1BSjpNSU4iOiAiODoxIiwKICAiTUlOLUlPIjogIjUxMiIsCiAgIk1PREUiOiAiYnJ3LXJ3LS0tLSIsCiAgIk1PREVMIjogIiIsCiAgIk1PVU5UUE9JTlQiOiAiIiwKICAiTkFNRSI6ICJzZGExIiwKICAiT1BULUlPIjogIjAiLAogICJPV05FUiI6ICJyb290IiwKICAiUEhZLVNFQyI6ICI1MTIiLAogICJSTSI6ICIwIiwKICAiUk8iOiAiMCIsCiAgIlJPVEEiOiAiMSIsCiAgIlJRLVNJWkUiOiAiMTI4IiwKICAiU0laRSI6ICIyMDk3MTUyIiwKICAiU1RBVEUiOiAiIiwKICAiVFlQRSI6ICJwYXJ0IiwKICAiVVVJRCI6ICIiLAogICJkZXZpY2VfcGF0aCI6ICIvZGV2L3NkYTEiCiB9LAogInNkYTIiOiB7CiAgIkFMSUdOTUVOVCI6ICIwIiwKICAiRElTQy1BTE4iOiAiMCIsCiAgIkRJU0MtR1JBTiI6ICI1MTIiLAogICJESVNDLU1BWCI6ICIyMTQ3NDUwODgwIiwKICAiRElTQy1aRVJPIjogIjAiLAogICJGU1RZUEUiOiAiZXh0NCIsCiAgIkdST1VQIjogImRpc2siLAogICJLTkFNRSI6ICJzZGEyIiwKICAiTEFCRUwiOiAiIiwKICAiTE9HLVNFQyI6ICI1MTIiLAogICJNQUo6TUlOIjogIjg6MiIsCiAgIk1JTi1JTyI6ICI1MTIiLAogICJNT0RFIjogImJydy1ydy0tLS0iLAogICJNT0RFTCI6ICIiLAogICJNT1VOVFBPSU5UIjogIiIsCiAgIk5BTUUiOiAic2RhMiIsCiAgIk9QVC1JTyI6ICIwIiwKICAiT1dORVIiOiAicm9vdCIsCiAgIlBIWS1TRUMiOiAiNTEyIiwKICAiUk0iOiAiMCIsCiAgIlJPIjogIjAiLAogICJST1RBIjogIjEiLAogICJSUS1TSVpFIjogIjEyOCIsCiAgIlNJWkUiOiAiMTA3MzMyMjM5MzYiLAogICJTVEFURSI6ICIiLAogICJUWVBFIjogInBhcnQiLAogICJVVUlEIjogImM4YjE5NDNjLTk3NmItMTFlNy05YTMwLTUyNTQwMDEyMzQ1NiIsCiAgImRldmljZV9wYXRoIjogIi9kZXYvc2RhMiIKIH0KfQpkaXNrICcvZGV2L3NkYScgbWFya2VkIHRvIGJlIHByZXNlcnZlZCwgc28ga2VlcGluZyBwYXJ0aXRpb24gdGFibGUKZmluaXNoOiBjbWQtaW5zdGFsbC9zdGFnZS1wYXJ0aXRpb25pbmcvYnVpbHRpbi9jbWQtYmxvY2stbWV0YTogU1VDQ0VTUzogY29uZmlndXJpbmcgZGlzazogZGlzay0wCnN0YXJ0OiBjbWQtaW5zdGFsbC9zdGFnZS1wYXJ0aXRpb25pbmcvYnVpbHRpbi9jbWQtYmxvY2stbWV0YTogY29uZmlndXJpbmcgcGFydGl0aW9uOiBwYXJ0LTAKZ2V0X3BhdGhfdG9fc3RvcmFnZV92b2x1bWUgZm9yIHZvbHVtZSBkaXNrLTAKUHJvY2Vzc2luZyBzZXJpYWwgUUVNVV9IQVJERElTS19RTTAwMDAxIHZpYSB1ZGV2IHRvIFFFTVVfSEFSRERJU0tfUU0wMDAwMQpkZXZzeW5jIGZvciAvZGV2L3NkYQpSdW5uaW5nIGNvbW1hbmQgWydwYXJ0cHJvYmUnLCAnL2Rldi9zZGEnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswLCAxXSAoY2FwdHVyZT1GYWxzZSkKUnVubmluZyBjb21tYW5kIFsndWRldmFkbScsICdzZXR0bGUnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1GYWxzZSkKZGV2c3luYyBoYXBweSAtIHBhdGggL2Rldi9zZGEgbm93IGV4aXN0cwpyZXR1cm4gdm9sdW1lIHBhdGggL2Rldi9zZGEKc2RhIGxvZ2ljYWxfYmxvY2tfc2l6ZV9ieXRlczogNTEyCmZpbmlzaDogY21kLWluc3RhbGwvc3RhZ2UtcGFydGl0aW9uaW5nL2J1aWx0aW4vY21kLWJsb2NrLW1ldGE6IFNVQ0NFU1M6IGNvbmZpZ3VyaW5nIHBhcnRpdGlvbjogcGFydC0wCnN0YXJ0OiBjbWQtaW5zdGFsbC9zdGFnZS1wYXJ0aXRpb25pbmcvYnVpbHRpbi9jbWQtYmxvY2stbWV0YTogY29uZmlndXJpbmcgcGFydGl0aW9uOiBwYXJ0LTEKZ2V0X3BhdGhfdG9fc3RvcmFnZV92b2x1bWUgZm9yIHZvbHVtZSBkaXNrLTAKUHJvY2Vzc2luZyBzZXJpYWwgUUVNVV9IQVJERElTS19RTTAwMDAxIHZpYSB1ZGV2IHRvIFFFTVVfSEFSRERJU0tfUU0wMDAwMQpkZXZzeW5jIGZvciAvZGV2L3NkYQpSdW5uaW5nIGNvbW1hbmQgWydwYXJ0cHJvYmUnLCAnL2Rldi9zZGEnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswLCAxXSAoY2FwdHVyZT1GYWxzZSkKUnVubmluZyBjb21tYW5kIFsndWRldmFkbScsICdzZXR0bGUnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1GYWxzZSkKZGV2c3luYyBoYXBweSAtIHBhdGggL2Rldi9zZGEgbm93IGV4aXN0cwpyZXR1cm4gdm9sdW1lIHBhdGggL2Rldi9zZGEKc2RhIGxvZ2ljYWxfYmxvY2tfc2l6ZV9ieXRlczogNTEyCnByZXZpb3VzIHBhcnRpdGlvbiBudW1iZXIgZm9yICdwYXJ0LTEnIGZvdW5kIHRvIGJlICcxJwpwcmV2aW91cyBwYXJ0aXRpb246IC9zeXMvY2xhc3MvYmxvY2svc2RhL3NkYTEKcHJldmlvdXMgcGFydGl0aW9uLnNpemVfc2VjdG9yczogNDA5Ni4wCnByZXZpb3VzIHBhcnRpdGlvbi5zdGFydF9zZWN0b3JzOiAyMDQ4LjAKZmluaXNoOiBjbWQtaW5zdGFsbC9zdGFnZS1wYXJ0aXRpb25pbmcvYnVpbHRpbi9jbWQtYmxvY2stbWV0YTogU1VDQ0VTUzogY29uZmlndXJpbmcgcGFydGl0aW9uOiBwYXJ0LTEKc3RhcnQ6IGNtZC1pbnN0YWxsL3N0YWdlLXBhcnRpdGlvbmluZy9idWlsdGluL2NtZC1ibG9jay1tZXRhOiBjb25maWd1cmluZyBmb3JtYXQ6IGZzLTAKZ2V0X3BhdGhfdG9fc3RvcmFnZV92b2x1bWUgZm9yIHZvbHVtZSBwYXJ0LTEKZ2V0X3BhdGhfdG9fc3RvcmFnZV92b2x1bWUgZm9yIHZvbHVtZSBkaXNrLTAKUHJvY2Vzc2luZyBzZXJpYWwgUUVNVV9IQVJERElTS19RTTAwMDAxIHZpYSB1ZGV2IHRvIFFFTVVfSEFSRERJU0tfUU0wMDAwMQpkZXZzeW5jIGZvciAvZGV2L3NkYQpSdW5uaW5nIGNvbW1hbmQgWydwYXJ0cHJvYmUnLCAnL2Rldi9zZGEnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswLCAxXSAoY2FwdHVyZT1GYWxzZSkKUnVubmluZyBjb21tYW5kIFsndWRldmFkbScsICdzZXR0bGUnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1GYWxzZSkKZGV2c3luYyBoYXBweSAtIHBhdGggL2Rldi9zZGEgbm93IGV4aXN0cwpyZXR1cm4gdm9sdW1lIHBhdGggL2Rldi9zZGEKZGV2c3luYyBmb3IgL2Rldi9zZGEKUnVubmluZyBjb21tYW5kIFsncGFydHByb2JlJywgJy9kZXYvc2RhJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMCwgMV0gKGNhcHR1cmU9RmFsc2UpClJ1bm5pbmcgY29tbWFuZCBbJ3VkZXZhZG0nLCAnc2V0dGxlJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9RmFsc2UpCmRldnN5bmMgaGFwcHkgLSBwYXRoIC9kZXYvc2RhIG5vdyBleGlzdHMKcmV0dXJuIHZvbHVtZSBwYXRoIC9kZXYvc2RhMgpmaW5pc2g6IGNtZC1pbnN0YWxsL3N0YWdlLXBhcnRpdGlvbmluZy9idWlsdGluL2NtZC1ibG9jay1tZXRhOiBTVUNDRVNTOiBjb25maWd1cmluZyBmb3JtYXQ6IGZzLTAKc3RhcnQ6IGNtZC1pbnN0YWxsL3N0YWdlLXBhcnRpdGlvbmluZy9idWlsdGluL2NtZC1ibG9jay1tZXRhOiBjb25maWd1cmluZyBtb3VudDogbW91bnQtMApnZXRfcGF0aF90b19zdG9yYWdlX3ZvbHVtZSBmb3Igdm9sdW1lIHBhcnQtMQpnZXRfcGF0aF90b19zdG9yYWdlX3ZvbHVtZSBmb3Igdm9sdW1lIGRpc2stMApQcm9jZXNzaW5nIHNlcmlhbCBRRU1VX0hBUkRESVNLX1FNMDAwMDEgdmlhIHVkZXYgdG8gUUVNVV9IQVJERElTS19RTTAwMDAxCmRldnN5bmMgZm9yIC9kZXYvc2RhClJ1bm5pbmcgY29tbWFuZCBbJ3BhcnRwcm9iZScsICcvZGV2L3NkYSddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzAsIDFdIChjYXB0dXJlPUZhbHNlKQpSdW5uaW5nIGNvbW1hbmQgWyd1ZGV2YWRtJywgJ3NldHRsZSddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzBdIChjYXB0dXJlPUZhbHNlKQpkZXZzeW5jIGhhcHB5IC0gcGF0aCAvZGV2L3NkYSBub3cgZXhpc3RzCnJldHVybiB2b2x1bWUgcGF0aCAvZGV2L3NkYQpkZXZzeW5jIGZvciAvZGV2L3NkYQpSdW5uaW5nIGNvbW1hbmQgWydwYXJ0cHJvYmUnLCAnL2Rldi9zZGEnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswLCAxXSAoY2FwdHVyZT1GYWxzZSkKUnVubmluZyBjb21tYW5kIFsndWRldmFkbScsICdzZXR0bGUnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1GYWxzZSkKZGV2c3luYyBoYXBweSAtIHBhdGggL2Rldi9zZGEgbm93IGV4aXN0cwpyZXR1cm4gdm9sdW1lIHBhdGggL2Rldi9zZGEyClJ1bm5pbmcgY29tbWFuZCBbJ21vdW50JywgJy9kZXYvc2RhMicsICcvdG1wL3RtcHR4em1waXV1L3RhcmdldCddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzBdIChjYXB0dXJlPUZhbHNlKQp2b2x1bWVfcGF0aD0vZGV2L3NkYTIgZm91bmQgc2xhdmVzOiBbJ3NkYTInXQprbmFtZV9pc19pc2NzaTogbm8gaXNjc2kgZGlzayBmb3VuZCBmb3Iga25hbWUgc2RhMgprbmFtZV9pc19pc2NzaTogbm8gaXNjc2kgZGlzayBmb3VuZCBmb3Iga25hbWUgc2RhMgpnZXRfcGF0aF90b19zdG9yYWdlX3ZvbHVtZSBmb3Igdm9sdW1lIHBhcnQtMQpnZXRfcGF0aF90b19zdG9yYWdlX3ZvbHVtZSBmb3Igdm9sdW1lIGRpc2stMApQcm9jZXNzaW5nIHNlcmlhbCBRRU1VX0hBUkRESVNLX1FNMDAwMDEgdmlhIHVkZXYgdG8gUUVNVV9IQVJERElTS19RTTAwMDAxCmRldnN5bmMgZm9yIC9kZXYvc2RhClJ1bm5pbmcgY29tbWFuZCBbJ3BhcnRwcm9iZScsICcvZGV2L3NkYSddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzAsIDFdIChjYXB0dXJlPUZhbHNlKQpSdW5uaW5nIGNvbW1hbmQgWyd1ZGV2YWRtJywgJ3NldHRsZSddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzBdIChjYXB0dXJlPUZhbHNlKQpkZXZzeW5jIGhhcHB5IC0gcGF0aCAvZGV2L3NkYSBub3cgZXhpc3RzCnJldHVybiB2b2x1bWUgcGF0aCAvZGV2L3NkYQpkZXZzeW5jIGZvciAvZGV2L3NkYQpSdW5uaW5nIGNvbW1hbmQgWydwYXJ0cHJvYmUnLCAnL2Rldi9zZGEnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswLCAxXSAoY2FwdHVyZT1GYWxzZSkKUnVubmluZyBjb21tYW5kIFsndWRldmFkbScsICdzZXR0bGUnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1GYWxzZSkKZGV2c3luYyBoYXBweSAtIHBhdGggL2Rldi9zZGEgbm93IGV4aXN0cwpyZXR1cm4gdm9sdW1lIHBhdGggL2Rldi9zZGEyClJ1bm5pbmcgY29tbWFuZCBbJ2Jsa2lkJywgJy1vJywgJ2V4cG9ydCcsICcvZGV2L3NkYTInXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1UcnVlKQpmaW5pc2g6IGNtZC1pbnN0YWxsL3N0YWdlLXBhcnRpdGlvbmluZy9idWlsdGluL2NtZC1ibG9jay1tZXRhOiBTVUNDRVNTOiBjb25maWd1cmluZyBtb3VudDogbW91bnQtMApmaW5pc2g6IGNtZC1pbnN0YWxsL3N0YWdlLXBhcnRpdGlvbmluZy9idWlsdGluL2NtZC1ibG9jay1tZXRhOiBTVUNDRVNTOiBjdXJ0aW4gY29tbWFuZCBibG9jay1tZXRhCnN0YXJ0OiBjbWQtaW5zdGFsbC9zdGFnZS1uZXR3b3JrL2J1aWx0aW4vY21kLW5ldC1tZXRhOiBjdXJ0aW4gY29tbWFuZCBuZXQtbWV0YQpuZXQtbWV0YSBtb2RlIGlzICdjb3B5Jy4gIGRldmljZXM9WydlbnMzJ10KbmV0LW1ldGEgbW9kZSBpcyAnY29weScsIHN0YXRpYyBuZXR3b3JrIGludGVyZmFjZXMgZmlsZXNjYW4gYmUgYnJpdHRsZS4gIENvcGllZCBpbnRlcmZhY2VzOiAKd3JpdGluZyB0byBmaWxlIC90bXAvdG1wdHh6bXBpdXUvc3RhdGUvaW50ZXJmYWNlcyB3aXRoIG5ldHdvcmsgY29uZmlnOiAKZmluaXNoOiBjbWQtaW5zdGFsbC9zdGFnZS1uZXR3b3JrL2J1aWx0aW4vY21kLW5ldC1tZXRhOiBTVUNDRVNTOiBjdXJ0aW4gY29tbWFuZCBuZXQtbWV0YQpzdGFydDogY21kLWluc3RhbGwvc3RhZ2UtZXh0cmFjdC9idWlsdGluL2NtZC1leHRyYWN0OiBjdXJ0aW4gY29tbWFuZCBleHRyYWN0Ckluc3RhbGxpbmcgc291cmNlczogW3sndHlwZSc6ICd0Z3onLCAndXJpJzogJ2NwOi8vL3JvZnMnfV0gdG8gdGFyZ2V0IGF0IC90bXAvdG1wdHh6bXBpdXUvdGFyZ2V0CnN0YXJ0OiBjbWQtaW5zdGFsbC9zdGFnZS1leHRyYWN0L2J1aWx0aW4vY21kLWV4dHJhY3Q6IGFjcXVpcmluZyBhbmQgZXh0cmFjdGluZyBpbWFnZSBmcm9tIGNwOi8vL3JvZnMKUnVubmluZyBjb21tYW5kIFsnc2gnLCAnLWMnLCAnbWtkaXIgLXAgIiQyIiAmJiBjZCAiJDIiICYmIHJzeW5jIC1hWEhBUyAtLW9uZS1maWxlLXN5c3RlbSAiJDEvIiAuJywgJy0tJywgJy9yb2ZzJywgJy90bXAvdG1wdHh6bXBpdXUvdGFyZ2V0J10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9RmFsc2UpCmZpbmlzaDogY21kLWluc3RhbGwvc3RhZ2UtZXh0cmFjdC9idWlsdGluL2NtZC1leHRyYWN0OiBTVUNDRVNTOiBhY3F1aXJpbmcgYW5kIGV4dHJhY3RpbmcgaW1hZ2UgZnJvbSBjcDovLy9yb2ZzCkFwcGx5aW5nIHdyaXRlX2ZpbGVzIGZyb20gY29uZmlnLgpmaW5pc2g6IGNtZC1pbnN0YWxsL3N0YWdlLWV4dHJhY3QvYnVpbHRpbi9jbWQtZXh0cmFjdDogU1VDQ0VTUzogY3VydGluIGNvbW1hbmQgZXh0cmFjdApzdGFydDogY21kLWluc3RhbGwvc3RhZ2UtY3VydGhvb2tzL2J1aWx0aW4vY21kLWN1cnRob29rczogY3VydGluIGNvbW1hbmQgY3VydGhvb2tzCnN0YXJ0OiBjbWQtaW5zdGFsbC9zdGFnZS1jdXJ0aG9va3MvYnVpbHRpbi9jbWQtY3VydGhvb2tzL3dyaXRpbmctY29uZmlnOiBjb25maWd1cmluZyBhcHQgY29uZmlndXJpbmcgYXB0CmN1cnRob29rcyBoYW5kbGluZyBhcHQgdG8gdGFyZ2V0IC90bXAvdG1wdHh6bXBpdXUvdGFyZ2V0IHdpdGggY29uZmlnIHt9ClJ1bm5pbmcgY29tbWFuZCBbJ3Vuc2hhcmUnLCAnLS1oZWxwJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9VHJ1ZSkKUnVubmluZyBjb21tYW5kIFsndW5zaGFyZScsICctLWZvcmsnLCAnLS1waWQnLCAnLS0nLCAnY2hyb290JywgJy90bXAvdG1wdHh6bXBpdXUvdGFyZ2V0JywgJ2xzYl9yZWxlYXNlJywgJy0tYWxsJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9VHJ1ZSkKUnVubmluZyBjb21tYW5kIFsndW5zaGFyZScsICctLWZvcmsnLCAnLS1waWQnLCAnLS0nLCAnY2hyb290JywgJy90bXAvdG1wdHh6bXBpdXUvdGFyZ2V0JywgJ2Rwa2cnLCAnLS1wcmludC1hcmNoaXRlY3R1cmUnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1UcnVlKQpnb3QgcHJpbWFyeSBtaXJyb3I6IE5vbmUKZ290IHNlY3VyaXR5IG1pcnJvcjogTm9uZQpBcHQgTWlycm9yIGluZm86IHsnUFJJTUFSWSc6ICdodHRwOi8vYXJjaGl2ZS51YnVudHUuY29tL3VidW50dS8nLCAnU0VDVVJJVFknOiAnaHR0cDovL3NlY3VyaXR5LnVidW50dS5jb20vdWJ1bnR1LycsICdNSVJST1InOiAnaHR0cDovL2FyY2hpdmUudWJ1bnR1LmNvbS91YnVudHUvJ30KZGViY29uZl9zZWxlY3Rpb25zIHdhcyBub3Qgc2V0IGluIGNvbmZpZwpmaW5pc2g6IGNtZC1pbnN0YWxsL3N0YWdlLWN1cnRob29rcy9idWlsdGluL2NtZC1jdXJ0aG9va3Mvd3JpdGluZy1jb25maWc6IFNVQ0NFU1M6IGNvbmZpZ3VyaW5nIGFwdCBjb25maWd1cmluZyBhcHQKc3RhcnQ6IGNtZC1pbnN0YWxsL3N0YWdlLWN1cnRob29rcy9idWlsdGluL2NtZC1jdXJ0aG9va3MvaW5zdGFsbGluZy1taXNzaW5nLXBhY2thZ2VzOiBpbnN0YWxsaW5nIG1pc3NpbmcgcGFja2FnZXMKUnVubmluZyBjb21tYW5kIFsndW5zaGFyZScsICctLWZvcmsnLCAnLS1waWQnLCAnLS0nLCAnY2hyb290JywgJy90bXAvdG1wdHh6bXBpdXUvdGFyZ2V0JywgJ2Rwa2ctcXVlcnknLCAnLS1saXN0J10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9VHJ1ZSkKZmluaXNoOiBjbWQtaW5zdGFsbC9zdGFnZS1jdXJ0aG9va3MvYnVpbHRpbi9jbWQtY3VydGhvb2tzL2luc3RhbGxpbmctbWlzc2luZy1wYWNrYWdlczogU1VDQ0VTUzogaW5zdGFsbGluZyBtaXNzaW5nIHBhY2thZ2VzCnN0YXJ0OiBjbWQtaW5zdGFsbC9zdGFnZS1jdXJ0aG9va3MvYnVpbHRpbi9jbWQtY3VydGhvb2tzL2luc3RhbGxpbmcta2VybmVsOiBpbnN0YWxsaW5nIGtlcm5lbApSdW5uaW5nIGNvbW1hbmQgWydkcGtnJywgJy0tcHJpbnQtYXJjaGl0ZWN0dXJlJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9VHJ1ZSkKUnVubmluZyBjb21tYW5kIFsndW5zaGFyZScsICctLWZvcmsnLCAnLS1waWQnLCAnLS0nLCAnY2hyb290JywgJy90bXAvdG1wdHh6bXBpdXUvdGFyZ2V0JywgJ2xzYl9yZWxlYXNlJywgJy0tY29kZW5hbWUnLCAnLS1zaG9ydCddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzBdIChjYXB0dXJlPVRydWUpCkNvdWxkbid0IGRldGVjdCBrZXJuZWwgcGFja2FnZSB0byBpbnN0YWxsIGZvciA0LjEyLjAtMTItZ2VuZXJpYy4KUnVubmluZyBjb21tYW5kIFsnbW91bnQnLCAnLS1iaW5kJywgJy9kZXYnLCAnL3RtcC90bXB0eHptcGl1dS90YXJnZXQvZGV2J10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9RmFsc2UpClJ1bm5pbmcgY29tbWFuZCBbJ21vdW50JywgJy0tYmluZCcsICcvcHJvYycsICcvdG1wL3RtcHR4em1waXV1L3RhcmdldC9wcm9jJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9RmFsc2UpClJ1bm5pbmcgY29tbWFuZCBbJ21vdW50JywgJy0tYmluZCcsICcvc3lzJywgJy90bXAvdG1wdHh6bXBpdXUvdGFyZ2V0L3N5cyddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzBdIChjYXB0dXJlPUZhbHNlKQpSdW5uaW5nIGNvbW1hbmQgWyd1bnNoYXJlJywgJy0tZm9yaycsICctLXBpZCcsICctLScsICdjaHJvb3QnLCAnL3RtcC90bXB0eHptcGl1dS90YXJnZXQnLCAnZWF0bXlkYXRhJywgJ2FwdC1nZXQnLCAnLS1xdWlldCcsICctLWFzc3VtZS15ZXMnLCAnLS1vcHRpb249RHBrZzo6b3B0aW9uczo6PS0tZm9yY2UtdW5zYWZlLWlvJywgJy0tb3B0aW9uPURwa2c6Ok9wdGlvbnM6Oj0tLWZvcmNlLWNvbmZvbGQnLCAnaW5zdGFsbCcsICdsaW51eC1nZW5lcmljJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9RmFsc2UpClJlYWRpbmcgcGFja2FnZSBsaXN0cy4uLgpCdWlsZGluZyBkZXBlbmRlbmN5IHRyZWUuLi4KUmVhZGluZyBzdGF0ZSBpbmZvcm1hdGlvbi4uLgpsaW51eC1nZW5lcmljIGlzIGFscmVhZHkgdGhlIG5ld2VzdCB2ZXJzaW9uICg0LjEyLjAuMTIuMTMpLgowIHVwZ3JhZGVkLCAwIG5ld2x5IGluc3RhbGxlZCwgMCB0byByZW1vdmUgYW5kIDAgbm90IHVwZ3JhZGVkLgpSdW5uaW5nIGNvbW1hbmQgWyd1ZGV2YWRtJywgJ3NldHRsZSddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzBdIChjYXB0dXJlPUZhbHNlKQpSdW5uaW5nIGNvbW1hbmQgWyd1bW91bnQnLCAnL3RtcC90bXB0eHptcGl1dS90YXJnZXQvc3lzJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9RmFsc2UpClJ1bm5pbmcgY29tbWFuZCBbJ3Vtb3VudCcsICcvdG1wL3RtcHR4em1waXV1L3RhcmdldC9wcm9jJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9RmFsc2UpClJ1bm5pbmcgY29tbWFuZCBbJ3Vtb3VudCcsICcvdG1wL3RtcHR4em1waXV1L3RhcmdldC9kZXYnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1GYWxzZSkKZmluaXNoOiBjbWQtaW5zdGFsbC9zdGFnZS1jdXJ0aG9va3MvYnVpbHRpbi9jbWQtY3VydGhvb2tzL2luc3RhbGxpbmcta2VybmVsOiBTVUNDRVNTOiBpbnN0YWxsaW5nIGtlcm5lbApzdGFydDogY21kLWluc3RhbGwvc3RhZ2UtY3VydGhvb2tzL2J1aWx0aW4vY21kLWN1cnRob29rcy9zZXR0aW5nLXVwLXN3YXA6IHNldHRpbmcgdXAgc3dhcApSdW5uaW5nIGNvbW1hbmQgWydzaCcsICctYycsICdybSAtZiAiJDEiICYmIHVtYXNrIDAwNjYgJiYgeyBmYWxsb2NhdGUgLWwgIiR7Mn1NIiAiJDEiIHx8ICAgZGQgaWY9L2Rldi96ZXJvICJvZj0kMSIgYnM9MU0gImNvdW50PSQyIjsgfSAmJiBta3N3YXAgIiQxIiB8fCB7IHI9JD87IHJtIC1mICIkMSI7IGV4aXQgJHI7IH0nLCAnc2V0dXBfc3dhcCcsICcvdG1wL3RtcHR4em1waXV1L3RhcmdldC8vc3dhcC5pbWcnLCAnMTU1NyddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzBdIChjYXB0dXJlPUZhbHNlKQpTZXR0aW5nIHVwIHN3YXBzcGFjZSB2ZXJzaW9uIDEsIHNpemUgPSAxLjUgR2lCICgxNjMyNjI4NzM2IGJ5dGVzKQpubyBsYWJlbCwgVVVJRD00NGFjNWVhNi1jYjUzLTRjZDgtYTg3YS0wODZiMDgxZGRjZjkKY3JlYXRpbmcgc3dhcCBmaWxlICcvc3dhcC5pbWcnIG9mIDE1NTdNQiB0b29rIDAuMTgzIHNlY29uZHMKZmluaXNoOiBjbWQtaW5zdGFsbC9zdGFnZS1jdXJ0aG9va3MvYnVpbHRpbi9jbWQtY3VydGhvb2tzL3NldHRpbmctdXAtc3dhcDogU1VDQ0VTUzogc2V0dGluZyB1cCBzd2FwCnN0YXJ0OiBjbWQtaW5zdGFsbC9zdGFnZS1jdXJ0aG9va3MvYnVpbHRpbi9jbWQtY3VydGhvb2tzL2FwcGx5LW5ldHdvcmtpbmctY29uZmlnOiBhcHBseSBuZXR3b3JraW5nIGNvbmZpZwpjb3B5aW5nIGludGVyZmFjZXMKZmluaXNoOiBjbWQtaW5zdGFsbC9zdGFnZS1jdXJ0aG9va3MvYnVpbHRpbi9jbWQtY3VydGhvb2tzL2FwcGx5LW5ldHdvcmtpbmctY29uZmlnOiBTVUNDRVNTOiBhcHBseSBuZXR3b3JraW5nIGNvbmZpZwpzdGFydDogY21kLWluc3RhbGwvc3RhZ2UtY3VydGhvb2tzL2J1aWx0aW4vY21kLWN1cnRob29rcy93cml0aW5nLWV0Yy1mc3RhYjogd3JpdGluZyBldGMvZnN0YWIKZmluaXNoOiBjbWQtaW5zdGFsbC9zdGFnZS1jdXJ0aG9va3MvYnVpbHRpbi9jbWQtY3VydGhvb2tzL3dyaXRpbmctZXRjLWZzdGFiOiBTVUNDRVNTOiB3cml0aW5nIGV0Yy9mc3RhYgpzdGFydDogY21kLWluc3RhbGwvc3RhZ2UtY3VydGhvb2tzL2J1aWx0aW4vY21kLWN1cnRob29rcy9jb25maWd1cmluZy1tdWx0aXBhdGg6IGNvbmZpZ3VyaW5nIG11bHRpcGF0aApSdW5uaW5nIGNvbW1hbmQgWydsc2JsaycsICctLW5vaGVhZGluZ3MnLCAnLS1ieXRlcycsICctLXBhaXJzJywgJy0tb3V0cHV0PUFMSUdOTUVOVCxESVNDLUFMTixESVNDLUdSQU4sRElTQy1NQVgsRElTQy1aRVJPLEZTVFlQRSxHUk9VUCxLTkFNRSxMQUJFTCxMT0ctU0VDLE1BSjpNSU4sTUlOLUlPLE1PREUsTU9ERUwsTU9VTlRQT0lOVCxOQU1FLE9QVC1JTyxPV05FUixQSFktU0VDLFJNLFJPLFJPVEEsUlEtU0laRSxTSVpFLFNUQVRFLFRZUEUsVVVJRCcsICctLW5vZGVwcyddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzBdIChjYXB0dXJlPVRydWUpClJ1bm5pbmcgY29tbWFuZCBbJ2xzYmxrJywgJy0tbm9oZWFkaW5ncycsICctLWJ5dGVzJywgJy0tcGFpcnMnLCAnLS1vdXRwdXQ9QUxJR05NRU5ULERJU0MtQUxOLERJU0MtR1JBTixESVNDLU1BWCxESVNDLVpFUk8sRlNUWVBFLEdST1VQLEtOQU1FLExBQkVMLExPRy1TRUMsTUFKOk1JTixNSU4tSU8sTU9ERSxNT0RFTCxNT1VOVFBPSU5ULE5BTUUsT1BULUlPLE9XTkVSLFBIWS1TRUMsUk0sUk8sUk9UQSxSUS1TSVpFLFNJWkUsU1RBVEUsVFlQRSxVVUlEJywgJy9kZXYvZmQwJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9VHJ1ZSkKUnVubmluZyBjb21tYW5kIFsnbHNibGsnLCAnLS1ub2hlYWRpbmdzJywgJy0tYnl0ZXMnLCAnLS1wYWlycycsICctLW91dHB1dD1BTElHTk1FTlQsRElTQy1BTE4sRElTQy1HUkFOLERJU0MtTUFYLERJU0MtWkVSTyxGU1RZUEUsR1JPVVAsS05BTUUsTEFCRUwsTE9HLVNFQyxNQUo6TUlOLE1JTi1JTyxNT0RFLE1PREVMLE1PVU5UUE9JTlQsTkFNRSxPUFQtSU8sT1dORVIsUEhZLVNFQyxSTSxSTyxST1RBLFJRLVNJWkUsU0laRSxTVEFURSxUWVBFLFVVSUQnLCAnL2Rldi9sb29wMCddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzBdIChjYXB0dXJlPVRydWUpClJ1bm5pbmcgY29tbWFuZCBbJ2xzYmxrJywgJy0tbm9oZWFkaW5ncycsICctLWJ5dGVzJywgJy0tcGFpcnMnLCAnLS1vdXRwdXQ9QUxJR05NRU5ULERJU0MtQUxOLERJU0MtR1JBTixESVNDLU1BWCxESVNDLVpFUk8sRlNUWVBFLEdST1VQLEtOQU1FLExBQkVMLExPRy1TRUMsTUFKOk1JTixNSU4tSU8sTU9ERSxNT0RFTCxNT1VOVFBPSU5ULE5BTUUsT1BULUlPLE9XTkVSLFBIWS1TRUMsUk0sUk8sUk9UQSxSUS1TSVpFLFNJWkUsU1RBVEUsVFlQRSxVVUlEJywgJy9kZXYvbG9vcDEnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1UcnVlKQpSdW5uaW5nIGNvbW1hbmQgWydsc2JsaycsICctLW5vaGVhZGluZ3MnLCAnLS1ieXRlcycsICctLXBhaXJzJywgJy0tb3V0cHV0PUFMSUdOTUVOVCxESVNDLUFMTixESVNDLUdSQU4sRElTQy1NQVgsRElTQy1aRVJPLEZTVFlQRSxHUk9VUCxLTkFNRSxMQUJFTCxMT0ctU0VDLE1BSjpNSU4sTUlOLUlPLE1PREUsTU9ERUwsTU9VTlRQT0lOVCxOQU1FLE9QVC1JTyxPV05FUixQSFktU0VDLFJNLFJPLFJPVEEsUlEtU0laRSxTSVpFLFNUQVRFLFRZUEUsVVVJRCcsICcvZGV2L2xvb3AyJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9VHJ1ZSkKUnVubmluZyBjb21tYW5kIFsnbHNibGsnLCAnLS1ub2hlYWRpbmdzJywgJy0tYnl0ZXMnLCAnLS1wYWlycycsICctLW91dHB1dD1BTElHTk1FTlQsRElTQy1BTE4sRElTQy1HUkFOLERJU0MtTUFYLERJU0MtWkVSTyxGU1RZUEUsR1JPVVAsS05BTUUsTEFCRUwsTE9HLVNFQyxNQUo6TUlOLE1JTi1JTyxNT0RFLE1PREVMLE1PVU5UUE9JTlQsTkFNRSxPUFQtSU8sT1dORVIsUEhZLVNFQyxSTSxSTyxST1RBLFJRLVNJWkUsU0laRSxTVEFURSxUWVBFLFVVSUQnLCAnL2Rldi9sb29wMyddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzBdIChjYXB0dXJlPVRydWUpClJ1bm5pbmcgY29tbWFuZCBbJ2xzYmxrJywgJy0tbm9oZWFkaW5ncycsICctLWJ5dGVzJywgJy0tcGFpcnMnLCAnLS1vdXRwdXQ9QUxJR05NRU5ULERJU0MtQUxOLERJU0MtR1JBTixESVNDLU1BWCxESVNDLVpFUk8sRlNUWVBFLEdST1VQLEtOQU1FLExBQkVMLExPRy1TRUMsTUFKOk1JTixNSU4tSU8sTU9ERSxNT0RFTCxNT1VOVFBPSU5ULE5BTUUsT1BULUlPLE9XTkVSLFBIWS1TRUMsUk0sUk8sUk9UQSxSUS1TSVpFLFNJWkUsU1RBVEUsVFlQRSxVVUlEJywgJy9kZXYvc2RhJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9VHJ1ZSkKUnVubmluZyBjb21tYW5kIFsnbHNibGsnLCAnLS1ub2hlYWRpbmdzJywgJy0tYnl0ZXMnLCAnLS1wYWlycycsICctLW91dHB1dD1BTElHTk1FTlQsRElTQy1BTE4sRElTQy1HUkFOLERJU0MtTUFYLERJU0MtWkVSTyxGU1RZUEUsR1JPVVAsS05BTUUsTEFCRUwsTE9HLVNFQyxNQUo6TUlOLE1JTi1JTyxNT0RFLE1PREVMLE1PVU5UUE9JTlQsTkFNRSxPUFQtSU8sT1dORVIsUEhZLVNFQyxSTSxSTyxST1RBLFJRLVNJWkUsU0laRSxTVEFURSxUWVBFLFVVSUQnLCAnL2Rldi9zcjAnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1UcnVlKQpubyBkZXZpY2VzIGZvdW5kIHRvIHJlc2NhbgpSdW5uaW5nIGNvbW1hbmQgWydibGtpZCcsICctbycsICdmdWxsJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9VHJ1ZSkKZGV0ZWN0X211bHRpcGF0aCBmb3VuZCBibGtpZCBpbmZvOiB7Jy9kZXYvbG9vcDAnOiB7J1RZUEUnOiAnc3F1YXNoZnMnfSwgJy9kZXYvbG9vcDEnOiB7J1RZUEUnOiAnc3F1YXNoZnMnfSwgJy9kZXYvbG9vcDInOiB7J1RZUEUnOiAnc3F1YXNoZnMnfSwgJy9kZXYvbG9vcDMnOiB7J1RZUEUnOiAnc3F1YXNoZnMnfSwgJy9kZXYvc2RhMSc6IHsnUEFSVFVVSUQnOiAnMDhhMjE4YmYtYjA1NC00NjFiLWIxNjQtZWRiNDkwNDQyMjc5J30sICcvZGV2L3NkYTInOiB7J1VVSUQnOiAnYzhiMTk0M2MtOTc2Yi0xMWU3LTlhMzAtNTI1NDAwMTIzNDU2JywgJ1RZUEUnOiAnZXh0NCcsICdQQVJUVVVJRCc6ICdkYzUzOGViMy0xZjEzLTRjMDEtOThiOS01MGI2YjQ1NDQ5YTcnfSwgJy9kZXYvc3IwJzogeydVVUlEJzogJzIwMTctMDktMTItMDMtMzQtMjYtMDAnLCAnTEFCRUwnOiAnVWJ1bnR1IGN1c3RvbSBhbWQ2NCcsICdUWVBFJzogJ2lzbzk2NjAnLCAnUFRVVUlEJzogJzRhNzcyMGUyJywgJ1BUVFlQRSc6ICdkb3MnfX0KUnVubmluZyBjb21tYW5kIFsnbHNibGsnLCAnLS1ub2hlYWRpbmdzJywgJy0tYnl0ZXMnLCAnLS1wYWlycycsICctLW91dHB1dD1BTElHTk1FTlQsRElTQy1BTE4sRElTQy1HUkFOLERJU0MtTUFYLERJU0MtWkVSTyxGU1RZUEUsR1JPVVAsS05BTUUsTEFCRUwsTE9HLVNFQyxNQUo6TUlOLE1JTi1JTyxNT0RFLE1PREVMLE1PVU5UUE9JTlQsTkFNRSxPUFQtSU8sT1dORVIsUEhZLVNFQyxSTSxSTyxST1RBLFJRLVNJWkUsU0laRSxTVEFURSxUWVBFLFVVSUQnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1UcnVlKQp0YXJnZXRfZGV2czogWycvZGV2L3NkYTInXQovZGV2L3NkYTI6IGM4YjE5NDNjLTk3NmItMTFlNy05YTMwLTUyNTQwMDEyMzQ1NgpmaW5pc2g6IGNtZC1pbnN0YWxsL3N0YWdlLWN1cnRob29rcy9idWlsdGluL2NtZC1jdXJ0aG9va3MvY29uZmlndXJpbmctbXVsdGlwYXRoOiBTVUNDRVNTOiBjb25maWd1cmluZyBtdWx0aXBhdGgKc3RhcnQ6IGNtZC1pbnN0YWxsL3N0YWdlLWN1cnRob29rcy9idWlsdGluL2NtZC1jdXJ0aG9va3Mvc3lzdGVtLXVwZ3JhZGU6IHVwZGF0aW5nIHBhY2thZ2VzIG9uIHRhcmdldCBzeXN0ZW0Kc3lzdGVtX3VwZ3JhZGUgZGlzYWJsZWQgYnkgY29uZmlnLgpmaW5pc2g6IGNtZC1pbnN0YWxsL3N0YWdlLWN1cnRob29rcy9idWlsdGluL2NtZC1jdXJ0aG9va3Mvc3lzdGVtLXVwZ3JhZGU6IFNVQ0NFU1M6IHVwZGF0aW5nIHBhY2thZ2VzIG9uIHRhcmdldCBzeXN0ZW0Kc2V0dXAgZ3J1YiBvbiB0YXJnZXQgL3RtcC90bXB0eHptcGl1dS90YXJnZXQKY2hlY2tpbmc6IHsnaWQnOiAnZGlzay0wJywgJ3R5cGUnOiAnZGlzaycsICdwdGFibGUnOiAnZ3B0JywgJ3NlcmlhbCc6ICdRRU1VX0hBUkRESVNLX1FNMDAwMDEnLCAncGF0aCc6ICcvZGV2L3NkYScsICdtb2RlbCc6ICdRRU1VX0hBUkRESVNLJywgJ2dydWJfZGV2aWNlJzogVHJ1ZSwgJ3ByZXNlcnZlJzogVHJ1ZX0KZ2V0X3BhdGhfdG9fc3RvcmFnZV92b2x1bWUgZm9yIHZvbHVtZSBkaXNrLTAKUHJvY2Vzc2luZyBzZXJpYWwgUUVNVV9IQVJERElTS19RTTAwMDAxIHZpYSB1ZGV2IHRvIFFFTVVfSEFSRERJU0tfUU0wMDAwMQpkZXZzeW5jIGZvciAvZGV2L3NkYQpSdW5uaW5nIGNvbW1hbmQgWydwYXJ0cHJvYmUnLCAnL2Rldi9zZGEnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswLCAxXSAoY2FwdHVyZT1GYWxzZSkKUnVubmluZyBjb21tYW5kIFsndWRldmFkbScsICdzZXR0bGUnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1GYWxzZSkKZGV2c3luYyBoYXBweSAtIHBhdGggL2Rldi9zZGEgbm93IGV4aXN0cwpyZXR1cm4gdm9sdW1lIHBhdGggL2Rldi9zZGEKaW5zdGFsbF9kZXZpY2VzOiBbJy9kZXYvc2RhJ10KaW5zdGFsbGluZyBncnViIHRvIFsnL2Rldi9zZGEnXSBbcmVwbGFjZV9kZWZhdWx0PVRydWVdClJ1bm5pbmcgY29tbWFuZCBbJ21vdW50JywgJy0tYmluZCcsICcvZGV2JywgJy90bXAvdG1wdHh6bXBpdXUvdGFyZ2V0L2RldiddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzBdIChjYXB0dXJlPUZhbHNlKQpSdW5uaW5nIGNvbW1hbmQgWydtb3VudCcsICctLWJpbmQnLCAnL3Byb2MnLCAnL3RtcC90bXB0eHptcGl1dS90YXJnZXQvcHJvYyddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzBdIChjYXB0dXJlPUZhbHNlKQpSdW5uaW5nIGNvbW1hbmQgWydtb3VudCcsICctLWJpbmQnLCAnL3N5cycsICcvdG1wL3RtcHR4em1waXV1L3RhcmdldC9zeXMnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1GYWxzZSkKUnVubmluZyBjb21tYW5kIFsnc2gnLCAnLWMnLCAnZXhlYyAiJDAiICIkQCIgMj4mMScsICdpbnN0YWxsLWdydWInLCAnL3RtcC90bXB0eHptcGl1dS90YXJnZXQnLCAnL2Rldi9zZGEnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1UcnVlKQpbJ2luc3RhbGwtZ3J1YicsICcvdG1wL3RtcHR4em1waXV1L3RhcmdldCddCmNhcnJ5b3ZlciBjb21tYW5kIGxpbmUgcGFyYW1zOiAKY3VydGluIG5vbi11ZWZpOiBpbnN0YWxsaW5nIGdydWItcGMgdG86IC9kZXYvc2RhCisgcGtnPWdydWItcGMKKyBzaGlmdAorIGRwa2ctcmVjb25maWd1cmUgZ3J1Yi1wYwpwZXJsOiB3YXJuaW5nOiBTZXR0aW5nIGxvY2FsZSBmYWlsZWQuCnBlcmw6IHdhcm5pbmc6IFBsZWFzZSBjaGVjayB0aGF0IHlvdXIgbG9jYWxlIHNldHRpbmdzOgoJTEFOR1VBR0UgPSAodW5zZXQpLAoJTENfQUxMID0gKHVuc2V0KSwKCUxBTkcgPSAiZW5fVVMuVVRGLTgiCiAgICBhcmUgc3VwcG9ydGVkIGFuZCBpbnN0YWxsZWQgb24geW91ciBzeXN0ZW0uCnBlcmw6IHdhcm5pbmc6IEZhbGxpbmcgYmFjayB0byB0aGUgc3RhbmRhcmQgbG9jYWxlICgiQyIpLgpsb2NhbGU6IENhbm5vdCBzZXQgTENfQ1RZUEUgdG8gZGVmYXVsdCBsb2NhbGU6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKbG9jYWxlOiBDYW5ub3Qgc2V0IExDX01FU1NBR0VTIHRvIGRlZmF1bHQgbG9jYWxlOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CmxvY2FsZTogQ2Fubm90IHNldCBMQ19BTEwgdG8gZGVmYXVsdCBsb2NhbGU6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKcGVybDogd2FybmluZzogU2V0dGluZyBsb2NhbGUgZmFpbGVkLgpwZXJsOiB3YXJuaW5nOiBQbGVhc2UgY2hlY2sgdGhhdCB5b3VyIGxvY2FsZSBzZXR0aW5nczoKCUxBTkdVQUdFID0gKHVuc2V0KSwKCUxDX0FMTCA9ICh1bnNldCksCglMQU5HID0gImVuX1VTLlVURi04IgogICAgYXJlIHN1cHBvcnRlZCBhbmQgaW5zdGFsbGVkIG9uIHlvdXIgc3lzdGVtLgpwZXJsOiB3YXJuaW5nOiBGYWxsaW5nIGJhY2sgdG8gdGhlIHN0YW5kYXJkIGxvY2FsZSAoIkMiKS4KUmVwbGFjaW5nIGNvbmZpZyBmaWxlIC9ldGMvZGVmYXVsdC9ncnViIHdpdGggbmV3IHZlcnNpb24KcGVybDogd2FybmluZzogU2V0dGluZyBsb2NhbGUgZmFpbGVkLgpwZXJsOiB3YXJuaW5nOiBQbGVhc2UgY2hlY2sgdGhhdCB5b3VyIGxvY2FsZSBzZXR0aW5nczoKCUxBTkdVQUdFID0gKHVuc2V0KSwKCUxDX0FMTCA9ICh1bnNldCksCglMQU5HID0gImVuX1VTLlVURi04IgogICAgYXJlIHN1cHBvcnRlZCBhbmQgaW5zdGFsbGVkIG9uIHlvdXIgc3lzdGVtLgpwZXJsOiB3YXJuaW5nOiBGYWxsaW5nIGJhY2sgdG8gdGhlIHN0YW5kYXJkIGxvY2FsZSAoIkMiKS4KR2VuZXJhdGluZyBncnViIGNvbmZpZ3VyYXRpb24gZmlsZSAuLi4KV2FybmluZzogU2V0dGluZyBHUlVCX1RJTUVPVVQgdG8gYSBub24temVybyB2YWx1ZSB3aGVuIEdSVUJfSElEREVOX1RJTUVPVVQgaXMgc2V0IGlzIG5vIGxvbmdlciBzdXBwb3J0ZWQuCkZvdW5kIGxpbnV4IGltYWdlOiAvYm9vdC92bWxpbnV6LTQuMTIuMC0xMy1nZW5lcmljCkZvdW5kIGluaXRyZCBpbWFnZTogL2Jvb3QvaW5pdHJkLmltZy00LjEyLjAtMTMtZ2VuZXJpYwpGb3VuZCBsaW51eCBpbWFnZTogL2Jvb3Qvdm1saW51ei00LjEyLjAtMTItZ2VuZXJpYwpGb3VuZCBpbml0cmQgaW1hZ2U6IC9ib290L2luaXRyZC5pbWctNC4xMi4wLTEyLWdlbmVyaWMKZG9uZQorIHVwZGF0ZS1ncnViCkdlbmVyYXRpbmcgZ3J1YiBjb25maWd1cmF0aW9uIGZpbGUgLi4uCldhcm5pbmc6IFNldHRpbmcgR1JVQl9USU1FT1VUIHRvIGEgbm9uLXplcm8gdmFsdWUgd2hlbiBHUlVCX0hJRERFTl9USU1FT1VUIGlzIHNldCBpcyBubyBsb25nZXIgc3VwcG9ydGVkLgpGb3VuZCBsaW51eCBpbWFnZTogL2Jvb3Qvdm1saW51ei00LjEyLjAtMTMtZ2VuZXJpYwpGb3VuZCBpbml0cmQgaW1hZ2U6IC9ib290L2luaXRyZC5pbWctNC4xMi4wLTEzLWdlbmVyaWMKRm91bmQgbGludXggaW1hZ2U6IC9ib290L3ZtbGludXotNC4xMi4wLTEyLWdlbmVyaWMKRm91bmQgaW5pdHJkIGltYWdlOiAvYm9vdC9pbml0cmQuaW1nLTQuMTIuMC0xMi1nZW5lcmljCmRvbmUKKyBncnViLWluc3RhbGwgL2Rldi9zZGEKSW5zdGFsbGluZyBmb3IgaTM4Ni1wYyBwbGF0Zm9ybS4KSW5zdGFsbGF0aW9uIGZpbmlzaGVkLiBObyBlcnJvciByZXBvcnRlZC4KCgpSdW5uaW5nIGNvbW1hbmQgWyd1ZGV2YWRtJywgJ3NldHRsZSddIHdpdGggYWxsb3dlZCByZXR1cm4gY29kZXMgWzBdIChjYXB0dXJlPUZhbHNlKQpSdW5uaW5nIGNvbW1hbmQgWyd1bW91bnQnLCAnL3RtcC90bXB0eHptcGl1dS90YXJnZXQvc3lzJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9RmFsc2UpClJ1bm5pbmcgY29tbWFuZCBbJ3Vtb3VudCcsICcvdG1wL3RtcHR4em1waXV1L3RhcmdldC9wcm9jJ10gd2l0aCBhbGxvd2VkIHJldHVybiBjb2RlcyBbMF0gKGNhcHR1cmU9RmFsc2UpClJ1bm5pbmcgY29tbWFuZCBbJ3Vtb3VudCcsICcvdG1wL3RtcHR4em1waXV1L3RhcmdldC9kZXYnXSB3aXRoIGFsbG93ZWQgcmV0dXJuIGNvZGVzIFswXSAoY2FwdHVyZT1GYWxzZSkKZmluaXNoOiBjbWQtaW5zdGFsbC9zdGFnZS1jdXJ0aG9va3MvYnVpbHRpbi9jbWQtY3VydGhvb2tzOiBTVUNDRVNTOiBjdXJ0aW4gY29tbWFuZCBjdXJ0aG9va3MKc3RhcnQ6IGNtZC1pbnN0YWxsL3N0YWdlLWhvb2svYnVpbHRpbi9jbWQtaG9vazogY3VydGluIGNvbW1hbmQgaG9vawpGaW5hbGl6aW5nIC90bXAvdG1wdHh6bXBpdXUvdGFyZ2V0CmZpbmlzaDogY21kLWluc3RhbGwvc3RhZ2UtaG9vay9idWlsdGluL2NtZC1ob29rOiBTVUNDRVNTOiBjdXJ0aW4gY29tbWFuZCBob29rCmN1cnRpbjogSW5zdGFsbGF0aW9uIGZpbmlzaGVkLgo=", "path": "/var/log/curtin/install.log", "encoding": "base64"}], "origin": "curtin", "name": "cmd-install", "level": "DEBUG", "event_type": "finish", "timestamp": 1505187751.2239785, "description": "curtin command install", "result": "SUCCESS"}