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gwFaJ2StZQVkAGQ9nAJkPmQ/hAVaKGQAZA2cAWRAZEGEBFopZK5lBmUFZQdmAhkAZQplCGUKGQBkBGRDnARkRGRFhAVaKmSvZSNlBWUSZgIZAGUKZQhlChkAZARkRpwEZEdkSIQFWitksGUIZSNlBWUSZgIZABkAZRJkAGRJnANkSmRLhAVaLGUFZARkTJwCZE1kToQEWi1kT2UKZQdkUJwDZFFkUoQEWi5ksWQDZFOcAWUFZQhlBmUvZSBmAhkAGQBlBWUKZFScBGRVZFaEB1owZCRkV5wBZTFlBRkAZQZlBWUHZgIZAGUJZQpkWJwEZFlkWoQGWjJkBGQNnAFkW2RchARaM2UKZARkXZwCZF5kX4QEWjRlCmQEZGCcAmRhZGKEBFo1ZE9kY2UxZTYZAGRknANkZWRmhARaN2RPZGNlOGRknANkZ2RohARaOWSyZE9lBWUxZGkZAGRqnANka2RshAVaOmUxZAAZAGQAZG2cAmRuZG+EBFo7ZLNlCGUKGQBkBGRwnAJkcWRyhAVaPGQEZHNkdJwCZQplCGQJGQBlCWQEZHWcBGR2ZHeEBlo9ZARkDZwBZHhkeYQEWj5ktGUKZQVkBGR7nANkfGR9hAVaP2S1ZQplBWQEZHucA2R+ZH+EBVpAZLZlCmUFZARke5wDZIBkgYQFWkFkt2VCZQplBWQEZIKcBGSDZISEBVpDZLhlBmQAZQVmAhkAZQhlBmUFZIVmAhkAGQBkAGSGnANkh2SIhAVaRGQAZABkiZwCZIpki4QEWkVlMWUiZQVlCGUgGQBmAhkAGQBkAGSMnAJkjWSOhARaRmQAZARkiZwCZI9kkIQEWkdkuWRzZHNkkZwCZQVlCWUJZUhkkpwEZJNklIQHWkllMWUKGQBlSGSVnAJklmSXhARaSmS6ZQpkBGSZnAJkmmSbhAVaS2QEZARkBmQEZJycBGRPZQplCGQIGQBlCGQJGQBlCmUIZQkZAGVIZJ2cB2SeZJ+EBlpMZQplSGSgnAJkoWSihARaTWUKZA2cAWSjZKSEBFpOZLtkpWSmZKecAmUIZQoZAGUFZSBkAGSonARkqWSqhAdaT2QEUwApvHInAAAAYfYCAABUZXh0IHdpdGggY29sb3IgLyBzdHlsZS4KCiAgICBBcmdzOgogICAgICAgIHRleHQgKHN0ciwgb3B0aW9uYWwpOiBEZWZh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