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oBd8CKAYoQB8DqECfRB8AKAZfBChAVMAKQphtAQAAAogICAgICAgIFVwbG9hZCBhIHJlbGVhc2UgZmlsZSB0byB0aGUgaW5kZXguCgogICAgICAgIDpwYXJhbSBtZXRhZGF0YTogQSA6Y2xhc3M6YE1ldGFkYXRhYCBpbnN0YW5jZSBkZWZpbmluZyBhdCBsZWFzdCBhIG5hbWUKICAgICAgICAgICAgICAgICAgICAgICAgIGFuZCB2ZXJzaW9uIG51bWJlciBmb3IgdGhlIGZpbGUgdG8gYmUgdXBsb2FkZWQuCiAgICAgICAgOnBhcmFtIGZpbGVuYW1lOiBUaGUgcGF0aG5hbWUgb2YgdGhlIGZpbGUgdG8gYmUgdXBsb2FkZWQuCiAgICAgICAgOnBhcmFtIHNpZ25lcjogVGhlIGlkZW50aWZpZXIgb2YgdGhlIHNpZ25lciBvZiB0aGUgZmlsZS4KICAgICAgICA6cGFyYW0gc2lnbl9wYXNzd29yZDogVGhlIHBhc3NwaHJhc2UgZm9yIHRoZSBzaWduZXIncwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcml2YXRlIGtleSB1c2VkIGZvciBzaWduaW5nLgogICAgICAgIDpwYXJhbSBmaWxldHlwZTogVGhlIHR5cGUgb2YgdGhlIGZpbGUgYmVpbmcgdXBsb2FkZWQuIFRoaXMgaXMgdGhlCiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3R1dGlscyBjb21tYW5kIHdoaWNoIHByb2R1Y2VkIHRoYXQgZmlsZSwgZS5nLgogICAgICAgICAgICAgICAgICAgICAgICBgYHNkaXN0YGAgb3IgYGBiZGlzdF93aGVlbGBgLgogICAgICAgIDpwYXJhbSBweXZlcnNpb246IFRoZSB2ZXJzaW9uIG9mIFB5dGhvbiB3aGljaCB0aGUgcmVsZWFzZSByZWxhdGVzCiAgICAgICAgICAgICAgICAgICAgICAgICAgdG8uIEZvciBjb2RlIGNvbXBhdGlibGUgd2l0aCBhbnkgUHl0aG9uLCB0aGlzIHdvdWxkCiAgICAgICAgICAgICAgICAgICAgICAgICAgYmUgYGBzb3VyY2VgYCwgb3RoZXJ3aXNlIGl0IHdvdWxkIGJlIGUu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ICBubyBjaGVjayBpcyBtYWRlIGZvciB0aGlzIChpLmUuIGEgZmlsZSBjYW4gYmUgZG93bmxvYWRlZCBmcm9tCiAgICAgICAgYW55d2hlcmUpLgoKICAgICAgICBUaGUgbWV0aG9kIGlzIGp1c3QgbGlrZSB0aGUgOmZ1bmM6YHVybHJldHJpZXZlYCBmdW5jdGlvbiBpbiB0aGUKICAgICAgICBzdGFuZGFyZCBsaWJyYXJ5LCBleGNlcHQgdGhhdCBpdCBhbGxvd3MgZGlnZXN0IGNvbXB1dGF0aW9uIHRvIGJlCiAgICAgICAgZG9uZSBkdXJpbmcgZG93bmxvYWQgYW5kIGNoZWNraW5nIHRoYXQgdGhlIGRvd25sb2FkZWQgZGF0YQogICAgICAgIG1hdGNoZWQgYW55IGV4cGVjdGVkIHZhbHVlLgoKICAgICAgICA6cGFyYW0gdXJsOiBUaGUgVVJMIG9mIHRoZSBmaWxlIHRvIGJlIGRvd25sb2FkZWQgKGFzc3VtZWQgdG8gYmUKICAgICAgICAgICAgICAgICAgICBhdmFpbGFibGUgdmlhIGFuIEhUVFAgR0VUIHJlcXVlc3QpLgogICAgICAgIDpwYXJhbSBkZXN0ZmlsZTogVGhlIHBhdGhuYW1lIHdoZXJlIHRoZSBkb3dubG9hZGVkIGZpbGUgaXMgdG8gYmUKICAgICAgICAgICAgICAgICAgICAgICAgIHNhdmVkLgogICAgICAgIDpwYXJhbSBkaWdlc3Q6IElmIHNwZWNpZmllZCwgdGhpcyBtdXN0IGJlIGEgKGhhc2hlciwgdmFsdWUpCiAgICAgICAgICAgICAgICAgICAgICAgdHVwbGUsIHdoZXJlIGhhc2hlciBpcyB0aGUgYWxnb3JpdGhtIHVzZWQgKGUuZy4KICAgICAgICAgICAgICAgICAgICAgICBgYCdtZDUnYGApIGFuZCBgYHZhbHVlYGAgaXMgdGhlIGV4cGVjdGVkIHZhbHVlLgogICAgICAgIDpwYXJhbSByZXBvcnRob29rOiBUaGUgc2FtZSBhcyBmb3IgOmZ1bmM6YHVybHJldHJpZXZlYCBpbiB0aGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RhbmRhcmQgbGlicmFyeS4KICAgICAgICBO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