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aWtlIGFuIGludGVyYWN0aXZlIHRlcm1pbmFsLgogICAgLSAgIEFsd2F5cyBmbHVzaGVzIHRoZSBvdXRwdXQuCgogICAgOnBhcmFtIG1lc3NhZ2U6IFRoZSBzdHJpbmcgb3IgYnl0ZXMgdG8gb3V0cHV0LiBPdGhlciBvYmplY3RzIGFyZQogICAgICAgIGNvbnZlcnRlZCB0byBzdHJpbmdzLgogICAgOnBhcmFtIGZpbGU6IFRoZSBmaWxlIHRvIHdyaXRlIHRvLiBEZWZhdWx0cyB0byBgYHN0ZG91dGBgLgogICAgOnBhcmFtIGVycjogV3JpdGUgdG8gYGBzdGRlcnJgYCBpbnN0ZWFkIG9mIGBgc3Rkb3V0YGAuCiAgICA6cGFyYW0gbmw6IFByaW50IGEgbmV3bGluZSBhZnRlciB0aGUgbWVzc2FnZS4gRW5hYmxlZCBieSBkZWZhdWx0LgogICAgOnBhcmFtIGNvbG9yOiBGb3JjZSBzaG93aW5nIG9yIGhpZGluZyBjb2xvcnMgYW5kIG90aGVyIHN0eWxlcy4gQnkKICAgICAgICBkZWZhdWx0IENsaWNrIHdpbGwgcmVtb3ZlIGNvbG9yIGlmIHRoZSBvdXRwdXQgZG9lcyBub3QgbG9vayBsaWtlCiAgICAgICAgYW4gaW50ZXJhY3RpdmUgdGVybWluYWwuCgogICAgLi4gdmVyc2lvbmNoYW5nZWQ6OiA2LjAKICAgICAgICBTdXBwb3J0IFVuaWNvZGUgb3V0cHV0IG9uIHRoZSBXaW5kb3dzIGNvbnNvbGUuIENsaWNrIGRvZXMgbm90CiAgICAgICAgbW9kaWZ5IGBgc3lzLnN0ZG91dGBgLCBzbyBgYHN5cy5zdGRvdXQud3JpdGUoKWBgIGFuZCBgYHByaW50KClgYAogICAgICAgIHdpbGwgc3RpbGwgbm90IHN1cHBvcnQgVW5pY29kZS4KCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6IDQuMAogICAgICAgIEFkZGVkIHRoZSBgYGNvbG9yYGAgcGFyYW1ldGVyLgoKICAgIC4uIHZlcnNpb25hZGRlZDo6IDMuMAogICAgICAgIEFkZGVkIHRoZSBgYGVycmBgIHBhcmFtZXRlci4KCiAgICAuLiB2ZXJzaW9uY2hhbmdlZDo6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IGBgc3Rkb3V0YGAgb3IgYGBzdGRpbmBgLCB0aGUgc3RyZWFtIGlzCiAgICB3cmFwcGVkIHNvIHRoYXQgdXNpbmcgaXQgaW4gYSBjb250ZXh0IG1hbmFnZXIgd2lsbCBub3QgY2xvc2UgaXQuCiAgICBUaGlzIG1ha2VzIGl0IHBvc3NpYmxlIHRvIHVzZSB0aGUgZnVuY3Rpb24gd2l0aG91dCBhY2NpZGVudGFsbHkKICAgIGNsb3NpbmcgYSBzdGFuZGFyZCBzdHJlYW06CgogICAgLi4gY29kZS1ibG9jazo6IHB5dGhvbgoKICAgICAgICB3aXRoIG9wZW5fZmlsZShmaWxlbmFtZSkgYXMgZjoKICAgICAgICAgICAgLi4uCgogICAgOnBhcmFtIGZpbGVuYW1lOiBUaGUgbmFtZSBvZiB0aGUgZmlsZSB0byBvcGVuLCBvciBgYCctJ2BgIGZvcgogICAgICAgIGBgc3RkaW5gYC9gYHN0ZG91dGBgLgogICAgOnBhcmFtIG1vZGU6IFRoZSBtb2RlIGluIHdoaWNoIHRvIG9wZW4gdGhlIGZpbGUuCiAgICA6cGFyYW0gZW5jb2Rpbmc6IFRoZSBlbmNvZGluZyB0byBkZWNvZGUgb3IgZW5jb2RlIGEgZmlsZSBvcGVuZWQgaW4KICAgICAgICB0ZXh0IG1vZGUuCiAgICA6cGFyYW0gZXJyb3JzOiBUaGUgZXJyb3IgaGFuZGxpbmcgbW9kZS4KICAgIDpwYXJhbSBsYXp5OiBXYWl0IHRvIG9wZW4gdGhlIGZpbGUgdW50aWwgaXQgaXMgYWNjZXNzZWQuIEZvciByZWFkCiAgICAgICAgbW9kZSwgdGhlIGZpbGUgaXMgdGVtcG9yYXJpbHkgb3BlbmVkIHRvIHJhaXNlIGFjY2VzcyBlcnJvcnMKICAgICAgICBlYXJseSwgdGhlbiBjbG9zZWQgdW50aWwgaXQgaXMgcmVhZCBhZ2Fpbi4KICAgIDpwYXJhbSBhdG9taWM6IFdyaXRlIHRvIGEgdGVtcG9yYXJ5IGZpbGUgYW5kIHJlcGxhY2UgdGhlIGdpdmVuIGZpbGUKICAgICAgICBvbiBjbG9zZS4KCiAgICAuLiB2ZXJzaW9uYWRkZWQ6OiAzLjAKICAgIHJWAAAAKQZyJAAAAHIl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