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dG1wL25kay1Vc2VyL2J1aWxkaG9zdC9pbnN0YWxsL3ByZWJ1aWx0L2Rhcndpbi14ODZfNjQvbGliL3B5dGhvbjIuNy9jb2xsZWN0aW9ucy5weVJKAAAAygAAAHMGAAAAAAUPASgBYwIAAAACAAAAAgAAAEMAAABzCwAAAHwAAHwBAGsCAAxTKAEAAABzFwAAAG9kLl9fbmVfXyh5KSA8PT0+IG9kIT15KAAAAAAoAgAAAFIVAAAAUk4AAAAoAAAAACgAAAAAc1MAAAAvdG1wL25kay1Vc2VyL2J1aWxkaG9zdC9pbnN0YWxsL3ByZWJ1aWx0L2Rhcndpbi14ODZfNjQvbGliL3B5dGhvbjIuNy9jb2xsZWN0aW9ucy5weXQGAAAAX19uZV9f0wAAAHMCAAAAAAJjAQAAAAEAAAACAAAAQwAAAHMKAAAAdAAAfAAAgwEAUygBAAAAc0AAAABvZC52aWV3a2V5cygpIC0+IGEgc2V0LWxpa2Ugb2JqZWN0IHByb3ZpZGluZyBhIHZpZXcgb24gb2QncyBrZXlzKAEAAAB0CAAAAEtleXNWaWV3KAEAAABSFQAAACgAAAAAKAAAAABzUwAAAC90bXAvbmRrLVVzZXIvYnVpbGRob3N0L2luc3RhbGwvcHJlYnVpbHQvZGFyd2luLXg4Nl82NC9saWIvcHl0aG9uMi43L2NvbGxlY3Rpb25zLnB5dAgAAAB2aWV3a2V5c9kAAABzAgAAAAACYwEAAAABAAAAAgAAAEMAAABzCgAAAHQAAHwAAIMBAFMoAQAAAHM8AAAAb2Qudmlld3ZhbHVlcygpIC0+IGFuIG9iamVjdCBwcm92aWRpbmcgYSB2aWV3IG9uIG9kJ3MgdmFsdWVzKAEAAAB0CgAAAFZhbHVlc1ZpZXcoAQAAAFIVAAAAKAAAAAAoAAAAAHNTAAAAL3RtcC9uZGstVXNlci9idWlsZGhvc3QvaW5zdGFsbC9wcmVidWlsdC9kYXJ3aW4teDg2XzY0L2xpYi9weXRob24yLjcvY29sbGVjdGlvbnMucHl0CgAAAHZpZXd2YWx1ZXPdAAAAcwIAAAAAAmMBAAAAAQAAAAIAAABDAAAAcwoAAAB0AAB8AACDAQBTKAEAAABzQgAAAG9kLnZpZXdpdGVtcygpIC0+IGEgc2V0LWxpa2Ugb2JqZWN0IHByb3ZpZGluZyBhIHZpZXcgb24gb2QncyBpdGVtcygBAAAAdAkAAABJdGVtc1ZpZXcoAQAAAFIVAAAAKAAAAAAoAAAAAHNTAAAAL3RtcC9uZGstVXNlci9idWlsZGhvc3QvaW5zdGFsbC9wcmVidWlsdC9kYXJ3aW4teDg2XzY0L2xpYi9weXRob24yLjcvY29sbGVjdGlvbnMucHl0CQAAAHZpZXdpdGVtc+EAAABzAgAAAAACTigkAAAAUj4AAAB0CgAAAF9fbW9kdWxlX190BwAAAF9fZG9jX19SGQAAAFIpAAAAUh4AAABSJAAAAFImAAAAUicAAABSKAAAAFIrAAAAUiwAAABSLQAAAFIvAAAAUjEAAABSMgAAAHQOAAAATXV0YWJsZU1hcHBpbmd0BgAAAHVwZGF0ZVIUAAAAdAYAAABvYmplY3RSMwAAAFIfAAAAUhIAAABSNwAAAHQEAAAAVHJ1ZVI6AAAAUkEAAABSRQAAAFJDAAAAdAsAAABjbGFzc21ldGhvZFJIAAAAUkoAAABSTwAAAFJRAAAAUlMAAABSVQAAACgAAAAAKAAAAAAoAAAAAHNTAAAAL3RtcC9uZGstVXNlci9idWlsZGhvc3QvaW5zdGFsbC9wcmVidWlsdC9kYXJ3aW4teDg2XzY0L2xpYi9weXRob24yLjcvY29sbGVjdGlvbnMucHlSBAAAABoAAABzOgAAAAYBBgsJEA8KDwkJCQkJCQkJBAkECQQJBAkFCQUJAgYCCQIMDgwHDAsMDQkKCQQDAQ8KCQkJBgkECQRzEQUAAGNsYXNzIHt0eXBlbmFtZX0odHVwbGUpOgogICAgJ3t0eXBlbmFtZX0oe2FyZ19saXN0fSknCgogICAgX19zbG90c19fID0gKCkKCiAgICBfZmllbGRzID0ge2ZpZWxkX25hbWVzIXJ9CgogICAgZGVmIF9fbmV3X18oX2Nscywge2FyZ19saXN0fSk6CiAgICAgICAgJ0NyZWF0ZSBuZXcgaW5zdGFuY2Ugb2Yge3R5cGVuYW1lfSh7YXJnX2xpc3R9KScKICAgICAgICByZXR1cm4gX3R1cGxlLl9fbmV3X18oX2NscywgKHthcmdfbGlzdH0pKQoKICAgIEBjbGFzc21ldGhvZAogICAgZGVmIF9tYWtlKGNscywgaXRlcmFibGUsIG5ldz10dXBsZS5fX25ld19fLCBsZW49bGVuKToKICAgICAgICAnTWFrZSBhIG5ldyB7dHlwZW5hbWV9IG9iamVjdCBmcm9tIGEgc2VxdWVuY2Ugb3IgaXRlcmFibGUnCiAgICAgICAgcmVzdWx0ID0gbmV3KGNscywgaXRlcmFibGUpCiAgICAgICAgaWYgbGVuKHJlc3VsdCkgIT0ge251bV9maWVsZHM6ZH06CiAgICAgICAgICAgIHJhaXNlIFR5cGVFcnJvcignRXhwZWN0ZWQge251bV9maWVsZHM6ZH0gYXJndW1lbnRzLCBnb3QgJWQnICUgbGVuKHJlc3VsdCkpCiAgICAgICAgcmV0dXJuIHJlc3VsdAoKICAgIGRlZiBfX3JlcHJfXyhzZWxmKToKICAgICAgICAnUmV0dXJuIGEgbmljZWx5IGZvcm1hdHRlZCByZXByZXNlbnRhdGlvbiBzdHJpbmcnCiAgICAgICAgcmV0dXJuICd7dHlwZW5hbWV9KHtyZXByX2ZtdH0pJyAlIHNlbGYKCiAgICBkZWYgX2FzZGljdChzZWxmKToKICAgICAgICAnUmV0dXJuIGEgbmV3IE9yZGVyZWREaWN0IHdoaWNoIG1hcHMgZmllbGQgbmFtZXMgdG8gdGhlaXIgdmFsdWVzJwogICAgICAgIHJldHVybiBPcmRlcmVkRGljdCh6aXAoc2VsZi5fZmllbGRzLCBzZWxmKSkKCiAgICBkZWYgX3JlcGxhY2UoX3NlbGYsICoqa3dkcyk6CiAgICAgICAgJ1JldHVybiBhIG5ldyB7dHlwZW5hbWV9IG9iamVjdCByZXBsYWNpbmcgc3BlY2lmaWVkIGZpZWxkcyB3aXRoIG5ldyB2YWx1ZXMnCiAgICAgICAgcmVzdWx0ID0gX3NlbGYuX21ha2UobWFwKGt3ZHMucG9wLCB7ZmllbGRfbmFtZXMhcn0sIF9zZWxmKSkKICAgICAgICBpZiBrd2RzOgogICAgICAgICAgICByYWlzZSBWYWx1ZUVycm9yKCdHb3QgdW5leHBlY3RlZCBmaWVsZCBuYW1lczogJXInICUga3dkcy5rZXlzKCkpCiAgICAgICAgcmV0dXJuIHJlc3VsdAoKICAgIGRlZiBfX2dldG5ld2FyZ3NfXyhzZWxmKToKICAgICAg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cGxhY2UoKSBidXQgdGFyZ2V0cyBuYW1lZCBmaWVsZHMKICAgIFBvaW50KHg9MTAwLCB5PTIyKQoKICAgIHQBAAAALHQBAAAAIGMBAAAAAgAAAAQAAABzAAAAcycAAAB8AABdHQB9AQB8AQBqAACDAABwHgB8AQBkAABrAgBWAXEDAGQBAFMoAgAAAFIjAAAATigBAAAAdAcAAABpc2FsbnVtKAIAAAB0AgAAAC4wdAEAAABjKAAAAAAoAAAAAHNTAAAAL3RtcC9uZGstVXNlci9idWlsZGhvc3QvaW5zdGFsbC9wcmVidWlsdC9kYXJ3aW4teDg2XzY0L2xpYi9weXRob24yLjcvY29sbGVjdGlvbnMucHlzCQAAADxnZW5leHByPjoBAABzAgAAAAYAaQAAAABSIwAAAHMDAAAAXyVkYwEAAAACAAAABAAAAHMAAABzJwAAAHwAAF0dAH0BAHwBAGoAAIMAAHAeAHwBAGQAAGsCAFYBcQMAZAEAUygCAAAAUiMAAABOKAEAAABSXwAAACgCAAAAUmAAAABSYQAAACgAAAAAKAAAAABzUwAAAC90bXAvbmRrLVVzZXIvYnVpbGRob3N0L2luc3RhbGwvcHJlYnVpbHQvZGFyd2luLXg4Nl82NC9saWIvcHl0aG9uMi43L2NvbGxlY3Rpb25zLnB5cwkAAAA8Z2VuZXhwcj5DAQAAcwIAAAAGAHNXAAAAVHlwZSBuYW1lcyBhbmQgZmllbGQgbmFtZXMgY2FuIG9ubHkgY29udGFpbiBhbHBoYW51bWVyaWMgY2hhcmFjdGVycyBhbmQgdW5kZXJzY29yZXM6ICVyczIAAABUeXBlIG5hbWVzIGFuZCBmaWVsZCBuYW1lcyBjYW5ub3QgYmUgYSBrZXl3b3JkOiAlcnM5AAAAVHlwZSBuYW1lcyBhbmQgZmllbGQgbmFtZXMgY2Fubm90IHN0YXJ0IHdpdGggYSBudW1iZXI6ICVycy8AAABGaWVsZCBuYW1lcyBjYW5ub3Qgc3RhcnQgd2l0aCBhbiB1bmRlcnNjb3JlOiAlcnMkAAAARW5jb3VudGVyZWQgZHVwbGljYXRlIGZpZWxkIG5hbWU6ICVydAgAAAB0eXBlbmFtZXQLAAAAZmllbGRfbmFtZXN0CgAAAG51bV9maWVsZHN0CAAAAGFyZ19saXN0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aHJlZSBtb3N0IGNvbW1vbiBlbGVtZW50cwogICAgWygnYScsIDUpLCAoJ2InLCA0KSwgKCdjJywgMyldCiAgICA+Pj4gc29ydGVkKGMpICAgICAgICAgICAgICAgICAgICAgICAjIGxpc3QgYWxsIHVuaXF1ZSBlbGVtZW50cwogICAgWydhJywgJ2InLCAnYycsICdkJywgJ2UnXQogICAgPj4+ICcnLmpvaW4oc29ydGVkKGMuZWxlbWVudHMoKSkpICAgIyBsaXN0IGVsZW1lbnRzIHdpdGggcmVwZXRpdGlvbnMKICAgICdhYWFhYWJiYmJjY2NkZGUnCiAgICA+Pj4gc3VtKGMudmFsdWVzKCkpICAgICAgICAgICAgICAgICAjIHRvdGFsIG9mIGFsbCBjb3VudHMKICAgIDE1CgogICAgPj4+IGNbJ2EnXSAgICAgICAgICAgICAgICAgICAgICAgICAgIyBjb3VudCBvZiBsZXR0ZXIgJ2EnCiAgICA1CiAgICA+Pj4gZm9yIGVsZW0gaW4gJ3NoYXphbSc6ICAgICAgICAgICAjIHVwZGF0ZSBjb3VudHMgZnJvbSBhbiBpdGVyYWJsZQogICAgLi4uICAgICBjW2VsZW1dICs9IDEgICAgICAgICAgICAgICAgIyBieSBhZGRpbmcgMSB0byBlYWNoIGVsZW1lbnQncyBjb3VudAogICAgPj4+IGNbJ2EnXSAgICAgICAgICAgICAgICAgICAgICAgICAgIyBub3cgdGhlcmUgYXJlIHNldmVuICdhJwogICAgNwogICAgPj4+IGRlbCBjWydiJ10gICAgICAgICAgICAgICAgICAgICAgIyByZW1vdmUgYWxsICdiJwogICAgPj4+IGNbJ2InXSAgICAgICAgICAgICAgICAgICAgICAgICAgIyBub3cgdGhlcmUgYXJlIHplcm8gJ2InCiAgICAwCgogICAgPj4+IGQgPSBDb3VudGVyKCdzaW1zYWxhYmltJykgICAgICAgIyBtYWtlIGFub3RoZXIgY291bnRlcgogICAgPj4+IGMudXBkYXRlKGQpICAgICAgICAgICAgICAgICAgICAgIyBhZGQgaW4gdGhlIHNlY29uZCBjb3VudGVyCiAgICA+Pj4gY1snYSddICAgICAgICAgICAgICAgICAgICAgICAgICAjIG5vdyB0aGVyZSBhcmUgbmluZSAnYScKICAgIDkKCiAgICA+Pj4gYy5jbGVhcigpICAgICAgICAgICAgICAgICAgICAgICAjIGVtcHR5IHRoZSBjb3VudGVyCiAgICA+Pj4gYwogICAgQ291bnRlcigpCgogICAgTm90ZTogIElmIGEgY291bnQgaXMgc2V0IHRvIHplcm8gb3IgcmVkdWNlZCB0byB6ZXJvLCBpdCB3aWxsIHJlbWFpbgogICAgaW4gdGhlIGNvdW50ZXIgdW50aWwgdGhlIGVudHJ5IGlzIGRlbGV0ZWQgb3IgdGhlIGNvdW50ZXIgaXMgY2xlYXJlZDoKCiAgICA+Pj4gYyA9IENvdW50ZXIoJ2FhYWJiYycpCiAgICA+Pj4gY1snYiddIC09IDIgICAgICAgICAgICAgICAgICAgICAjIHJlZHVjZSB0aGUgY291bnQgb2YgJ2InIGJ5IHR3bwogICAgPj4+IGMubW9zdF9jb21tb24oKSAgICAgICAgICAgICAgICAgIyAnYicgaXMgc3RpbGwgaW4sIGJ1dCBpdHMgY291bnQgaXMgemVybwogICAgWygnYScsIDMpLCAoJ2MnLCAxKSwgKCdiJywgMCldCgogICAgYwIAAAADAAAAAwAAAEsAAABzJwAAAHQAAHQBAHwAAIMCAGoCAIMAAAF8AABqAwB8AQB8AgCNAQABZAEAUygCAAAAcwkCAABDcmVhdGUgYSBuZXcsIGVtcHR5IENvdW50ZXIgb2JqZWN0LiAgQW5kIGlmIGdpdmVuLCBjb3VudCBlbGVtZW50cwogICAgICAgIGZyb20gYW4gaW5wdXQgaXRlcmFibGUuICBPciwgaW5pdGlhbGl6ZSB0aGUgY291bnQgZnJvbSBhbm90aGVyIG1hcHBpbmcKICAgICAgICBvZiBlbGVtZW50cyB0byB0aGVpciBjb3VudHMuCgogICAgICAgID4+PiBjID0gQ291bnRlcigpICAgICAgICAgICAgICAgICAgICAgICAgICAgIyBhIG5ldywgZW1wdHkgY291bnRlcgogICAgICAgID4+PiBjID0gQ291bnRlcignZ2FsbGFoYWQnKSAgICAgICAgICAgICAgICAgIyBhIG5ldyBjb3VudGVyIGZy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