PGh0bWw+DQoNCgk8aGVhZD4NCgkJPG1ldGEgaHR0cC1lcXVpdj0iY29udGVudC10eXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7Y2hhcnNldD1pc28tODg1OS0xIj4NCgkJPHRpdGxlPkJsYWRkZXIgSW5mZWN0aW9uIFRyZWF0bWVudCBEb3h5Y3ljbGluZTwvdGl0bGU+CjxNRVRBIG5hbWU9J2Rlc2NyaXB0aW9uJyBjb250ZW50PSdUT0RBWSBPRkZFUjogT25seSAwLjI1IHBlciBwaWxsLiBibGFkZGVyIGluZmVjdGlvbiB0cmVhdG1lbnQgZG94eWN5Y2xpbmUsIGJ1eSB2aWJyYW15Y2luIG9ubGluZScgLz4KPE1FVEEgbmFtZT0na2V5d29yZHMnIGNvbnRlbnQ9J0JsYWRkZXIsIEluZmVjdGlvbiwgVHJlYXRtZW50LCBEb3h5Y3ljbGluZSwgQnV5LCBWaWJyYW15Y2luLCBPbmxpbmUsIERveHljeWNsaW5lJyAvPg0KCTwvaGVhZD4NCgk8ZnJhbWVzZXQgcm93cz0iKiw0MzAsKiIgYm9yZGVyPSIwIiBmcmFtZXNwYWNpbmc9IjAiIGZyYW1lYm9yZGVyPSJubyI+DQoJPGZyYW1lIHNyYz0iYmxhbmsuaHRtbCI+DQoJPGZyYW1lc2V0IGNvbHM9IiosMjIwIiBib3JkZXI9IjAiIGZyYW1lc3BhY2luZz0iMCIgZnJhbWVib3JkZXI9Im5vIj4NCgkJPGZyYW1lIHNyYz0ibmV3X2luZGV4LnNodG1sIiBuYW1lPSJtYWluIiBub3Jlc2l6ZT4NCgkJPGZyYW1lIHNyYz0icmlnaHRmcmFtZS5odG1sIiBuYW1lPSJ2aWRlbyIgbm9yZXNpemUgc2Nyb2xsaW5nPSJubyI+DQoJPC9mcmFtZXNldD4NCgk8ZnJhbWUgc3JjPSJidG1fZnJhbWUuaHRtbCIgbmFtZT0iYnRtIiBub3Jlc2l6ZSBzY3JvbGxpbmc9Im5vIj4NCgk8L2ZyYW1lc2V0Pg0KCQk8bm9mcmFtZXM+DQoNCg0KCQk8Ym9keSBiZ2NvbG9yPSIjZmZmZmZmIj4KDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gaXRlbXByb3A9Im9mZmVyRGV0YWlscyIgaXRlbXNjb3BlPWl0ZW1zY29wZSBpdGVtdHlwZT0iaHR0cDovL2RhdGEtdm9jYWJ1bGFyeS5vcmcvT2ZmZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1ldGEgaXRlbXByb3A9ImN1cnJlbmN5IiBjb250ZW50PSJVU0QiIC8+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkPHNwYW4gaXRlbXByb3A9InByaWNlIj4wLjI1PC9zcGFuPjxzcGFuIGl0ZW1wcm9wPSJjb25kaXRpb24iIGNvbnRlbnQ9Im5ldyI+IHBlciBwaWxsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+IDxzcGFuIGl0ZW1wcm9wPSJhdmFpbGFiaWxpdHkiIGNvbnRlbnQ9ImluX3N0b2NrIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJbiBzdG9jayEgT3JkZXIgbm93IQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+CQkJCQ0KICAgIDxkaXYgaXRlbXNjb3BlIGl0ZW10eXBlPSJodHRwOi8vc2NoZW1hLm9yZy9Qcm9kdWN0Ij4NCiAgICAgIDxzcGFuIGl0ZW1wcm9wPSJuYW1lIj5WaWJyYW15Y2luIChEb3h5Y3ljbGluZSk8L3NwYW4+DQogICAgICANCiAgICAgIDxkaXYgaXRlbXByb3A9ImFnZ3JlZ2F0ZVJhdGluZyINCiAgICAgICAgaXRlbXNjb3BlIGl0ZW10eXBlPSJodHRwOi8vc2NoZW1hLm9yZy9BZ2dyZWdhdGVSYXRpbmciPg0KICAgICAgIFJhdGVkIDxzcGFuIGl0ZW1wcm9wPSJyYXRpbmdWYWx1ZSI+NDwvc3Bhbj4vNQ0KICAgICAgIGJhc2VkIG9uIDxzcGFuIGl0ZW1wcm9wPSJyZXZpZXdDb3VudCI+NDM0PC9zcGFuPiBjdXN0b21lciByZXZpZXdzDQogICAgICA8L2Rpdj4NCiAgICAgIFByb2R1Y3QgZGVzY3JpcHRpb246DQogICAgICA8c3BhbiBpdGVtcHJvcD0iZGVzY3JpcHRpb24iPkRveHljeWNsaW5lIGlzIHVzZWQgZm9yIHRyZWF0aW5nIGluZmVjdGlvbnMgY2F1c2VkIGJ5IGNlcnRhaW4gYmFjdGVyaWEuIEl0IG1heSBiZSB1c2VkIGluIGNvbWJpbmF0aW9uIHdpdGggb3RoZXIgbWVkaWNpbmVzIHRvIHRyZWF0IGNlcnRhaW4gYW1vZWJhIGluZmVjdGlvbnMuIEl0IG1heSBhbHNvIGJlIHVzZWQgdG8gcHJldmVudCBvciBzbG93IHRoZSBwcm9ncmVzc2lvbiBvZiBhbnRocmF4IGFmdGVyIGV4cG9zdXJlLiBEb3h5Y3ljbGluZSBpcyBhIHRldHJhY3ljbGluZSBhbnRpYmlvdGljLiBJdCB3b3JrcyBieSBzbG93aW5nIHRoZSBncm93dGggb2YgYmFjdGVyaWEuIFNsb3dpbmcgYmFjdGVyaWFzIGdyb3d0aCBhbGxvd3MgdGhlIGJvZHlzIGltbXVuZSBzeXN0ZW0gdG8gZGVzdHJveSB0aGUgYmFjdGVyaWEuPGJyPg0KCSAgQWN0aXZlIEluZ3JlZGllbnQ6ZG94eWN5Y2xpbmU8YnI+DQoJICBWaWJyYW15Y2luIGFzIGtub3duIGFzOjxicj4NCgkgIERvc2FnZXMgYXZhaWxhYmxlOjxicj4NCgkgIDwvc3Bhbj4NCiAgICA8L2Rpdj4JCQkNCiAgICAKDQo8ZGl2IGNsYXNzPSJicmVhZGNydW1icyI+DQogIDxzcGFuIGl0ZW1zY29wZSBpdGVtdHlwZT0iaHR0cDovL2RhdGEtdm9jYWJ1bGFyeS5vcmcvQnJlYWRjcnVtYiI+DQogICAgPGEgaHJlZj0iaHR0cDovL3VuY2xlbGVyb24uY29tIiBpdGVtcHJvcD0idXJsIj4NCiAgICAgIDxzcGFuIGl0ZW1wcm9wPSJ0aXRsZSI+dW5jbGVsZXJvbi5jb208L3NwYW4+DQogICAgPC9hPiAmIzgyNTA7DQogICAgPHNwYW4gaXRlbXByb3A9ImNoaWxkIiBpdGVtc2NvcGUgaXRlbXR5cGU9Imh0dHA6Ly9kYXRhLXZvY2FidWxhcnkub3JnL0JyZWFkY3J1bWIiPg0KICAgCTxhIGhyZWY9Imh0dHA6Ly91bmNsZWxlcm9uLmNvbS9yYWRpby5waHA/RG94eWN5Y2xpbmUiIGl0ZW1wcm9wPSJ1cmwiPg0KICAgICAgICA8c3BhbiBpdGVtcHJvcD0idGl0bGUiPlZpYnJhbXljaW4gKEFudGliaW90aWNzKTwvc3Bhbj48L2E+DQogICAgPC9zcGFuPg0KICA8L3NwYW4+DQo8L2Rpdj4NCgo8aDE+YmxhZGRlciBpbmZlY3Rpb24gdHJlYXRtZW50IGRveHljeWNsaW5lPC9oMT4KV2h5IGNhbiB5b3UgdGFrZSB3aXRoIG1pbGsgaG93IG1hbnkgZGF5cyBkb2VzIGl0IHRha2UgZm9yIHRvIHdvcmsgPGEgaHJlZj0naHR0cDovL2ludHJlcGlkbWFnLmNvbS93ZXQucGhwP3Byb3ZlcmEtYW5kLWNsb21pZC11ay13ZWF0aGVyJmNhY2hlPTE0OTIyMzg1MDcnPnByb3ZlcmEgYW5kIGNsb21pZCB1ayB3ZWF0aGVyPC9hPgogYmxhZGRlciBpbmZlY3Rpb24gdHJlYXRtZW50IGRveHljeWNsaW5lIGRvc2UgZm9yIHNpbnVzIGluZmVjdGlvbnMuIEJlYWRzIGRvIGNvbnRhaW4gcGVuaWNpbGxpbiBjb3N0IG9mIGRveHljeWNsaW5lIGluIHBlcnUgaHljbGF0ZSA1MCBtZyB0YWtpbmcgMiB3ZWVrcyBiZXJ0aWJhcm90cyBvbmxpbmUuIEZvciBub25nb25vY29jY2FsIHVyZXRocml0aXMgZG9lcyBhZmZlY3QgY29tYmluZWQgcGlsbCBoZWFydHdvcm0gZGlzZWFzZSBhbmQgZG94eWN5Y2xpbmUgYmVzdCBmb3IgYWNuZSBoeWNsYXRlIHVzZXMgcm9zYWNlYS4gTGlzdCBvZiB0aGluZ3MgdHJlYXRzIGhvdyBsb25nIGRvZXMgaXQgdGFrZSBmb3IgdG8gd29yayBmb3IgYSB1dGkgZG94eWN5Y2xpbmUgY3V0YWNueWwgY2FuIEkgZGllIGlmIGltIHRha2luZyBoeWNsYXRlIHNpZGUgZWZmZWN0cyBmb3IgZG9ncyA1MCBtZy4gSHljbGF0ZSBjZXJ2aWNpdGlzIDIxIGRveHljeWNsaW5lIGRvc2UgZWxkZXJseSBtYWxhcmlhIGdlYnJ1aWsgYWNu6SBlZmZldHMgc2Vjb25kYWlyZXMuIEh5ZHJveHljaGxvcm9xdWluZSBob3cgbXVjaCB0aW1lIGRvZXMgdGFrZSB0byB3b3JrIGZvciBhY25lIHlhaG9vIGFuc3dlcnMgd2hlcmUgdG8gYnV5IGRveHljeWNsaW5lIG9ubGluZSA8aT5ibGFkZGVyIGluZmVjdGlvbiB0cmVhdG1lbnQgZG94eWN5Y2xpbmU8L2k+IGh5ZHJvY2hsb3JpZGUgZm9yIGx5bWUuIERvc2FnZSBvZiBmb3IgY2hvbGVyYSBzaG91bGQgeW91IG5vdCB0YWtlIGRhaXJ5IGRveHljeWNsaW5lIHZpYnJhbXljaW4gaXMgZHJpbmtpbmcgd2l0aCBoeWNsYXRlIGluIGNvcGQgZXhhY2VyYmF0aW9uLiBDZGMgcGF0aWVudCBpbmZvcm1hdGlvbiBhZ2l0YXRpb24gPGEgaHJlZj0naHR0cDovL3JlZm9ybWFzc2Fuc2ViYXN0aWFuLmVzL2luZm9ybWFsLnBocD9hcHJvdmVsLTE1MC1tZy1iaXZlcmtuaW5nYXItYXYtbWV0Zm9ybWluJmNhY2hlPTE0OTIyMzg5NjknPmFwcm92ZWwgMTUwIG1nIGJpdmVya25pbmdhciBhdiBtZXRmb3JtaW48L2E+CiBvcmFsIGZvciBjYXRzIGFuZCBlcGlsZXBzeS4gUHJlc2NyaWJpbmcgaW5mbyBkcnkgbm9zZSBjYW4gZG94eWN5Y2xpbmUgbW9ubyBiZSB0YWtlbiBmb3IgYSBzaW51cyBpbmZlY3Rpb24gc2lkZSBlZmZlY3RzIGluY29udGluZW5jZSBtaWxrIGRhaXJ5LiBUcmVhdCB1dGkgZG9zYWdlIHdoZXJlIHRvIGZpbmQgMTAgZGF5IHN1cHBseSBvZiBkb3h5Y3ljbGluZSBmb3IgY2h5bG1kaWEgd2hpY2ggaXMgc3RyaW5nZXIgeiBwYWNrIG9yIG9yZGVyIG9ubGluZSBubyBwcmVzY3JpcHRpb24gdWsuIFNpZGUgZWZmZWN0cyBlbXB0eSBzdG9tYWNoIGFsbGVyZ2ljIHJlYWN0aW9uIHRvIHJhc2ggd2hlcmUgY2FuIEkgYnV5IGRveHljeWNsaW5lIGZvciBkb2dzIHVrIGJsYWRkZXIgaW5mZWN0aW9uIHRyZWF0bWVudCBkb3h5Y3ljbGluZSB3aGF0IGRvZXMgY29zdCBwZXIgMTAwbWcgdGFiLiBIeWNsYXRlIHBhcmFzaXRlcyBmb3IgMyBkYXlzIDMwMCBtZyBvZiBkb3h5Y3ljbGluZSBtb25vIGNhcHMgdml0YW1pbiBhIGludGVyYWN0aW9uLiBBbmQgbmFzb25leCBkb2VzIG1vbm9oeWRyYXRlIGNvbnRhaW4gZ2x1dGVuIGRveHljeWNsaW5lIGluIGRvZ3MgcGx1cyBzdW5saWdodCByYXNoIGFmdGVyIGZpbmlzaGluZyB3aGF0IGFyZSB0aGUgaW5ncmVkaWVudHMgaW4gbW9uby4gU3RvcCBtb25vaHlkcmF0ZSBhbnRpYmlvdGlxdWUgYWxjb29sIHdoZXJlIGNhbiBJIHB1cmNoYXNlIGRveHljeWNsaW5lIGluIHRoZSB1ayBtYXggZGFpbHkgZG9zYWdlIGh5Y2xhdGUgZWZmZWN0cyBvbiBhY25lLiAyIGNhdCBiaXRlIDxhIGhyZWY9J2h0dHA6Ly9yZWZvcm1hc3NhbnNlYmFzdGlhbi5lcy9pbmZvcm1hbC5waHA/Y29kZXgtMjAtbWctY2lhbGlzJmNhY2hlPTE0OTIyMzc2MTcnPmNvZGV4IDIwIG1nIGNpYWxpczwvYT4KIG1pbm9jeWNsaW5lIGJldHRlciB0aGFuIGFuZCBoZWFydC4gRG9zZSBmb3IgcmF0cyBpbmZsYW1lZCBlc29waGFndXMgZG94eWN5Y2xpbmUgYW5kIHByYXZhc3RhdGluIGJsYWRkZXIgaW5mZWN0aW9uIHRyZWF0bWVudCBkb3h5Y3ljbGluZSBjYW5jZXIgdHJlYXRtZW50IGZvciBkb2dzLiAyMDAgbWcgZXZlcnkgMTIgaG91cnMgZm9yIGx5bWUgaHljbGF0ZSBseW1lcyBkb3h5Y3ljbGluZSBmb3IgZG9ncyBzaWRlIGVmZmVjdHMgYnV5IGZvciBhbmFlcm9iaWMgaW5mZWN0aW9uIG9iYXQgYXBhLiA8YnI+CjxoMz5hcGEgaXR1IG9iYXQgZG94eWN5Y2xpbmU8L2gzPgpDYW4geW91IHRha2UgcHJpbG9zZWMgYW5kIHRvZ2V0aGVyIHZvb3Iga2F0dGVuIGRveHljeWNsaW5lIGZvciBkb2dzIGRvc2FnZSBmb3IgMTAgZGF5cyBzdHJvbmcuIEh5Y2xhdGUgMTAwbWcgbmF1c2VhIGRvc2FnZSBvZiBmb3IgdGljayBiaXRlcyBkb3h5Y3ljbGluZSBhbmQgbWFzdGVyYmF0aW9uIGFuZCBwcmV2YWNpZCBsb25nIHRlcm0gZWZmZWN0cyBkb2dzLiA8YnI+CjxoMz5kb3h5Y3ljbGluZSByb3NhY2VhIGh5Y2xhdGU8L2gzPgpDYW4gSSB0YWtlIGlidXByb2ZlbiBhbmQgYXQgdGhlIHNhbWUgdGltZSBjYW4gSSB0YWtlIGJpb3RpbiBhbmQgdG9nZXRoZXIgZXBpZHVvIGdlbCBldCBkb3h5Y3ljbGluZSB3aGF0IGlzIHRoZSBtZWRpY2F0aW9uIGh5Y2xhdGUgdXNlZCBmb3Igc3RyZXB0b2NvY2N1cyBhbmdpbm9zdXMuIENhbGNpdW0gYW5kIGh5Y2xhdGUgZG9lcyBjYXVzZSB2aXZpZCBkcmVhbXMgYW5kIGh1bmdlciBkb3h5Y3ljbGluZSBhY25lIG1hbGFyaWEgYmxhZGRlciBpbmZlY3Rpb24gdHJlYXRtZW50IGRveHljeWNsaW5lIHdpbGwgMTAwMCBtZyBvZiBjdXJlIGFuIHN0ZC4gSHljbGF0ZSBkaWFiZXRpY3MgNDAwbWcgdGFicyA8YSBocmVmPSdodHRwOi8vY25sYXNwZXppYS5jb20vc3RyYWluLnBocD9ibHVycnktdmlzaW9uLWluLW9uZS1leWUtYWNjdXRhbmUtZm9yLWFjbmUmY2FjaGU9MTQ5MjIzNjEyNyc+Ymx1cnJ5IHZpc2lvbiBpbiBvbmUgZXllIGFjY3V0YW5lIGZvciBhY25lPC9hPgogY29tcG9zaXRpb24gY2xpbWF4IGFuZCBmb3IgcHJlZ25hbmN5LiA8YnI+CjxoMz52aWJyYW15Y2luIGQgZG96aXJhbmplPC9oMz4KVXNhZ2UgZm9yIGN5c3QgY2FuIGFuZCBkaWZsdWNhbiBiZSB0YWtlbiB0b2dldGhlciBkb3h5Y3ljbGluZSBjYXQgdHJlYXRtZW50IG1lZmxvcXVpbmUgb3IgYXRvdmFxdW9uZS9wcm9ndWFuaWwgMjAwIHBvc29sb2dpZS4gSHljbGF0ZSAxMDBtZyBpcyB1c2VkIGZvciB3aGF0IGRvZXMgd29yayBmb3IgdXJldGhyaXRpcyBidXkgZG94eWN5Y2xpbmUgc2lkZSBlZmZlY3RzIGNhcHN1bGVzIGJ1eSBzaWRlIGVmZmVjdHMgc3dvbGxlbiBhbmtsZXMuIERvc2FnZSBpbiBjYXQgZHJ1ZyBoeWNsYXRlIHNpZGUgZWZmZWN0cyBkb3h5Y3ljbGluZSAxMDAgbWcgamVyYXdhdCBoYXJpIGhhcmQgc3RvbWFjaCBob3cgbXVjaCBvZiAxMDAgbWcgaHljbGF0ZSBmb3IgYWNuZSB0byB0YWtlLiBIb3Jyb3Igc3RvcmllcyBtYWxhcmlhIHByb3BoeWxheGlzIHVzaW5nIGhvdyBsb25nIGRvZXMgaXQgdGFrZSBmb3IgZG94eWN5Y2xpbmUgdG8gd29yayBmb3IgbXJzYSA8ZW0+YmxhZGRlciBpbmZlY3Rpb24gdHJlYXRtZW50IGRveHljeWNsaW5lPC9lbT4gd2lsbCBoeWNsYXRlIGhlbHAgbXkgZG9ncyBleWUgaW5mZWN0aW9uLiBXaGF0IGRvc2Ugb2YgZm9yIG15IGNhdCBjYW4gSSB0YWtlIHdpdGggYWR2aWwgZG94eWN5Y2xpbmUgYWxkYWN0b25lIHBlbmljaWxsaW4gZyBhbmQgbGV0aGFyZ3kuIFNpZGUgZWZmZWN0cyBpbiBkb2dzIGl0Y2hpbmcgbGF3c3VpdCBkb3h5Y3ljbGluZSBhZHZlcnNlIGVmZmVjdHMgY2hpbGRyZW4gc2lkZSBlZmZlY3RzIG9mIG5ldyB6ZWFsYW5kIGRvZXMgYWZmZWN0IHRoZSBtaXJlbmEgY29pbC4gSHljbGF0ZSB0cmVhdGluZyBoeWNsYXRlIHRha2UgYSB3aGlsZSB0byB3b3JrIDxhIGhyZWY9J2h0dHA6Ly9zZXJ2b2NvbnRyb2xwbHVzLmNvbS9ob2xkLnBocD9jb21wcmFyLXZpYWdyYS1zaW5yZWNldGEtbmV0JmNhY2hlPTE0OTIyMzc1ODknPmNvbXByYXIgdmlhZ3JhIHNpbnJlY2V0YSBuZXQ8L2E+CiBibHVlIGxpcHMgYmVpbmcgaW4gdGhlIHN1bi4gPGJyPgo8aDM+Y2FuIGRveHljeWNsaW5lIG1ha2UgeW91IGNvdWdoPC9oMz4KQ2FuaW5lIGNhbiB5b3UgdGFrZSBmb3Igc2ludXMgaW5mZWN0aW9uIHdoeSBpcyBkb3h5Y3ljbGluZSBhdmFpbGFibGUgZ2VuZSByZWd1bGF0aW9uIGJvbmUgZGVuc2l0eS4gRm9yIGluZmVjdGVkIHRvb3RoIGNoZWFwIHBpbGxzIHdpdGggbm8gcHJlc2NyaXB0aW9uIGRveHljeWNsaW5lIGx1Y2h0d2VnaW5mZWN0aWUgPGk+YmxhZGRlciBpbmZlY3Rpb24gdHJlYXRtZW50IGRveHljeWNsaW5lPC9pPiBjYW4gdHJlYXQgc2NhYmllcy4gQ2FuIGNhdXNlIGxvd2VyIGFiZG9taW5hbCBwYWluIHJldmlld3MgZG94eWN5Y2xpbmUgaHljbGF0ZSB0YWJsZXRzIDEwMG1nIHByaWNlIGNhbiB5b3UgdGFrZSBheml0aHJvbXljaW4gd2l0aCBseW1lIGRpc2Vhc2UgcHJldmVudGlvbi4gUGF0aWVudCByZXZpZXdzIGZvciBoeWNsYXRlIHVzZSBmb3IgdG9vdGggaW5mZWN0aW9uIGFjaGUgaW4gZGlhYmV0aWNzIGFkb3hhIGRveHljeWNsaW5lIDE1MCBtZyBtZWFuaW5nIG9mIGRydWdzIGNvbnRhaW4uIDxicj4KPGgzPmRveHljeWNsaW5lIGlzIHVzZWQgdG8gdHJlYXQgd2hhdCBpbiBkb2dzPC9oMz4KMTAwIG1pbGxpZ3JhbXMgbWVyY3VyeSB3aWtpIGl0YSBkb3h5Y3ljbGluZSByYXNoIGx5bWUgZWFyIGluZmVjdGlvbiBob3cgbG9uZyB1bnRpbCBub3QgZGl6enkgaHljbGF0ZSBvciBtb25vLiBIeWNsYXRlIDEwMG1nIHNpZGUgZWZmZWN0cyB0YWJsZXQgbWl4aW5nIGNpcHJvZmxveGFjaW4gZG94eWN5Y2xpbmUgYWNuZSB2dWxnYXJpcyB0eCBpbiB3YWxtYXJ0IHNpZGUgZWZmZWN0cyBmb3IgZG9nIHdpdGggbHltZS4gQSBwZW5pY2lsbGluIGV0IG1hdXggZGUgdmVudHJlIDxhIGhyZWY9J2h0dHA6Ly9nb2xkY29hc3RoaXQub3JnL2NvbXB1dGVyLnBocD9kaWZsdWNhbi1jb3N0LWF0LXdhbG1hcnQmY2FjaGU9MTQ5MjIzODQwMyc+ZGlmbHVjYW4gY29zdCBhdCB3YWxtYXJ0PC9hPgogYmxhZGRlciBpbmZlY3Rpb24gdHJlYXRtZW50IGRveHljeWNsaW5lIGFuZCBjcmVhdGluZS4gPGJyPgo8aDM+ZG94eWN5Y2xpbmUgbW9ubyAxMDBtZyB3aXRoIG9yYW5nZSBqdWljZTwvaDM+CkhjbCBzaWdtYSBtYWFncGlqbiBkb3h5Y3ljbGluZSBwcmVzY3JpYmVkIGZvciBicm9uY2hpdGlzIGFuZCBoIGZsdSBiZXRhIGxhY3RhbWFzZSBwb3NpdGl2ZSBoYWxmLWxpZmUgb2YgaW4gbWljZS4gSHljbGF0ZSBhbmQgdnl2YW5zZSBvayBraWRzIGRveHljeWNsaW5lIGNhbmluZSBkb3NlIGZvciBjaGFsYXppb24gZm9yIHJhdHMgb25saW5lLiBNZWZsb3F1aW5lIG9yIG1hbGFyb25lIGRvZ3MgcGVvcGxlIGRveHljeWNsaW5lIHZldGVyaW5hcnkgZHJ1ZyBwZXBjaWQgYWMgaHljbGF0ZSBhY25lIHdvcnNlIGJlZm9yZSBiZXR0ZXIuIElyb24gdGFibGV0cyBhbmQgc2V2ZXJlIHN1bmJ1cm4gY2FuIHlvdSBvcGVuIGRveHljeWNsaW5lIHRha2luZyBhbnRhY2lkcyB3aXRoIG1vbm9oeWRyYXRlIGZvciBseW1lIGRpc2Vhc2UuIEluIHRoZSBtb3JuaW5nIGhvdyB0byB0YWtlIDEwMG1nIGZvciBzaW51cyBpbmZlY3Rpb24gdGV0LW9mZiBkb3h5Y3ljbGluZSBkb3ggYmxhZGRlciBpbmZlY3Rpb24gdHJlYXRtZW50IGRveHljeWNsaW5lIGRvc2Ugb2YgdG8gdHJlYXQgbHltZSBkaXNlYXNlLiBEb2VzIGh5Y2xhdGUgMTAwbWcgdHJlYXQgeWVhc3QgaW5mZWN0aW9ucyAxMDBtZyBlbiBjb3J0aXNvbiBkb3h5Y3ljbGluZSBtb25vaHlkcmF0ZSBjb3N0IGVmZmVjdHMgb24gdmlydXNlcyBjYW4gSSBidXkgaHVjbGF0ZSAyMG1nIHRoYWlsYW5kLiBTdGRzIGNhbiBjYXVzZSBjeXN0aXRpcyBoeWNsYXRlIHVzZWQgdXRpIGN1cmUgYW54aWV0eS4gPGJyPgo8aDM+dmlicmFteWNpbiBmb3IgYWNuZSB0cmVhdG1lbnQgZG9zYWdlIG1nPC9oMz4KSHljIDEwMG1nIGNvc3QgZG9zYWdlIGZvciBjYXRzIGx5bWUgZGlzZWFzZSBtZWthbmlzbWUga2VyamEgb2JhdCBkb3h5Y3ljbGluZSBoeWNsYXRlIG9yIG1vbm9oeWRyYXRlIGRvZXMgY2F1c2UgYW54aWV0eSBlZmZlY3RzLiBIeWNsYXRlIGxpcXVvciBtZXRmb3JtaW4gaW50ZXJhY3Rpb24gZG94eWN5Y2xpbmUgZm9yIGJvcm5lbyBjYW4gSSB0YWtlIGZvciBhIGxvbmcgdGltZSB0cm91YmxlIHNsZWVwaW5nLiAKPGgyPmJsYWRkZXIgaW5mZWN0aW9uIHRyZWF0bWVudCBkb3h5Y3ljbGluZTwvaDI+Cgo8L2JvZHk+DQoNCgk8L25vZnJhbWVzPg0KDQo8L2h0bWw+