TW9kdWxlTmVzdGVkQ29uc3RyYWludHNDaGVjayB7IGlzbyBvcmcoMykgZG9kKDYpIGludGVybmV0KDEpIHByaXZhdGUoNCkKCWVudGVycHJpc2UoMSkgc3BlbGlvKDkzNjMpIHNvZnR3YXJlKDEpIGFzbjFjKDUpIHRlc3QoMSkgNTAgMSB9CkRFRklOSVRJT05TIDo6PQpCRUdJTgoKSW50MSA6Oj0gSU5URUdFUgotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKEludDEpOiAoTUlOLi5NQVgpICAKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKEludDEpOiAoTUlOLi5NQVgpICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKEludDEpOiAoTUlOLi5NQVgpICAKCkludDIgOjo9IEludDEgKDAuLk1BWCkKLS0gQ29tYmluZWQgY29uc3RyYWludHM6ICgwLi5NQVgpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoSW50MSk6ICgwLi5NQVgpICAKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKEludDEpOiAoMC4uTUFYKSAgCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzIChJbnQxKTogKDAuLk1BWCkgIAoKSW50MyA6Oj0gSW50MiAoTUlOLi4xMCkKLS0gQ29tYmluZWQgY29uc3RyYWludHM6ICgwLi5NQVgpKE1JTi4uMTApCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoSW50MSk6ICgwLi4xMCkgIAotLSBPRVItdmlzaWJsZSBjb25zdHJhaW50cyAoSW50MSk6ICgwLi4xMCkgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoSW50MSk6ICgwLi4xMCkgIAoKSW50NCA6Oj0gSW50MyAoNS4uTUFYLC4uLiwxLi40KQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKDAuLk1BWCkoTUlOLi4xMCkoNS4uTUFYLC4uLiwxLi40KQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKEludDEpOiAoMS4uMTAsLi4uKSAgCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChJbnQxKTogKDEuLjEwLC4uLikgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoSW50MSk6ICgxLi4xMCwuLi4pICAKCkludDUgOjo9IEludDQgKE1JTi4uNSkKLS0gQ29tYmluZWQgY29uc3RyYWludHM6ICgwLi5NQVgpKE1JTi4uMTApKDUuLk1BWCkoTUlOLi41KQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKEludDEpOiAoNSkgIAotLSBPRVItdmlzaWJsZSBjb25zdHJhaW50cyAoSW50MSk6ICg1KSAgCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzIChJbnQxKTogKDUpICAKCnRlbiBJbnQxIDo6PSAxMAotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKEludDEpOiAoTUlOLi5NQVgpICAKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKEludDEpOiAoTUlOLi5NQVgpICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKEludDEpOiAoTUlOLi5NQVgpICAKCm90aGVyLXRlbiBJbnQyIDo6PSAxMAotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKEludDEpOiAoTUlOLi5NQVgpICAKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKEludDEpOiAoTUlOLi5NQVgpICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKEludDEpOiAoTUlOLi5NQVgpICAKCkV4dGVuc2libGVFeHRlbnNpb25zIDo6PSBJTlRFR0VSICgoMS4uMjU2LC4uLikgXiAoMS4uMjU2KSkKLS0gQ29tYmluZWQgY29uc3RyYWludHM6ICgoMS4uMjU2LC4uLikgXiAoMS4uMjU2KSkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChFeHRlbnNpYmxlRXh0ZW5zaW9ucyk6ICgxLi4yNTYsLi4uKSAgCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChFeHRlbnNpYmxlRXh0ZW5zaW9ucyk6ICgxLi4yNTYsLi4uKSAgCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzIChFeHRlbnNpYmxlRXh0ZW5zaW9ucyk6ICgxLi4yNTYsLi4uKSAgCgpTdHIxIDo6PSBJQTVTdHJpbmcKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChTdHIxKTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAoRlJPTSgiACIuLiJ/IikpCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChTdHIxKTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKFN0cjEpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIChGUk9NKCIAIi4uIn8iKSkKClN0cjIgOjo9IFN0cjEgKFNJWkUoTUlOLi4yMCB8IDI1Li4zMCkpCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoU0laRShNSU4uLjIwIHwgMjUuLjMwKSkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChTdHIxKTogKE1JTi4uTUFYKSAoU0laRSgwLi4yMCB8IDI1Li4zMCkpIChGUk9NKCIAIi4uIn8iKSkKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKFN0cjEpOiAoTUlOLi5NQVgpIChTSVpFKDAuLjIwIHwgMjUuLjMwKSkgCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzIChTdHIxKTogKE1JTi4uTUFYKSAoU0laRSgwLi4yMCB8IDI1Li4zMCkpIChGUk9NKCIAIi4uIn8iKSkKClN0cjMgOjo9IFN0cjIgKFNJWkUoMTAuLjI3KSkoRlJPTSgiQUJDIiB8ICJkZWYiKSkKLS0gQ29tYmluZWQgY29uc3RyYWludHM6IChTSVpFKE1JTi4uMjAgfCAyNS4uMzApKShTSVpFKDEwLi4yNykpKEZST00oIkFCQyIgfCAiZGVmIikpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoU3RyMSk6IChNSU4uLk1BWCkgKFNJWkUoMTAuLjIwIHwgMjUuLjI3KSkgKEZST00oIkEiLi4iQyIgfCAiZCIuLiJmIikpCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChTdHIxKTogKE1JTi4uTUFYKSAoU0laRSgxMC4uMjAgfCAyNS4uMjcpKSAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKFN0cjEpOiAoTUlOLi5NQVgpIChTSVpFKDEwLi4yMCB8IDI1Li4yNykpIChGUk9NKCJBIi4uIkMiIHwgImQiLi4iZiIpKQoKU3RyNCA6Oj0gSUE1U3RyaW5nICgiQUJDRCIgfCBTSVpFKDQpKQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKCJBQkNEIiB8IFNJWkUoNCkpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoU3RyNCk6IChNSU4uLk1BWCkgKFNJWkUoMC4uTUFYKSkgKEZST00oIgAiLi4ifyIpKQotLSBPRVItdmlzaWJsZSBjb25zdHJhaW50cyAoU3RyNCk6IChNSU4uLk1BWCkgKFNJWkUoMC4uTUFYKSkgCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzIChTdHI0KTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAoRlJPTSgiACIuLiJ/IikpCgpQRVItVmlzaWJsZSA6Oj0gSUE1U3RyaW5nIChGUk9NKCJBIi4uIkYiKSkKLS0gQ29tYmluZWQgY29uc3RyYWludHM6IChGUk9NKCJBIi4uIkYiKSkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChQRVItVmlzaWJsZSk6IChNSU4uLk1BWCkgKFNJWkUoMC4uTUFYKSkgKEZST00oIkEiLi4iRiIpKQotLSBPRVItdmlzaWJsZSBjb25zdHJhaW50cyAoUEVSLVZpc2libGUpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoUEVSLVZpc2libGUpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIChGUk9NKCJBIi4uIkYiKSkKClBFUi1WaXNpYmxlLTIgOjo9IFBFUi1WaXNpYmxlIChGUk9NKCJFIi4uIkYiKSkKLS0gQ29tYmluZWQgY29uc3RyYWludHM6IChGUk9NKCJBIi4uIkYiKSkoRlJPTSgiRSIuLiJGIikpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoUEVSLVZpc2libGUpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIChGUk9NKCJFIi4uIkYiKSkKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAoRlJPTSgiRSIuLiJGIikpCgpOb3QtUEVSLVZpc2libGUtMSA6Oj0gUEVSLVZpc2libGUgKEZST00oIkFCIikgfCBTSVpFKDEuLjIpKQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKEZST00oIkEiLi4iRiIpKShGUk9NKCJBQiIpIHwgU0laRSgxLi4yKSkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChQRVItVmlzaWJsZSk6IChNSU4uLk1BWCkgKFNJWkUoMC4uTUFYKSkgKEZST00oIkEiLi4iRiIpKQotLSBPRVItdmlzaWJsZSBjb25zdHJhaW50cyAoUEVSLVZpc2libGUpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoUEVSLVZpc2libGUpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIChGUk9NKCJBIi4uIkYiKSkKCk5vdC1QRVItVmlzaWJsZS0yIDo6PSBQRVItVmlzaWJsZSAoRlJPTSgiQUIiLC4uLikpCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoRlJPTSgiQSIuLiJGIikpKEZST00oIkFCIiwuLi4pKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAoRlJPTSgiQSIuLiJCIiwuLi4pKQotLSBPRVItdmlzaWJsZSBjb25zdHJhaW50cyAoUEVSLVZpc2libGUpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoUEVSLVZpc2libGUpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIChGUk9NKCJBIi4uIkYiKSkKCk5vdC1QRVItVmlzaWJsZS0zIDo6PSBQRVItVmlzaWJsZSAoRlJPTSgiQUIiKSwuLi4pCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoRlJPTSgiQSIuLiJGIikpKEZST00oIkFCIiksLi4uKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAoRlJPTSgiQSIuLiJCIiwuLi4pKQotLSBPRVItdmlzaWJsZSBjb25zdHJhaW50cyAoUEVSLVZpc2libGUpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoUEVSLVZpc2libGUpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIChGUk9NKCJBIi4uIkYiKSkKClNJWkUtYnV0LW5vdC1GUk9NIDo6PSBQRVItVmlzaWJsZSAoU0laRSgxLi40KSBeIEZST00oIkFCQ0QiLC4uLikpCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoRlJPTSgiQSIuLiJGIikpKFNJWkUoMS4uNCkgXiBGUk9NKCJBQkNEIiwuLi4pKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgxLi40KSkgKEZST00oIkEiLi4iRCIsLi4uKSkKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgxLi40KSkgCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzIChQRVItVmlzaWJsZSk6IChNSU4uLk1BWCkgKFNJWkUoMS4uNCkpIChGUk9NKCJBIi4uIkYiKSkKClNJWkUtYW5kLUZST00gOjo9IFBFUi1WaXNpYmxlIChTSVpFKDEuLjQpIF4gRlJPTSgiQUJDRCIpKQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKEZST00oIkEiLi4iRiIpKShTSVpFKDEuLjQpIF4gRlJPTSgiQUJDRCIpKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgxLi40KSkgKEZST00oIkEiLi4iRCIpKQotLSBPRVItdmlzaWJsZSBjb25zdHJhaW50cyAoUEVSLVZpc2libGUpOiAoTUlOLi5NQVgpIChTSVpFKDEuLjQpKSAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgxLi40KSkgKEZST00oIkEiLi4iRCIpKQoKTmVpdGhlci1TSVpFLW5vci1GUk9NIDo6PSBQRVItVmlzaWJsZSAoU0laRSgxLi40KSB8IEZST00oIkFCQ0QiLC4uLikpCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoRlJPTSgiQSIuLiJGIikpKFNJWkUoMS4uNCkgfCBGUk9NKCJBQkNEIiwuLi4pKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAoRlJPTSgiQSIuLiJGIikpCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChQRVItVmlzaWJsZSk6IChNSU4uLk1BWCkgKFNJWkUoMC4uTUFYKSkgCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzIChQRVItVmlzaWJsZSk6IChNSU4uLk1BWCkgKFNJWkUoMC4uTUFYKSkgKEZST00oIkEiLi4iRiIpKQoKVXRmOC00IDo6PSBVVEY4U3RyaW5nIChGUk9NKCJBIi4uIloiKSkKLS0gQ29tYmluZWQgY29uc3RyYWludHM6IChGUk9NKCJBIi4uIloiKSkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChVdGY4LTQpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIChGUk9NKCJBIi4uIloiKSkKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKFV0ZjgtNCk6IChNSU4uLk1BWCkgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoVXRmOC00KTogICAKClV0ZjgtMyA6Oj0gVXRmOC0yIChGUk9NKCJBIi4uIloiIHwgImEiLi4ieiIpKQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKFNJWkUoMS4uMikpKEZST00oIkEiLi4iWiIgfCAiYSIuLiJ6IikpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoVXRmOC0xKTogKE1JTi4uTUFYKSAoU0laRSgxLi4yKSkgKEZST00oIkEiLi4iWiIgfCAiYSIuLiJ6IikpCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChVdGY4LTEpOiAoTUlOLi5NQVgpICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKFV0ZjgtMSk6ICAgCgpVdGY4LTIgOjo9IFV0ZjgtMSAoU0laRSgxLi4yKSkKLS0gQ29tYmluZWQgY29uc3RyYWludHM6IChTSVpFKDEuLjIpKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKFV0ZjgtMSk6IChNSU4uLk1BWCkgKFNJWkUoMS4uMikpIChGUk9NKCIAIi4uIv8iKSkKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKFV0ZjgtMSk6IChNSU4uLk1BWCkgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoVXRmOC0xKTogICAKClV0ZjgtMSA6Oj0gVVRGOFN0cmluZwotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKFV0ZjgtMSk6IChNSU4uLk1BWCkgKFNJWkUoMC4uTUFYKSkgKEZST00oIgAiLi4i/yIpKQotLSBPRVItdmlzaWJsZSBjb25zdHJhaW50cyAoVXRmOC0xKTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKFV0ZjgtMSk6ICAgCgpWaXNpYmxlSWRlbnRpZmllciA6Oj0gSWRlbnRpZmllcgotLSBDb21iaW5lZCBjb25zdHJhaW50czogKEZST00oIkEiIHwgImEiIHwgIkIiIHwgImIiIHwgIkMiIHwgImMiIHwgIkQiIHwgImQiIHwgIkUiIHwgImUiIHwgIkYiIHwgImYiIHwgIkciIHwgImciIHwgIkgiIHwgImgiIHwgIkkiIHwgImkiIHwgIkoiIHwgImoiIHwgIksiIHwgImsiIHwgIkwiIHwgImwiIHwgIk0iIHwgIm0iIHwgIk4iIHwgIm4iIHwgIk8iIHwgIm8iIHwgIlAiIHwgInAiIHwgIlEiIHwgInEiIHwgIlIiIHwgInIiIHwgIlMiIHwgInMiIHwgIlQiIHwgInQiIHwgIlUiIHwgInUiIHwgIlYiIHwgInYiIHwgIlciIHwgInciIHwgIlgiIHwgIngiIHwgIlkiIHwgInkiIHwgIloiIHwgInoiIHwgIiQiIHwgIl8iIHwgIjAiIHwgIjEiIHwgIjIiIHwgIjMiIHwgIjQiIHwgIjUiIHwgIjYiIHwgIjciIHwgIjgiIHwgIjkiKSkoU0laRSgxLi4zMikpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoSWRlbnRpZmllcik6IChNSU4uLk1BWCkgKFNJWkUoMS4uMzIpKSAoRlJPTSgiJCIgfCAiMCIuLiI5IiB8ICJBIi4uIloiIHwgIl8iIHwgImEiLi4ieiIpKQotLSBPRVItdmlzaWJsZSBjb25zdHJhaW50cyAoSWRlbnRpZmllcik6IChNSU4uLk1BWCkgKFNJWkUoMS4uMzIpKSAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKElkZW50aWZpZXIpOiAoTUlOLi5NQVgpIChTSVpFKDEuLjMyKSkgKEZST00oIiQiIHwgIjAiLi4iOSIgfCAiQSIuLiJaIiB8ICJfIiB8ICJhIi4uInoiKSkKClNlcXVlbmNlIDo6PSBTRVFVRU5DRSB7CiAgICBpbnQxLWMJIEludDEgKC0yLi5NQVgpCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoLTIuLk1BWCkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChJbnQxKTogKC0yLi5NQVgpICAKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKEludDEpOiAoLTIuLk1BWCkgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoSW50MSk6ICgtMi4uTUFYKSAgCiBERUZBVUxUIDMsCiAgICBpbnQ0CSBbMl0gRVhQTElDSVQgSW50NAotLSBDb21iaW5lZCBjb25zdHJhaW50czogKDAuLk1BWCkoTUlOLi4xMCkoNS4uTUFYLC4uLiwxLi40KQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKEludDEpOiAoMS4uMTAsLi4uKSAgCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChJbnQxKTogKDEuLjEwLC4uLikgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoSW50MSk6ICgxLi4xMCwuLi4pICAKLAogICAgaW50NC1jCSBJbnQ0IChNSU4uLjcpCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoMC4uTUFYKShNSU4uLjEwKSg1Li5NQVgpKE1JTi4uNykKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChJbnQxKTogKDUuLjcpICAKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKEludDEpOiAoNS4uNykgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoSW50MSk6ICg1Li43KSAgCiwKICAgIGJvb2wJIEJPT0xFQU4KLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChib29sKTogKE1JTi4uTUFYKSAgCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChib29sKTogKE1JTi4uTUFYKSAgCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzIChib29sKTogKE1JTi4uTUFYKSAgCiBERUZBVUxUIDEsCiAgICBlbnVtLWMJIEVOVU1FUkFURUQgewogICAgICAgIG9uZSgxKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKG9uZSk6ICAgCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChvbmUpOiAgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAob25lKTogICAKLCAgICAKICAgICAgICB0d28oMikKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzICh0d28pOiAgIAotLSBPRVItdmlzaWJsZSBjb25zdHJhaW50cyAodHdvKTogICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKHR3byk6ICAgCiwgICAgCiAgICAgICAgLi4uLCAgICAKICAgICAgICB0aHJlZSgzKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKHRocmVlKTogICAKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKHRocmVlKTogICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKHRocmVlKTogICAKCiAgICB9Ci0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoZW51bS1jKTogKE1JTi4uTUFYKSAgCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChlbnVtLWMpOiAoTUlOLi5NQVgpICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKGVudW0tYyk6IChNSU4uLk1BWCkgIAosCiAgICBudWxsCSBOVUxMCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAobnVsbCk6ICAgCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChudWxsKTogICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKG51bGwpOiAgIAogT1BUSU9OQUwsCiAgICAuLi4sCiAgICBpbnQ1LWMJIEludDUgKDUpCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoMC4uTUFYKShNSU4uLjEwKSg1Li5NQVgpKE1JTi4uNSkoNSkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChJbnQxKTogKDUpICAKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKEludDEpOiAoNSkgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoSW50MSk6ICg1KSAgCiBPUFRJT05BTAp9Ci0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoU2VxdWVuY2UpOiAgIAotLSBPRVItdmlzaWJsZSBjb25zdHJhaW50cyAoU2VxdWVuY2UpOiAgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoU2VxdWVuY2UpOiAgIAoKU2VxdWVuY2VPZiA6Oj0gU0VRVUVOQ0UgKFNJWkUoMS4uMikpIE9GIFNlcXVlbmNlCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoU2VxdWVuY2UpOiAgIAotLSBPRVItdmlzaWJsZSBjb25zdHJhaW50cyAoU2VxdWVuY2UpOiAgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoU2VxdWVuY2UpOiAgIAoKLS0gQ29tYmluZWQgY29uc3RyYWludHM6IChTSVpFKDEuLjIpKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKFNlcXVlbmNlT2YpOiAgKFNJWkUoMS4uMikpIAotLSBPRVItdmlzaWJsZSBjb25zdHJhaW50cyAoU2VxdWVuY2VPZik6ICAoU0laRSgxLi4yKSkgCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzIChTZXF1ZW5jZU9mKTogIChTSVpFKDEuLjIpKSAKCkVudW0wIDo6PSBFTlVNRVJBVEVEIHsKICAgIG9uZSgwKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKG9uZSk6ICAgCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChvbmUpOiAgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAob25lKTogICAKLAogICAgdHdvKDEpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAodHdvKTogICAKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKHR3byk6ICAgCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzICh0d28pOiAgIAoKfQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKEVudW0wKTogKE1JTi4uTUFYKSAgCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChFbnVtMCk6IChNSU4uLk1BWCkgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoRW51bTApOiAoTUlOLi5NQVgpICAKCkVudW0xIDo6PSBFTlVNRVJBVEVEIHsKICAgIG9uZSgwKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKG9uZSk6ICAgCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChvbmUpOiAgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAob25lKTogICAKLAogICAgdHdvKDEpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAodHdvKTogICAKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKHR3byk6ICAgCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzICh0d28pOiAgIAoKfSAoMCkKLS0gQ29tYmluZWQgY29uc3RyYWludHM6ICgwKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKEVudW0xKTogKDApICAKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKEVudW0xKTogKDApICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKEVudW0xKTogKDApICAKCkVORAoKSWRlbnRpZmllck1vZHVsZSB7IGlzbyBvcmcoMykgZG9kKDYpIGludGVybmV0KDEpIHByaXZhdGUoNCkgZW50ZXJwcmlzZSgxKQoJc3BlbGlvKDkzNjMpIHNvZnR3YXJlKDEpIGFzbjFjKDUpIHRlc3QoMSkgNTAgMiB9CkRFRklOSVRJT05TIDo6PQpCRUdJTgoKbWF4SWRlbnRpZmllciBJTlRFR0VSIDo6PSAzMgotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKG1heElkZW50aWZpZXIpOiAoTUlOLi5NQVgpICAKLS0gT0VSLXZpc2libGUgY29uc3RyYWludHMgKG1heElkZW50aWZpZXIpOiAoTUlOLi5NQVgpICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKG1heElkZW50aWZpZXIpOiAoTUlOLi5NQVgpICAKCklkZW50aWZpZXIgOjo9IFZpc2libGVTdHJpbmcgKEZST00oIkEiIHwgImEiIHwgIkIiIHwgImIiIHwgIkMiIHwgImMiIHwgIkQiIHwgImQiIHwgIkUiIHwgImUiIHwgIkYiIHwgImYiIHwgIkciIHwgImciIHwgIkgiIHwgImgiIHwgIkkiIHwgImkiIHwgIkoiIHwgImoiIHwgIksiIHwgImsiIHwgIkwiIHwgImwiIHwgIk0iIHwgIm0iIHwgIk4iIHwgIm4iIHwgIk8iIHwgIm8iIHwgIlAiIHwgInAiIHwgIlEiIHwgInEiIHwgIlIiIHwgInIiIHwgIlMiIHwgInMiIHwgIlQiIHwgInQiIHwgIlUiIHwgInUiIHwgIlYiIHwgInYiIHwgIlciIHwgInciIHwgIlgiIHwgIngiIHwgIlkiIHwgInkiIHwgIloiIHwgInoiIHwgIiQiIHwgIl8iIHwgIjAiIHwgIjEiIHwgIjIiIHwgIjMiIHwgIjQiIHwgIjUiIHwgIjYiIHwgIjciIHwgIjgiIHwgIjkiKSkoU0laRSgxLi4zMikpCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoRlJPTSgiQSIgfCAiYSIgfCAiQiIgfCAiYiIgfCAiQyIgfCAiYyIgfCAiRCIgfCAiZCIgfCAiRSIgfCAiZSIgfCAiRiIgfCAiZiIgfCAiRyIgfCAiZyIgfCAiSCIgfCAiaCIgfCAiSSIgfCAiaSIgfCAiSiIgfCAiaiIgfCAiSyIgfCAiayIgfCAiTCIgfCAibCIgfCAiTSIgfCAibSIgfCAiTiIgfCAibiIgfCAiTyIgfCAibyIgfCAiUCIgfCAicCIgfCAiUSIgfCAicSIgfCAiUiIgfCAiciIgfCAiUyIgfCAicyIgfCAiVCIgfCAidCIgfCAiVSIgfCAidSIgfCAiViIgfCAidiIgfCAiVyIgfCAidyIgfCAiWCIgfCAieCIgfCAiWSIgfCAieSIgfCAiWiIgfCAieiIgfCAiJCIgfCAiXyIgfCAiMCIgfCAiMSIgfCAiMiIgfCAiMyIgfCAiNCIgfCAiNSIgfCAiNiIgfCAiNyIgfCAiOCIgfCAiOSIpKShTSVpFKDEuLjMyKSkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChJZGVudGlmaWVyKTogKE1JTi4uTUFYKSAoU0laRSgxLi4zMikpIChGUk9NKCIkIiB8ICIwIi4uIjkiIHwgIkEiLi4iWiIgfCAiXyIgfCAiYSIuLiJ6IikpCi0tIE9FUi12aXNpYmxlIGNvbnN0cmFpbnRzIChJZGVudGlmaWVyKTogKE1JTi4uTUFYKSAoU0laRSgxLi4zMikpIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoSWRlbnRpZmllcik6IChNSU4uLk1BWCkgKFNJWkUoMS4uMzIpKSAoRlJPTSgiJCIgfCAiMCIuLiI5IiB8ICJBIi4uIloiIHwgIl8iIHwgImEiLi4ieiIpKQoKRU5ECg==