Iw0KIyAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KIyAgKiBDb3B5cmlnaHQgKGMpIDIwMDksIDIwMTAsIDIwMTEsIDIwMTIsIDIwMTMsIDIwMTQsIDIwMTUsIDIwMTYsIDIwMTcsIDIwMTgNCiMgICogSUJNIENvcnBvcmF0aW9uLCBCZlIsIGFuZCBvdGhlcnMuDQojICAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuIFRoaXMgcHJvZ3JhbSBhbmQgdGhlIGFjY29tcGFueWluZyBtYXRlcmlhbHMNCiMgICogYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wDQojICAqIHdoaWNoIGFjY29tcGFuaWVzIHRoaXMgZGlzdHJpYnV0aW9uLCBhbmQgaXMgYXZhaWxhYmxlIGF0DQojICAqIGh0dHA6Ly93d3cuZWNsaXBzZS5vcmcvbGVnYWwvZXBsLXYxMC5odG1sDQojICAqDQojICAqIENvbnRyaWJ1dG9yczoNCiMgICogICAgIElCTSBDb3Jwb3JhdGlvbiAtIGluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbg0KIyAgKiAgICAgQnVuZGVzaW5zdGl0dXQgZvxyIFJpc2lrb2Jld2VydHVuZyAtIFBhamVrIEdyYXBoIGludGVyZmFjZSwgbmV3IFZldGVyaW5hcnkgTW9kZWxzDQojICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovDQoNCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCiMgVG8gY29kZSBkZXZlbG9wZXI6DQojICAgRG8gTk9UIGNoYW5nZSB0aGUgcHJvcGVydGllcyBiZXR3ZWVuIHRoaXMgbGluZSBhbmQgdGhlDQojICAgIiUlJSBFTkQgT0YgVFJBTlNMQVRFRCBQUk9QRVJUSUVTICUlJSIgbGluZS4NCiMgICBNYWtlIGEgbmV3IHByb3BlcnR5IG5hbWUsIGFwcGVuZCB0byB0aGUgZW5kIG9mIHRoZSBmaWxlIGFuZCBjaGFuZ2UNCiMgICB0aGUgY29kZSB0byB1c2UgdGhlIG5ldyBwcm9wZXJ0eS4NCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCiMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCiMgJSUlIEVORCBPRiBUUkFOU0xBVEVEIFBST1BFUlRJRVMgJSUlDQojID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQoNCnBsdWdpbk5hbWUgPSBTVEVNIEF1dG9tYXRlZCBFeHBlcmltZW50IFRvb2wNCnByb3ZpZGVyTmFtZSA9IEVjbGlwc2Uub3JnDQpBRV9WaWV3ID0gQXV0b21hdGljIEV4cGVyaW1lbnQNCg0KIyBwcm9kdWN0IG5hbWUNCl9VSV9Qcm9kdWN0X05hbWUgPSBTVEVNDQoNCiMgQ29tbW9uIEtleXMNCl9VSV9TVEVNID0gU1RFTQ0KX1VJX0RlY29yYXRvcnMgPSBEZWNvcmF0b3JzDQpfVUlfRXhwZXJpbWVudHMgPSBFeHBlcmltZW50cw0KX1VJX0dyYXBocyA9IEdyYXBocw0KX1VJX0lkZW50aWZpYWJsZXMgPSBJZGVudGlmaWFibGVzDQpfVUlfTW9kZWxzID0gTW9kZWxzDQpfVUlfTW9kaWZpZXJzID0gTW9kaWZpZXJzDQpfVUlfUHJlZGljYXRlcyA9IFByZWRpY2F0ZXMNCl9VSV9TY2VuYXJpb3MgPSBTY2VuYXJpb3MNCl9VSV9TZXF1ZW5jZXJzID0gU2VxdWVuY2Vycw0KX1VJX1RyaWdnZXJzID0gVHJpZ2dlcnMNCg0KDQoNCiMgUGVyc3BlY3RpdmVzDQpfVUlfQXV0b21hdGljRXhwZXJpbWVudF9QZXJzcGVjdGl2ZSA9IEF1dG9tYXRpYyBFeHBlcmltZW50DQoNCg1fVUlfQXV0b21hdGljRXhwZXJpbWVudF90eXBlID0gQXV0b21hdGljIEV4cGVyaW1lbnQNCl9VSV9Nb2RpZmlhYmxlUGFyYW1ldGVyX3R5cGUgPSBNb2RpZmlhYmxlIFBhcmFtZXRlcg0KX1VJX1Vua25vd25fdHlwZSA9IE9iamVjdA0KDV9VSV9Vbmtub3duX2RhdGF0eXBlPSBWYWx1ZQ0KDV9VSV9BdXRvbWF0aWNFeHBlcmltZW50X2Jhc2VTY2VuYXJpb19mZWF0dXJlID0gQmFzZSBTY2VuYXJpbw0KX1VJX0F1dG9tYXRpY0V4cGVyaW1lbnRfcGFyYW1ldGVyc19mZWF0dXJlID0gUGFyYW1ldGVycw0KX1VJX0F1dG9tYXRpY0V4cGVyaW1lbnRfZXJyb3JBbmFseXNpc0FsZ29yaXRobV9mZWF0dXJlID0gRXJyb3IgQW5hbHlzaXMgQWxnb3JpdGhtDQpfVUlfQXV0b21hdGljRXhwZXJpbWVudF9lcnJvckZ1bmN0aW9uX2ZlYXR1cmUgPSBFcnJvciBGdW5jdGlvbg0KX1VJX0F1dG9tYXRpY0V4cGVyaW1lbnRfdG9sZXJhbmNlX2ZlYXR1cmUgPSBUb2xlcmFuY2UNCl9VSV9BdXRvbWF0aWNFeHBlcmltZW50X3JlZmVyYW5jZURhdGFEaXJfZmVhdHVyZSA9IFJlZmVyYW5jZSBEYXRhIERpcg0KX1VJX0F1dG9tYXRpY0V4cGVyaW1lbnRfbWF4aW11bU51bWJlck9mSXRlcmF0aW9uc19mZWF0dXJlID0gTWF4aW11bSBOdW1iZXIgT2YgSXRlcmF0aW9ucw0KX1VJX01vZGlmaWFibGVQYXJhbWV0ZXJfaW5pdGlhbFZhbHVlX2ZlYXR1cmUgPSBJbml0aWFsIFZhbHVlDQpfVUlfTW9kaWZpYWJsZVBhcmFtZXRlcl9mZWF0dXJlX2ZlYXR1cmUgPSBGZWF0dXJlDQpfVUlfTW9kaWZpYWJsZVBhcmFtZXRlcl9zdGVwX2ZlYXR1cmUgPSBTdGVwDQpfVUlfTW9kaWZpYWJsZVBhcmFtZXRlcl9mZWF0dXJlTmFtZV9mZWF0dXJlID0gRmVhdHVyZSBOYW1lDQpfVUlfVW5rbm93bl9mZWF0dXJlID0gVW5zcGVjaWZpZWQNCg0NCl9VSV9BdXRvbWF0aWNleHBlcmltZW50RWRpdG9yX21lbnUgPSAmQXV0b21hdGljZXhwZXJpbWVudCBFZGl0b3INCg1fVUlfQXV0b21hdGljZXhwZXJpbWVudE1vZGVsV2l6YXJkX2xhYmVsID0gQXV0b21hdGljZXhwZXJpbWVudCBNb2RlbA0KX1VJX0F1dG9tYXRpY2V4cGVyaW1lbnRNb2RlbFdpemFyZF9kZXNjcmlwdGlvbiA9IENyZWF0ZSBhIG5ldyBBdXRvbWF0aWNleHBlcmltZW50IG1vZGVsDQoNX1VJX0F1dG9tYXRpY2V4cGVyaW1lbnRFZGl0b3JfbGFiZWwgPSBBdXRvbWF0aWNleHBlcmltZW50IE1vZGVsIEVkaXRvcg0KDV9VSV9BdXRvbWF0aWNleHBlcmltZW50RWRpdG9yRmlsZW5hbWVEZWZhdWx0QmFzZSA9IE15DQpfVUlfQXV0b21hdGljZXhwZXJpbWVudEVkaXRvckZpbGVuYW1lRXh0ZW5zaW9ucyA9IGF1dG9tYXRpY2V4cGVyaW1lbnQNCg0NCl9VSV9Nb2RpZmlhYmxlUGFyYW1ldGVyX2xvd2VyQm91bmRfZmVhdHVyZSA9IExvd2VyIEJvdW5kDQpfVUlfTW9kaWZpYWJsZVBhcmFtZXRlcl91cHBlckJvdW5kX2ZlYXR1cmUgPSBVcHBlciBCb3VuZA0KX1VJX01vZGlmaWFibGVQYXJhbWV0ZXJfZGVjb3JhdG9yX2ZlYXR1cmUgPSBEZWNvcmF0b3INCl9VSV9Nb2RpZmlhYmxlUGFyYW1ldGVyX3RhcmdldFVSSV9mZWF0dXJlID0gVGFyZ2V0IFVSSQ0KX1VJX0F1dG9tYXRpY0V4cGVyaW1lbnRfcmVJbml0X2ZlYXR1cmUgPSBSZSBJbml0DQpfVUlfQ3JlYXRlQ2hpbGRfdGV4dCA9IHswfQ0KX1VJX0NyZWF0ZUNoaWxkX3RleHQyID0gezF9IHswfQ0KX1VJX0NyZWF0ZUNoaWxkX3RleHQzID0gezF9DQpfVUlfQ3JlYXRlQ2hpbGRfdG9vbHRpcCA9IENyZWF0ZSBOZXcgezB9IFVuZGVyIHsxfSBGZWF0dXJlDQpfVUlfQ3JlYXRlQ2hpbGRfZGVzY3JpcHRpb24gPSBDcmVhdGUgYSBuZXcgY2hpbGQgb2YgdHlwZSB7MH0gZm9yIHRoZSB7MX0gZmVhdHVyZSBvZiB0aGUgc2VsZWN0ZWQgezJ9Lg0KX1VJX0NyZWF0ZVNpYmxpbmdfZGVzY3JpcHRpb24gPSBDcmVhdGUgYSBuZXcgc2libGluZyBvZiB0eXBlIHswfSBmb3IgdGhlIHNlbGVjdGVkIHsyfSwgdW5kZXIgdGhlIHsxfSBmZWF0dXJlIG9mIHRoZWlyIHBhcmVudC4NCg1fVUlfUHJvcGVydHlEZXNjcmlwdG9yX2Rlc2NyaXB0aW9uID0gVGhlIHswfSBvZiB0aGUgezF9DQoNX1VJX0dlbmVyaWNBdXRvbWF0aWNFeHBlcmltZW50X3R5cGUgPSBHZW5lcmljIEF1dG9tYXRpYyBFeHBlcmltZW50DQpfVUlfQ3JlYXRlQ2hpbGRfbWVudV9pdGVtID0gJk5ldyBDaGlsZA0KX1VJX0NyZWF0ZVNpYmxpbmdfbWVudV9pdGVtID0gTiZldyBTaWJsaW5nDQoNX1VJX1Nob3dQcm9wZXJ0aWVzVmlld19tZW51X2l0ZW0gPSBTaG93ICZQcm9wZXJ0aWVzIFZpZXcNCl9VSV9SZWZyZXNoVmlld2VyX21lbnVfaXRlbSA9ICZSZWZyZXNoDQoNX1VJX1NlbGVjdGlvblBhZ2VfbGFiZWwgPSBTZWxlY3Rpb24NCg1fVUlfTm9PYmplY3RTZWxlY3RlZCA9IFNlbGVjdGVkIE5vdGhpbmcNCl9VSV9TaW5nbGVPYmplY3RTZWxlY3RlZCA9IFNlbGVjdGVkIE9iamVjdDogezB9DQpfVUlfTXVsdGlPYmplY3RTZWxlY3RlZCA9IFNlbGVjdGVkIHswfSBPYmplY3RzDQoNX1VJX09wZW5FZGl0b3JFcnJvcl9sYWJlbCA9IE9wZW4gRWRpdG9yDQoNX1VJX1dpemFyZF9jYXRlZ29yeSA9IEV4YW1wbGUgRU1GIE1vZGVsIENyZWF0aW9uIFdpemFyZHMNCg1fVUlfQ3JlYXRlTW9kZWxFcnJvcl9tZXNzYWdlID0gUHJvYmxlbXMgZW5jb3VudGVyZWQgaW4gZmlsZSAiezB9Ig0KDV9VSV9XaXphcmRfbGFiZWwgPSBOZXcNCg1fV0FSTl9GaWxlbmFtZUV4dGVuc2lvbiA9IFRoZSBmaWxlIG5hbWUgbXVzdCBlbmQgaW4gJycuezB9JycNCl9XQVJOX0ZpbGVuYW1lRXh0ZW5zaW9ucyA9IFRoZSBmaWxlIG5hbWUgbXVzdCBoYXZlIG9uZSBvZiB0aGUgZm9sbG93aW5nIGV4dGVuc2lvbnM6IHswfQ0KDV9VSV9Nb2RlbE9iamVjdCA9ICZNb2RlbCBPYmplY3QNCl9VSV9YTUxFbmNvZGluZyA9ICZYTUwgRW5jb2RpbmcNCl9VSV9YTUxFbmNvZGluZ0Nob2ljZXMgPSBVVEYtOCBBU0NJSSBVVEYtMTYgVVRGLTE2QkUgVVRGLTE2TEUgSVNPLTg4NTktMQ0KX1VJX1dpemFyZF9pbml0aWFsX29iamVjdF9kZXNjcmlwdGlvbiA9IFNlbGVjdCBhIG1vZGVsIG9iamVjdCB0byBjcmVhdGUNCg1fVUlfRmlsZUNvbmZsaWN0X2xhYmVsID0gRmlsZSBDb25mbGljdA0KX1dBUk5fRmlsZUNvbmZsaWN0ID0gVGhlcmUgYXJlIHVuc2F2ZWQgY2hhbmdlcyB0aGF0IGNvbmZsaWN0IHdpdGggY2hhbmdlcyBtYWRlIG91dHNpZGUgdGhlIGVkaXRvci4gIERvIHlvdSB3aXNoIHRvIGRpc2NhcmQgdGhpcyBlZGl0b3IncyBjaGFuZ2VzPw0KDQ0KX1VJX0FsZ29yaXRobV90eXBlID0gQWxnb3JpdGhtDQpfVUlfRXJyb3JGdW5jdGlvbl90eXBlID0gRXJyb3IgRnVuY3Rpb24NCl9VSV9UaHJlc2hvbGRFcnJvckZ1bmN0aW9uX3R5cGUgPSBUaHJlc2hvbGQgRXJyb3IgRnVuY3Rpb24NCl9VSV9SZWZlcmVuY2VTY2VuYXJpb0RhdGFNYXBfdHlwZSA9IFJlZmVyZW5jZSBTY2VuYXJpbyBEYXRhIE1hcA0KX1VJX1NpbXBsZUVycm9yRnVuY3Rpb25fdHlwZSA9IFNpbXBsZSBFcnJvciBGdW5jdGlvbg0KX1VJX0Vycm9yUmVzdWx0X3R5cGUgPSBFcnJvciBSZXN1bHQNCl9VSV9BdXRvbWF0aWNFeHBlcmltZW50X2Vycm9yRnVuY19mZWF0dXJlID0gRXJyb3IgRnVuYw0KX1VJX0Vycm9yUmVzdWx0X2Vycm9yQnlUaW1lU3RlcF9mZWF0dXJlID0gRXJyb3IgQnkgVGltZSBTdGVwDQpfVUlfRXJyb3JSZXN1bHRfZXJyb3JfZmVhdHVyZSA9IEVycm9yDQpfVUlfRXJyb3JSZXN1bHRfcmVmZXJlbmNlQnlUaW1lX2ZlYXR1cmUgPSBSZWZlcmVuY2UgQnkgVGltZQ0KX1VJX0Vycm9yUmVzdWx0X21vZGVsQnlUaW1lX2ZlYXR1cmUgPSBNb2RlbCBCeSBUaW1lDQpfVUlfRXJyb3JSZXN1bHRfdmFsaWRhdGlvbkVycm9yX2ZlYXR1cmUgPSBWYWxpZGF0aW9uIEVycm9yDQpfVUlfQW5hbHlzaXNFZGl0b3JfbWVudSA9ICZBbmFseXNpcyBFZGl0b3INCg1fVUlfUGFyZW50UGFnZV9sYWJlbCA9IFBhcmVudA0KX1VJX0xpc3RQYWdlX2xhYmVsID0gTGlzdA0KX1VJX1RyZWVQYWdlX2xhYmVsID0gVHJlZQ0KX1VJX1RhYmxlUGFnZV9sYWJlbCA9IFRhYmxlDQpfVUlfVHJlZVdpdGhDb2x1bW5zUGFnZV9sYWJlbCA9IFRyZWUgd2l0aCBDb2x1bW5zDQpfVUlfT2JqZWN0Q29sdW1uX2xhYmVsID0gT2JqZWN0DQpfVUlfU2VsZkNvbHVtbl9sYWJlbCA9IFNlbGYNCg1fVUlfQW5hbHlzaXNNb2RlbFdpemFyZF9sYWJlbCA9IEFuYWx5c2lzIE1vZGVsDQpfVUlfQW5hbHlzaXNNb2RlbFdpemFyZF9kZXNjcmlwdGlvbiA9IENyZWF0ZSBhIG5ldyBBbmFseXNpcyBtb2RlbA0KDV9VSV9BbmFseXNpc0VkaXRvcl9sYWJlbCA9IEFuYWx5c2lzIE1vZGVsIEVkaXRvcg0KDV9VSV9BbmFseXNpc0VkaXRvckZpbGVuYW1lRGVmYXVsdEJhc2UgPSBNeQ0KX1VJX0FuYWx5c2lzRWRpdG9yRmlsZW5hbWVFeHRlbnNpb25zID0gYW5hbHlzaXMNCg0NCl9VSV9PcHRpbWl6ZXJBbGdvcml0aG1fdHlwZSA9IE9wdGltaXplciBBbGdvcml0aG0NCg==