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bGFtYmRhICgoKHgpLCkpOiB4CiAgICAgICAgc2VsZi5jaGVjayhmLCA2LCAoNiwpKQogICAgICAgICgCAAAAUggAAABSCQAAACgBAAAAUgMAAAAoAAAAACgAAAAAc4EAAAAvaG9tZS92YWdyYW50L3JwbWJ1aWxkL0JVSUxEL2J1aWxkLXRvb2xjaGFpbi9vcHQvdG9vbGNoYWlucy9zdGJnY2MtNC44LTEuMC9weXRob24tcnVudGltZS9saWIvcHl0aG9uMi43L3Rlc3QvdGVzdF9jb21wbGV4X2FyZ3MucHl0DQAAAHRlc3RfbGFtYmRhXzFKAAAAcwQAAAAAAQYJYwEAAAABAAAAAwAAAEIAAABzFQAAAGUAAGoBAGQBAIMBAGQAAARVZAAAUygCAAAATnNPAAAACiAgICAgICAgZiA9IGxhbWJkYSAoKCgoKHgpKSwpLCkpOiB4CiAgICAgICAgc2VsZi5jaGVjayhmLCAyLCAoKDIsKSwpKQogICAgICAgICgCAAAAUggAAABSCQAAACgBAAAAUgMAAAAoAAAAACgAAAAAc4EAAAAvaG9tZS92YWdyYW50L3JwbWJ1aWxkL0JVSUxEL2J1aWxkLXRvb2xjaGFpbi9vcHQvdG9vbGNoYWlucy9zdGJnY2MtNC44LTEuMC9weXRob24tcnVudGltZS9saWIvcHl0aG9uMi43L3Rlc3QvdGVzdF9jb21wbGV4X2FyZ3MucHl0DQAAAHRlc3RfbGFtYmRhXzJWAAAAcwQAAAAAAQYDYwEAAAABAAAAAwAAAEIAAABzFQAAAGUAAGoBAGQBAIMBAGQAAARVZAAAUygCAAAATnNVAAAACiAgICAgICAgZiA9IGxhbWJkYSAoKCgoKCh4KSksKSwpLCkpOiB4CiAgICAgICAgc2VsZi5jaGVjayhmLCAzLCAoKCgzLCksKSwpKQogICAgICAgICgCAAAAUggAAABSCQAAACgBAAAAUgMAAAAoAAAAACgAAAAAc4EAAAAvaG9tZS92YWdyYW50L3JwbWJ1aWxkL0JVSUxEL2J1aWxkLXRvb2xjaGFpbi9vcHQvdG9vbGNoYWlucy9zdGJnY2MtNC44LTEuMC9weXRob24tcnVudGltZS9saWIvcHl0aG9uMi43L3Rlc3QvdGVzdF9jb21wbGV4X2FyZ3MucHl0DQAAAHRlc3RfbGFtYmRhXzNcAAAAcwQAAAAAAQYDYwEAAAABAAAAAwAAAEIAAABzFQAAAGUAAGoBAGQBAIMBAGQAAARVZAAAUygCAAAATnNlAQAACiAgICAgICAgZiA9IGxhbWJkYSAoKCgoKHgpKSwpLCksKSwgYSwgYiwgYzogKHgsIGEsIGIsIGMpCiAgICAgICAgc2VsZi5jaGVjayhmLCAoMywgOSwgOCwgNyksICgoKDMsKSwpLCksIDksIDgsIDcpCgogICAgICAgIGYgPSBsYW1iZGEgKCgoKCgoeCkpLCkpLCksKSwgYSwgYiwgYzogKHgsIGEsIGIsIGMpCiAgICAgICAgc2VsZi5jaGVjayhmLCAoMywgOSwgOCwgNyksICgoKDMsKSwpLCksIDksIDgsIDcpCgogICAgICAgIGYgPSBsYW1iZGEgYSwgYiwgYywgKCgoKCgoeCkpLCkpLCksKTogKGEsIGIsIGMsIHgpCiAgICAgICAgc2VsZi5jaGVjayhmLCAoOSwgOCwgNywgMyksIDksIDgsIDcsICgoKDMsKSwpLCkpCiAgICAgICAgKAIAAABSCAAAAFIJAAAAKAEAAABSAwAAACgAAAAAKAAAAABzgQAAAC9ob21lL3ZhZ3JhbnQvcnBtYnVpbGQvQlVJTEQvYnVpbGQtdG9vbGNoYWluL29wdC90b29sY2hhaW5zL3N0YmdjYy00LjgtMS4wL3B5dGhvbi1ydW50aW1lL2xpYi9weXRob24yLjcvdGVzdC90ZXN0X2NvbXBsZXhfYXJncy5weXQTAAAAdGVzdF9sYW1iZGFfY29tcGxleGIAAABzBAAAAAABBgkoDQAAAHQIAAAAX19uYW1lX190CgAAAF9fbW9kdWxlX19SBwAAAFIKAAAAUgsAAABSDAAAAFINAAAAUg4AAABSDwAAAFIQAAAAUhEAAABSEgAAAFITAAAAKAAAAAAoAAAAACgAAAAAc4EAAAAvaG9tZS92YWdyYW50L3JwbWJ1aWxkL0JVSUxEL2J1aWxkLXRvb2xjaGFpbi9vcHQvdG9vbGNoYWlucy9zdGJnY2MtNC44LTEuMC9weXRob24tcnVudGltZS9saWIvcHl0aG9uMi43L3Rlc3QvdGVzdF9jb21wbGV4X2FyZ3MucHlSAQAAAAYAAABzFgAAAAYCCQkJCQkMCQYJBgkPCQkJDAkGCQZjAAAAAAAAAAAGAAAAQwAAAHM2AAAAdAAAagEAZAEAdAIAZgIAZAIAdAIAZgIAgwIAjxIAAXQAAGoDAHQEAIMBAAFXZAAAUVhkAABTKAMAAABOcyoAAAB0dXBsZSBwYXJhbWV0ZXIgdW5wYWNraW5nIGhhcyBiZWVuIHJlbW92ZWRzKAAAAHBhcmVudGhlc2l6ZWQgYXJndW1lbnQgbmFtZXMgYXJlIGludmFsaWQoBQAAAFIAAAAAdBMAAABjaGVja19weTNrX3dhcm5pbmdzdA0AAABTeW50YXhXYXJuaW5ndAwAAABydW5fdW5pdHRlc3RSAQAAACgAAAAAKAAAAAAoAAAAAHOBAAAAL2hvbWUvdmFncmFudC9ycG1idWlsZC9CVUlMRC9idWlsZC10b29sY2hhaW4vb3B0L3Rvb2xjaGFpbnMvc3RiZ2NjLTQuOC0xLjAvcHl0aG9uLXJ1bnRpbWUvbGliL3B5dGhvbjIuNy90ZXN0L3Rlc3RfY29tcGxleF9hcmdzLnB5dAkAAAB0ZXN0X21haW5vAAAAcwgAAAAAAQYBCQEQAXQIAAAAX19tYWluX18oCAAAAHQIAAAAdW5pdHRlc3R0BAAAAHRlc3RSAAAAAFIIAAAAdAgAAABUZXN0Q2FzZVIBAAAAUhkAAABSFAAAACgAAAAAKAAAAAAoAAAAAHOBAAAAL2hvbWUvdmFncmFudC9ycG1idWlsZC9CVUlMRC9idWlsZC10b29sY2hhaW4vb3B0L3Rvb2xjaGFpbnMvc3RiZ2NjLTQuOC0xLjAvcHl0aG9uLXJ1bnRpbWUvbGliL3B5dGhvbjIuNy90ZXN0L3Rlc3RfY29tcGxleF9hcmdzLnB5dAgAAAA8bW9kdWxlPgIAAABzDAAAAAwBEAEMAhlpCQYMAQ==