TW9kdWxlTmVzdGVkQ29uc3RyYWludHNDaGVjayB7aXNvIG9yZygzKSBkb2QoNikgaW50ZXJuZXQoMSkgcHJpdmF0ZSg0KQoJZW50ZXJwcmlzZSgxKSBzcGVsaW8oOTM2Mykgc29mdHdhcmUoMSkgYXNuMWMoNSkgdGVzdCgxKQoJNTAgMSB9CkRFRklOSVRJT05TIDo6PQpCRUdJTgoKSW50MSA6Oj0gSU5URUdFUgotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKEludDEpOiAoTUlOLi5NQVgpICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKEludDEpOiAoTUlOLi5NQVgpICAKCkludDIgOjo9IEludDEgKDAuLk1BWCkKLS0gQ29tYmluZWQgY29uc3RyYWludHM6ICgwLi5NQVgpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoSW50MSk6ICgwLi5NQVgpICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKEludDEpOiAoMC4uTUFYKSAgCgpJbnQzIDo6PSBJbnQyIChNSU4uLjEwKQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKDAuLk1BWCkoTUlOLi4xMCkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChJbnQxKTogKDAuLjEwKSAgCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzIChJbnQxKTogKDAuLjEwKSAgCgpJbnQ0IDo6PSBJbnQzICg1Li5NQVgsLi4uLDEuLjQpCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoMC4uTUFYKShNSU4uLjEwKSg1Li5NQVgsLi4uLDEuLjQpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoSW50MSk6ICgxLi4xMCwuLi4pICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKEludDEpOiAoMS4uMTAsLi4uKSAgCgpJbnQ1IDo6PSBJbnQ0IChNSU4uLjUpCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoMC4uTUFYKShNSU4uLjEwKSg1Li5NQVgpKE1JTi4uNSkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChJbnQxKTogKDUpICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKEludDEpOiAoNSkgIAoKdGVuIEludDEgOjo9IDEwCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoSW50MSk6IChNSU4uLk1BWCkgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoSW50MSk6IChNSU4uLk1BWCkgIAoKb3RoZXItdGVuIEludDIgOjo9IDEwCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoSW50MSk6IChNSU4uLk1BWCkgIAotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoSW50MSk6IChNSU4uLk1BWCkgIAoKRXh0ZW5zaWJsZUV4dGVuc2lvbnMgOjo9IElOVEVHRVIgKCgxLi4yNTYsLi4uKSBeICgxLi4yNTYpKQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKCgxLi4yNTYsLi4uKSBeICgxLi4yNTYpKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKEV4dGVuc2libGVFeHRlbnNpb25zKTogKDEuLjI1NiwuLi4pICAKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKEV4dGVuc2libGVFeHRlbnNpb25zKTogKDEuLjI1NiwuLi4pICAKClN0cjEgOjo9IElBNVN0cmluZwotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKFN0cjEpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIChGUk9NKCIAIi4uIn8iKSkKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKFN0cjEpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIChGUk9NKCIAIi4uIn8iKSkKClN0cjIgOjo9IFN0cjEgKFNJWkUoTUlOLi4yMCB8IDI1Li4zMCkpCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoU0laRShNSU4uLjIwIHwgMjUuLjMwKSkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChTdHIxKTogKE1JTi4uTUFYKSAoU0laRSgwLi4yMCB8IDI1Li4zMCkpIChGUk9NKCIAIi4uIn8iKSkKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKFN0cjEpOiAoTUlOLi5NQVgpIChTSVpFKDAuLjIwIHwgMjUuLjMwKSkgKEZST00oIgAiLi4ifyIpKQoKU3RyMyA6Oj0gU3RyMiAoU0laRSgxMC4uMjcpKShGUk9NKCJBQkMiIHwgImRlZiIpKQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKFNJWkUoTUlOLi4yMCB8IDI1Li4zMCkpKFNJWkUoMTAuLjI3KSkoRlJPTSgiQUJDIiB8ICJkZWYiKSkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChTdHIxKTogKE1JTi4uTUFYKSAoU0laRSgxMC4uMjAgfCAyNS4uMjcpKSAoRlJPTSgiQSIuLiJDIiB8ICJkIi4uImYiKSkKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKFN0cjEpOiAoTUlOLi5NQVgpIChTSVpFKDEwLi4yMCB8IDI1Li4yNykpIChGUk9NKCJBIi4uIkMiIHwgImQiLi4iZiIpKQoKU3RyNCA6Oj0gSUE1U3RyaW5nICgiQUJDRCIgfCBTSVpFKDQpKQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKCJBQkNEIiB8IFNJWkUoNCkpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoU3RyNCk6IChNSU4uLk1BWCkgKFNJWkUoMC4uTUFYKSkgKEZST00oIgAiLi4ifyIpKQotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoU3RyNCk6IChNSU4uLk1BWCkgKFNJWkUoMC4uTUFYKSkgKEZST00oIgAiLi4ifyIpKQoKUEVSLVZpc2libGUgOjo9IElBNVN0cmluZyAoRlJPTSgiQSIuLiJGIikpCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoRlJPTSgiQSIuLiJGIikpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoUEVSLVZpc2libGUpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIChGUk9NKCJBIi4uIkYiKSkKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAoRlJPTSgiQSIuLiJGIikpCgpQRVItVmlzaWJsZS0yIDo6PSBQRVItVmlzaWJsZSAoRlJPTSgiRSIuLiJGIikpCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoRlJPTSgiQSIuLiJGIikpKEZST00oIkUiLi4iRiIpKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAoRlJPTSgiRSIuLiJGIikpCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzIChQRVItVmlzaWJsZSk6IChNSU4uLk1BWCkgKFNJWkUoMC4uTUFYKSkgKEZST00oIkUiLi4iRiIpKQoKTm90LVBFUi1WaXNpYmxlLTEgOjo9IFBFUi1WaXNpYmxlIChGUk9NKCJBQiIpIHwgU0laRSgxLi4yKSkKLS0gQ29tYmluZWQgY29uc3RyYWludHM6IChGUk9NKCJBIi4uIkYiKSkoRlJPTSgiQUIiKSB8IFNJWkUoMS4uMikpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoUEVSLVZpc2libGUpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIChGUk9NKCJBIi4uIkYiKSkKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAoRlJPTSgiQSIuLiJGIikpCgpOb3QtUEVSLVZpc2libGUtMiA6Oj0gUEVSLVZpc2libGUgKEZST00oIkFCIiwuLi4pKQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKEZST00oIkEiLi4iRiIpKShGUk9NKCJBQiIsLi4uKSkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChQRVItVmlzaWJsZSk6IChNSU4uLk1BWCkgKFNJWkUoMC4uTUFYKSkgKEZST00oIkEiLi4iQiIsLi4uKSkKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAoRlJPTSgiQSIuLiJGIikpCgpOb3QtUEVSLVZpc2libGUtMyA6Oj0gUEVSLVZpc2libGUgKEZST00oIkFCIiksLi4uKQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKEZST00oIkEiLi4iRiIpKShGUk9NKCJBQiIpLC4uLikKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChQRVItVmlzaWJsZSk6IChNSU4uLk1BWCkgKFNJWkUoMC4uTUFYKSkgKEZST00oIkEiLi4iQiIsLi4uKSkKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAoRlJPTSgiQSIuLiJGIikpCgpTSVpFLWJ1dC1ub3QtRlJPTSA6Oj0gUEVSLVZpc2libGUgKFNJWkUoMS4uNCkgXiBGUk9NKCJBQkNEIiwuLi4pKQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKEZST00oIkEiLi4iRiIpKShTSVpFKDEuLjQpIF4gRlJPTSgiQUJDRCIsLi4uKSkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChQRVItVmlzaWJsZSk6IChNSU4uLk1BWCkgKFNJWkUoMS4uNCkpIChGUk9NKCJBIi4uIkQiLC4uLikpCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzIChQRVItVmlzaWJsZSk6IChNSU4uLk1BWCkgKFNJWkUoMS4uNCkpIChGUk9NKCJBIi4uIkYiKSkKClNJWkUtYW5kLUZST00gOjo9IFBFUi1WaXNpYmxlIChTSVpFKDEuLjQpIF4gRlJPTSgiQUJDRCIpKQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKEZST00oIkEiLi4iRiIpKShTSVpFKDEuLjQpIF4gRlJPTSgiQUJDRCIpKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgxLi40KSkgKEZST00oIkEiLi4iRCIpKQotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoUEVSLVZpc2libGUpOiAoTUlOLi5NQVgpIChTSVpFKDEuLjQpKSAoRlJPTSgiQSIuLiJEIikpCgpOZWl0aGVyLVNJWkUtbm9yLUZST00gOjo9IFBFUi1WaXNpYmxlIChTSVpFKDEuLjQpIHwgRlJPTSgiQUJDRCIsLi4uKSkKLS0gQ29tYmluZWQgY29uc3RyYWludHM6IChGUk9NKCJBIi4uIkYiKSkoU0laRSgxLi40KSB8IEZST00oIkFCQ0QiLC4uLikpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoUEVSLVZpc2libGUpOiAoTUlOLi5NQVgpIChTSVpFKDAuLk1BWCkpIChGUk9NKCJBIi4uIkYiKSkKLS0gUEVSLXZpc2libGUgY29uc3RyYWludHMgKFBFUi1WaXNpYmxlKTogKE1JTi4uTUFYKSAoU0laRSgwLi5NQVgpKSAoRlJPTSgiQSIuLiJGIikpCgpVdGY4LTMgOjo9IFV0ZjgtMiAoRlJPTSgiQSIuLiJaIiB8ICJhIi4uInoiKSkKLS0gQ29tYmluZWQgY29uc3RyYWludHM6IChTSVpFKDEuLjIpKShGUk9NKCJBIi4uIloiIHwgImEiLi4ieiIpKQotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKFV0ZjgtMSk6IChNSU4uLk1BWCkgKFNJWkUoMS4uMikpIChGUk9NKCJBIi4uIloiIHwgImEiLi4ieiIpKQotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoVXRmOC0xKTogICAKClV0ZjgtMiA6Oj0gVXRmOC0xIChTSVpFKDEuLjIpKQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKFNJWkUoMS4uMikpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoVXRmOC0xKTogKE1JTi4uTUFYKSAoU0laRSgxLi4yKSkgKEZST00oIgAiLi4i/yIpKQotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoVXRmOC0xKTogICAKClV0ZjgtMSA6Oj0gVVRGOFN0cmluZwotLSBQcmFjdGljYWwgY29uc3RyYWludHMgKFV0ZjgtMSk6IChNSU4uLk1BWCkgKFNJWkUoMC4uTUFYKSkgKEZST00oIgAiLi4i/yIpKQotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoVXRmOC0xKTogICAKClZpc2libGVJZGVudGlmaWVyIDo6PSBJZGVudGlmaWVyCi0tIENvbWJpbmVkIGNvbnN0cmFpbnRzOiAoRlJPTSgiQSIgfCAiYSIgfCAiQiIgfCAiYiIgfCAiQyIgfCAiYyIgfCAiRCIgfCAiZCIgfCAiRSIgfCAiZSIgfCAiRiIgfCAiZiIgfCAiRyIgfCAiZyIgfCAiSCIgfCAiaCIgfCAiSSIgfCAiaSIgfCAiSiIgfCAiaiIgfCAiSyIgfCAiayIgfCAiTCIgfCAibCIgfCAiTSIgfCAibSIgfCAiTiIgfCAibiIgfCAiTyIgfCAibyIgfCAiUCIgfCAicCIgfCAiUSIgfCAicSIgfCAiUiIgfCAiciIgfCAiUyIgfCAicyIgfCAiVCIgfCAidCIgfCAiVSIgfCAidSIgfCAiViIgfCAidiIgfCAiVyIgfCAidyIgfCAiWCIgfCAieCIgfCAiWSIgfCAieSIgfCAiWiIgfCAieiIgfCAiJCIgfCAiXyIgfCAiMCIgfCAiMSIgfCAiMiIgfCAiMyIgfCAiNCIgfCAiNSIgfCAiNiIgfCAiNyIgfCAiOCIgfCAiOSIpKShTSVpFKDEuLjMyKSkKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChJZGVudGlmaWVyKTogKE1JTi4uTUFYKSAoU0laRSgxLi4zMikpIChGUk9NKCIkIiB8ICIwIi4uIjkiIHwgIkEiLi4iWiIgfCAiXyIgfCAiYSIuLiJ6IikpCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzIChJZGVudGlmaWVyKTogKE1JTi4uTUFYKSAoU0laRSgxLi4zMikpIChGUk9NKCIkIiB8ICIwIi4uIjkiIHwgIkEiLi4iWiIgfCAiXyIgfCAiYSIuLiJ6IikpCgpFTkQKCklkZW50aWZpZXJNb2R1bGUge2lzbyBvcmcoMykgZG9kKDYpIGludGVybmV0KDEpIHByaXZhdGUoNCkKCWVudGVycHJpc2UoMSkgc3BlbGlvKDkzNjMpIHNvZnR3YXJlKDEpIGFzbjFjKDUpIHRlc3QoMSkKCTUwIDIgfQpERUZJTklUSU9OUyA6Oj0KQkVHSU4KCm1heElkZW50aWZpZXIgSU5URUdFUiA6Oj0gMzIKLS0gUHJhY3RpY2FsIGNvbnN0cmFpbnRzIChtYXhJZGVudGlmaWVyKTogKE1JTi4uTUFYKSAgCi0tIFBFUi12aXNpYmxlIGNvbnN0cmFpbnRzIChtYXhJZGVudGlmaWVyKTogKE1JTi4uTUFYKSAgCgpJZGVudGlmaWVyIDo6PSBWaXNpYmxlU3RyaW5nIChGUk9NKCJBIiB8ICJhIiB8ICJCIiB8ICJiIiB8ICJDIiB8ICJjIiB8ICJEIiB8ICJkIiB8ICJFIiB8ICJlIiB8ICJGIiB8ICJmIiB8ICJHIiB8ICJnIiB8ICJIIiB8ICJoIiB8ICJJIiB8ICJpIiB8ICJKIiB8ICJqIiB8ICJLIiB8ICJrIiB8ICJMIiB8ICJsIiB8ICJNIiB8ICJtIiB8ICJOIiB8ICJuIiB8ICJPIiB8ICJvIiB8ICJQIiB8ICJwIiB8ICJRIiB8ICJxIiB8ICJSIiB8ICJyIiB8ICJTIiB8ICJzIiB8ICJUIiB8ICJ0IiB8ICJVIiB8ICJ1IiB8ICJWIiB8ICJ2IiB8ICJXIiB8ICJ3IiB8ICJYIiB8ICJ4IiB8ICJZIiB8ICJ5IiB8ICJaIiB8ICJ6IiB8ICIkIiB8ICJfIiB8ICIwIiB8ICIxIiB8ICIyIiB8ICIzIiB8ICI0IiB8ICI1IiB8ICI2IiB8ICI3IiB8ICI4IiB8ICI5IikpKFNJWkUoMS4uMzIpKQotLSBDb21iaW5lZCBjb25zdHJhaW50czogKEZST00oIkEiIHwgImEiIHwgIkIiIHwgImIiIHwgIkMiIHwgImMiIHwgIkQiIHwgImQiIHwgIkUiIHwgImUiIHwgIkYiIHwgImYiIHwgIkciIHwgImciIHwgIkgiIHwgImgiIHwgIkkiIHwgImkiIHwgIkoiIHwgImoiIHwgIksiIHwgImsiIHwgIkwiIHwgImwiIHwgIk0iIHwgIm0iIHwgIk4iIHwgIm4iIHwgIk8iIHwgIm8iIHwgIlAiIHwgInAiIHwgIlEiIHwgInEiIHwgIlIiIHwgInIiIHwgIlMiIHwgInMiIHwgIlQiIHwgInQiIHwgIlUiIHwgInUiIHwgIlYiIHwgInYiIHwgIlciIHwgInciIHwgIlgiIHwgIngiIHwgIlkiIHwgInkiIHwgIloiIHwgInoiIHwgIiQiIHwgIl8iIHwgIjAiIHwgIjEiIHwgIjIiIHwgIjMiIHwgIjQiIHwgIjUiIHwgIjYiIHwgIjciIHwgIjgiIHwgIjkiKSkoU0laRSgxLi4zMikpCi0tIFByYWN0aWNhbCBjb25zdHJhaW50cyAoSWRlbnRpZmllcik6IChNSU4uLk1BWCkgKFNJWkUoMS4uMzIpKSAoRlJPTSgiJCIgfCAiMCIuLiI5IiB8ICJBIi4uIloiIHwgIl8iIHwgImEiLi4ieiIpKQotLSBQRVItdmlzaWJsZSBjb25zdHJhaW50cyAoSWRlbnRpZmllcik6IChNSU4uLk1BWCkgKFNJWkUoMS4uMzIpKSAoRlJPTSgiJCIgfCAiMCIuLiI5IiB8ICJBIi4uIloiIHwgIl8iIHwgImEiLi4ieiIpKQoKRU5ECg==