PHRhYmxlPgo8dGhlYWQ+Cjx0cj4KPHRoIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5CaW88L3RoPgo8L3RyPgo8L3RoZWFkPgo8dGJvZHk+Cjx0cj4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5GdWxsIE5hbWU8L3RkPgo8dGQgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPkV2YW4gSmFtZXMgSmFja3NvbjwvdGQ+CjwvdHI+Cjx0cj4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5DdXJyZW50IEFsaWFzPC90ZD4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5WZWxvY2l0eTwvdGQ+CjwvdHI+Cjx0cj4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5Gb3JtZXIgQWxpYXNlczwvdGQ+Cjx0ZCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+Q29iYWx0IElJPC90ZD4KPC90cj4KPHRyPgo8dGQgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPkdlbmRlcjwvdGQ+Cjx0ZCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+TWFsZTwvdGQ+CjwvdHI+Cjx0cj4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5TZXh1YWxpdHk8L3RkPgo8dGQgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPkJpc2V4dWFsPC90ZD4KPC90cj4KPHRyPgo8dGQgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPlByb25vdW5zPC90ZD4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5IZS9IaW08L3RkPgo8L3RyPgo8dHI+Cjx0ZCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+RC5PLkI8L3RkPgo8dGQgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPkp1bmUgMTB0aDwvdGQ+CjwvdHI+Cjx0cj4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5DdXJyZW50IEFnZTwvdGQ+Cjx0ZCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+MjU8L3RkPgo8L3RyPgo8dHI+Cjx0ZCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+SGFpciBDb2xvcjwvdGQ+Cjx0ZCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+V2hpdGU8L3RkPgo8L3RyPgo8dHI+Cjx0ZCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+RXllIENvbG9yPC90ZD4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5HcmVlbjwvdGQ+CjwvdHI+Cjx0cj4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5IZWlnaHQ8L3RkPgo8dGQgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPjUnNiZxdW90OzwvdGQ+CjwvdHI+Cjx0cj4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5PY2N1cGF0aW9uPC90ZD4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5TLlQuQS5SLiBMYWJzIEVtcGxveWVlPC90ZD4KPC90cj4KPHRyPgo8dGQgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPkFsaWdubWVudDwvdGQ+Cjx0ZCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+R29vZDwvdGQ+CjwvdHI+Cjx0cj4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5BZmZpbGlhdGlvbnM8L3RkPgo8dGQgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPk5vbmUuIEZvcm1lcmx5OyBEZW52ZXIncyBEZWZlbmRlcnMsIEZsYXNoIEZhbWlseTwvdGQ+CjwvdHI+Cjx0cj4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5JZGVudGl0eTwvdGQ+Cjx0ZCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+U2VjcmV0PC90ZD4KPC90cj4KPHRyPgo8dGQgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPkJhc2UgT2YgT3BlcmF0aW9uczwvdGQ+Cjx0ZCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+RGVudmVyLCBDb2xvcmFkbzwvdGQ+CjwvdHI+Cjx0cj4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5CaXJ0aHBsYWNlPC90ZD4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5EZW52ZXIsIENvbG9yYWRvPC90ZD4KPC90cj4KPHRyPgo8dGQgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPlVuaXZlcnNlPC90ZD4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij48YSBocmVmPSJodHRwOi8vZGMud2lraWEuY29tL3dpa2kvUHJpbWVfRWFydGgiPlByaW1lIEVhcnRoPC9hPjwvdGQ+CjwvdHI+Cjx0cj4KPHRkIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5UaGVtZTwvdGQ+Cjx0ZCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+PGEgaHJlZj0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vd2F0Y2g/dj11VTRFQk5kbER6dyI+VGhlIFlvdW5nICZhbXA7IFRoZSBIb3BlbGVzczwvYT4sIGJ5IEdvb2QgQ2hhcmxvdHRlPC90ZD4KPC90cj4KPC90Ym9keT4KPC90YWJsZT4KPGhyIC8+CjxoMT5BYm91dDwvaDE+Cjx0YWJsZT4KPHRoZWFkPgo8dHI+Cjx0aCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+RWFybHkgWWVhcnM8L3RoPgo8L3RyPgo8L3RoZWFkPgo8dGJvZHk+CjwvdGJvZHk+CjwvdGFibGU+CjxwPkV2YW4gaXMgdGhlIHNlY29uZCBwZXJzb24gdG8gdGFrZSB1cCB0aGUgbmFtZSBDb2JhbHQuIEhpcyBGYXRoZXIgYmVpbmcgdGhlIGZpcnN0LiBFdmFuJ3MgRmF0aGVyIGdhaW5lZCB0aGUgYWJpbGl0eSBvZiBTdXBlciBTcGVlZCB0aHJvdWdoIGFuIGV4cGVyaW1lbnQgZ29uZSB3cm9uZywgd2hpY2ggY29ubmVjdGVkIGhpbSB0byB0aGUgU3BlZWQgRm9yY2UuIEV2YW4ncyBjb25uZWN0aW9uIHRvIHRoZSBTcGVlZCBGb3JjZSBpcyBoZXJlZGl0YXJ5LiBIZSB3YXMgY29uY2VpdmVkIGZpdmUgeWVhcnMgYWZ0ZXIgaGlzIEZhdGhlciBnYWluZWQgaGlzIGFiaWxpdGllcy4gVGhpcyBtYWtlcyBFdmFuIGEgTWV0YS1IdW1hbi4gSGlzIEZhdGhlciBzYWNyaWZpY2VkIGhpcyBsaWZlIHRvIHByb3RlY3QgdGhlaXIgaG9tZSBjaXR5LiBCZWNhdXNlIG9mIHRoaXMgbG9zcywgPGEgaHJlZj0iaHR0cHM6Ly90d2l0dGVyLmNvbS9Nb21PZlZlbG9jaXR5Ij5FdmFuJ3MgTW90aGVyPC9hPiB3YXMgYWdhaW5zdCBFdmFuIGZvbGxvd2luZyB0aGUgc2FtZSBwYXRoLiBIb3BpbmcgdGhhdCB0aGVpciBzb24gZGlkIG5vdCBoYXZlIEFiaWxpdGllcyBsaWtlIGhpcyBGYXRoZXIuIFdoZW4gRXZhbiB0dXJuZWQgMTAsIGhpcyBQb3dlcnMgYmVnYW4gbWFuaWZlc3RpbmcuIFRoaXMgZnJpZ2h0ZW5lZCBoaXMgTW90aGVyLCBsZWFkaW5nIGhlciB0byBtYWtlIGhpbSBzd2VhciB0aGF0IGhlIHdvdWxkIE5FVkVSIHVzZSBoaXMgcG93ZXJzLiA8L3A+Cjx0YWJsZT4KPHRoZWFkPgo8dHI+Cjx0aCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+Q29iYWx0IFJpc2VzPC90aD4KPC90cj4KPC90aGVhZD4KPHRib2R5Pgo8L3Rib2R5Pgo8L3RhYmxlPgo8cD5UaGlzIGxhc3RlZCBmb3IgZm91ciB5ZWFycy4gVW50aWwgYW4gYWNjaWRlbnQgd2hpbGUgb24gU2Nob29sIGZpZWxkIHRyaXAgZm9yY2VkIGhpbSB0byB1c2UgaGlzIFNwZWVkIHRvIHNhdmUgbmVhcmJ5IGlubm9jZW50IHBlb3BsZS4gSXQgd2FzIHRoaXMgYWNjaWRlbnQgdGhhdCBsZWFkIHRvIGhpbSBiZWNvbWluZyBhIEhlcm8uIFRoYXQgbmlnaHQsIGhlIHRvbGQgaGlzIE1vdGhlciB3aGF0IGhhZCBoYXBwZW5lZCwgdG8gd2hpY2ggaGUgd2FzIHNjb2xkZWQuIEFuZCB3YXMgdG9sZCB0byBub3QgdXNlIGhpcyBQb3dlcnMgZXZlciBhZ2Fpbi4gV2hpY2ggb2J2aW91c2x5IGhlIGRpZC4gQWZ0ZXIgaGlzIE1vdGhlciBjYXVnaHQgd2luZCBvZiB0aGlzLCBzaGUgcmV2ZWFsZWQgd2hhdCBoYXBwZW5lZCB0byBoaXMgRmF0aGVyLCBhbmQgZ2F2ZSBoaW0gdGhlIEZyaWN0aW9uLVByb29mIHN1aXQgLSB0aGF0IHdvdWxkIGxldCBoaW0gdXNlIGhpcyBzcGVlZCBwcm9wZXJseSB3aXRob3V0IGJ1cm5pbmcgaGlzIGNsb3RoZXMsIHRoYXQgaGlzIEZhdGhlciB1c2VkLiBTaGUgaGFkIGRlY2lkZWQgdGhhdCBzaGUgY291bGRuJ3Qgc3RvcCBoaW0gZnJvbSBmb2xsb3dpbmcgaGlzIGZhdGhlcidzIGZvb3RzdGVwcy4gU28gc2hlIHJlbHVjdGFudGx5IGFsbG93ZWQgaGltIHRvIGRvIGl0LiBTbyBFdmFuIHRvb2sgaGlzIEZhdGhlcidzIEFsaWFzLCBDb2JhbHQsIGFuZCBiZWdhbiB0aGUgam91cm5leSBvZiBiZWluZyBhIEhlcm8uCkR1cmluZyB0aGlzIHRpbWUsIEV2YW4gbWV0IGEgZ2lybCBuYW1lZCA8YSBocmVmPSJodHRwczovL3R3aXR0ZXIuY29tL1dpbGxPZkRlc2lyZSI+TGl6YSBCYXRob3J5PC9hPi4gVGhlIHR3byBxdWlja2x5IGZlbGwgaW4gbG92ZSBhbmQgc29vbiBiZWdhbiBhIHJlbGF0aW9uc2hpcC4gVGhlIHBhaXIgbGFzdGVkIGZvciB5ZWFycyB1bnRpbCBMaXphIG15c3RlcmlvdXNseSB2YW5pc2hlZCB3aXRob3V0IGEgd29yZC4gVGhpcyBsZWZ0IEV2YW4gaGVhcnRicm9rZW4sIHVzaW5nIGhpcyBTcGVlZCwgYW5kIHNwZW50IGFuIGVudGlyZSBtb250aCBzZWFyY2hpbmcgZm9yIGhlci4gQmFyZWx5IHNsZWVwaW5nLiBCdXQgaGUgd2FzIGV2ZW50dWFsbHkgc3RvcHBlZCBieSBoaXMgTW90aGVyLCB0ZWxsaW5nIGhpbSB0aGF0IGl0IHdhc24ndCBoZWFsdGh5IGZvciBoaW0gdG8gc3BlbmQgZW50aXJlIG5pZ2h0cyBzZWFyY2hpbmcgZm9yIGhlci4gQWZ0ZXIgRXZhbidzIFVuY2xlLCBTdGFuIEFzaGZvcmQsIHRoZSBDaGllZiBvZiBEZW52ZXIncyBQb2xpY2UgRGVwYXJ0bWVudCwgZm91bmQgb3V0IGFib3V0IHRoZSAmcXVvdDtOZXcgU3BlZWRzdGVyIEhlcm8mcXVvdDsgaW4gRGVudmVyLCBoZSB3YXMgYXBwcm9hY2hlZCBieSBTdGFuLiBXaG8gdHJpZWQgdG8gdGFsayBoaW0gb3V0IG9mIGl0LCBidXQgZmFpbGVkIHRvIGRvIHNvLiBFdmVudHVhbGx5IGdpdmluZyB1cCwgU3RhbiB0b2xkIEV2YW4gdGhhdCBoZSdkIGRvIHdoYXQgaGUgY2FuIHRvIGhlbHAgRXZhbiwgc28gbG9uZyBhcyBFdmFuIGhlbHBlZCB0aGUgUG9saWNlIG9uIHNwZWNpZmljIENhc2VzLiBXaGljaCBFdmFuIGFncmVlZCB0by48L3A+Cjx0YWJsZT4KPHRoZWFkPgo8dHI+Cjx0aCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+VGhlIEZhc3Rlc3QgTWFuIEFsaXZlPC90aD4KPC90cj4KPC90aGVhZD4KPHRib2R5Pgo8L3Rib2R5Pgo8L3RhYmxlPgo8cD5BZnRlciBhd2hpbGUsIEV2YW4gY2FtZSB0byB0aGUgcmVhbGl6YXRpb24gdGhhdCBoZSBrbmV3IG5vdGhpbmcgYWJvdXQgaGlzIHBvd2Vycy4gV2hlcmUgdGhleSBjYW1lIGZyb20sIHdoYXQgcG93ZXJzIGl0LCBhbmQgd2hhdCBoZSBjYW4gZG8uIFNvIGhlIG1hZGUgdGhlIGRlY2lzaW9uIHRvIHRyYXZlbCB0byBDZW50cmFsIENpdHksIGFuZCBzZWVrIG91dCBoaXMgSWRvbCwgVGhlIEZsYXNoLiBXaXRoIHRoZSBpbnRlbnRpb24gdG8gYXNrIHRoZSBGYXN0ZXN0IE1hbiBBbGl2ZSB0byB0ZWFjaCBoaW0gaG93IHRvIHVzZSBoaXMgcG93ZXJzLCBhcyB3ZWxsIGFzIGxlYXJuIGFib3V0IHRoZW0uIEl0IHdhcyBhdCB0aGlzIHBvaW50LCBFdmFuIGNhbWUgdG8gbGVhcm4gYWJvdXQgdGhlIFNwZWVkIEZvcmNlLCBhbmQgd2hlcmUgaXQgY2FtZSBmcm9tLiBOZWVkbGVzcyB0byBzYXksIEV2YW4ncyBpbm5lciBzY2llbmNlIE5lcmQgd2FzIGZhc2NpbmF0ZWQgYnkgaXQuIE92ZXIgdGltZSwgRXZhbiBhbmQgRmxhc2ggYmVjYW1lIGNsb3NlIGZyaWVuZHMuIFRoZSBMYXR0ZXIgZXZlbnR1YWxseSByZXZlYWxpbmcgaGlzIGlkZW50aXR5IHRvIGhpbSwgYW5kIGludHJvZHVjaW5nIGhpbSB0byBib3RoIFdhbGx5IFdlc3QncywgYW5kIEF2ZXJ5IEhvLCBUaGUgRmxhc2ggb2YgdGhlIEp1c3RpY2UgTGVhZ3VlIG9mIENoaW5hLjwvcD4KPHRhYmxlPgo8dGhlYWQ+Cjx0cj4KPHRoIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5MZWdhY3k8L3RoPgo8L3RyPgo8L3RoZWFkPgo8dGJvZHk+CjwvdGJvZHk+CjwvdGFibGU+CjxwPkR1cmluZyBhbiBpbnRlbnNlIGNoYXNlIHdpdGggdGhlIFNwZWVkc3RlciBab3JhbiwgdG8gd2hpY2ggRXZhbiB3YXMgbG9zaW5nLCBFdmFuIHdhcyBzYXZlZCBieSB0aGUgcmV0dXJuIG9mIGhpcyBmYXRoZXIsIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vTW9tZW50dW1zUGFyaWFoIj5FdWdlbmUgSmFja3NvbjwvYT4sIHRoZSBvcmlnaW5hbCBDb2JhbHQuICBBZnRlciBab3JhbiByZXRyZWF0ZWQsIHRoZSBwYWlyIHNwb2tlLiBFdWdlbmUgZXhwbGFpbmluZyB0byBFdmFuIHRoYXQgaGUgaGFkIHRvIHN0YXkgYXdheSBpbiBvcmRlciB0byB0cnkgYW5kIHByb3RlY3QgRXZhbiBhbmQgRWxhaW5lLiBFdmFuIHdhcyBhbmdyeSwgYW5kIHJpZ2h0ZnVsbHkgc28sIGJ1dCB3YXMgbW9yZSB0aGFuIGhhcHB5IHRvIGhhdmUgaGlzIEZhdGhlciBiYWNrLiBFdmFuIGFncmVlZCB0byBub3QgdGVsbCBoaXMgbW90aGVyIGFib3V0IEV1Z2VuZSdzIHJldHVybi4gQ29udGludWluZyB0byBwcm90ZWN0IERlbnZlciBhcyBDb2JhbHQsIHdpdGggcHJpZGUuIEtub3dpbmcgaGlzIEZhdGhlciB3YXMgd2F0Y2hpbmcsIHByb3VkIG9mIGhpbS48L3A+Cjx0YWJsZT4KPHRoZWFkPgo8dHI+Cjx0aCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+R3JhZHVhdGlvbiBEYXk8L3RoPgo8L3RyPgo8L3RoZWFkPgo8dGJvZHk+CjwvdGJvZHk+CjwvdGFibGU+CjxwPk1vbnRocyBwYXNzZWQgc2luY2UgdGhlIGxhc3Qgc2lnaHRpbmcgb2YgWm9yYW4uIEJ1dCBFdmFuIGtlcHQgbG9va2luZywgd2l0aCB0aGUgaGVscCBvZiBFdWdlbmUuIEV1Z2VuZSBpbnNpc3RlZCB0aGF0IEV2YW4gZm9jdXNlZCBtb3JlIG9uIGhpcyBwZXJzb25hbCBsaWZlLCBhcyBoaXMgSGlnaCBTY2hvb2wgR3JhZHVhdGlvbiB3YXMgcXVpY2tseSBhcHByb2FjaGluZywgYW5kIGxlYXZlIGxvb2tpbmcgZm9yIFpvcmFuIHRvIGhpcyBGYXRoZXIuIEV2YW4gcmVsdWN0YW50bHkgYWdyZWVkLCBzcGVuZGluZyB0aGUgbGFzdCBmZXcgd2Vla3Mgd2l0aCBoaXMgZnJpZW5kcyBiZWZvcmUgdGhleSBncmFkdWF0ZWQuIEJ1dCB0aGVuIEdyYWR1YXRpb24gRGF5IGNhbWUuIEFmdGVyIHRoZSBDZXJlbW9ueSwgRXZhbiwgYW5kIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vVmF1bHRlZFRlbmFjaXR5Ij5TYWlyYSBLeWFzYXJpbjwvYT4gY2VsZWJyYXRlZCBzZXBhcmF0ZSBmcm9tIHRoZSBvdGhlcnMuIEVhdGluZyBQaXp6YSBsaWtlIHRoZSBEb3JrcyB0aGV5IHdlcmUuIEl0IHdhcyBhIGhhcHB5IG1vbWVudCwgb25lIHRoYXQgZXZlbiBFdmFuIGZvdW5kIGhpbXNlbGYgZW5qb3lpbmcuIEFzIHRoZSBkdW8gd2VyZSBoYXZpbmcgdGhlaXIgY2xpcXVlZCAmcXVvdDtGaW5hbCBUb2FzdHMmcXVvdDsgdG8gb25lIGFub3RoZXIsIFpvcmFuIGFwcGVhcmVkLiBUYWtpbmcgU2FpcmEsIGFuZCByYW4gb2ZmLiBFdmFuIGltbWVkaWF0ZWx5IGdhdmUgY2hhc2UuPC9wPgo8dGFibGU+Cjx0aGVhZD4KPHRyPgo8dGggc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPlJldmVsYXRpb25zPC90aD4KPC90cj4KPC90aGVhZD4KPHRib2R5Pgo8L3Rib2R5Pgo8L3RhYmxlPgo8cD5DaGFzaW5nIFpvcmFuIHRvIHRoZSB3YXJlaG91c2Ugd2hlcmUgdGhleSBsYXN0IGZvdWdodCwgdGhlIEV2aWwgU3BlZWRzdGVyIHJldmVhbGVkIGhpcyBJZGVudGl0eSwgYXMgbm9uZSBvdGhlciB0aGFuIEV1Z2VuZSBKYWNrc29uISBFdmFuIGNvdWxkbid0IGJlbGlldmUgd2hhdCBoZSBzYXcuIEJ1dCB0aGVuIEV1Z2VuZSBleHBsYWluZWQgZXZlcnl0aGluZy4gSG93IHRoYXQgaGUgd2FzIGZyb20gdGhlIDIzcmQgQ2VudHVyeSwgYW5kIHJhbiB0byB0aGUgMjFzdCBDZW50dXJ5IGFzIGEgVGVlbmFnZXIgdG8gaGlkZS4gU3R1Y2sgaW4gdGhlIEVyYS4gSG93IHRoYXQgJ0NvYmFsdCcgd2FzIGNyZWF0ZWQgb3V0IG9mIHNoZWVyIGJvcmVkb20sIGFuZCB0aGF0IHRoZSByZWFzb24gdGhlcmUgd2FzIHR3byBvZiB0aGVtLCB3YXMgZHVlIHRvIGEgU3BlZWQgRm9yY2UgQWJpbGl0eS4gVGhlIFNwZWVkIFNjb3V0LiBBZnRlciBhbGwgdGhhdCB2aWxsYWlub3VzIGV4cG9zaXRpb24sIHRoZSBvbGRlciBTcGVlZHN0ZXIgYmVnYW4gdG8gdGF1bnQgRXZhbi4gVGFsa2luZyBhYm91dCBob3cgRXZhbiB3b3VsZCBuZXZlciBiZSBmYXN0IGVub3VnaCB0byBkZWZlYXQgaGltLiBTYWlyYSBwcm90ZXN0ZWQsIHRlbGxpbmcgaGVyIGZyaWVuZCB0byBub3QgbGlzdGVuIHRvIGhpbS4gVGhhdCBoZSB3YXMgZ29vZCBlbm91Z2guIFRoZSBIZXJvIGV2ZXJ5b25lIG5lZWRlZCBoaW0gdG8gYmUuIEFuZCB0byBwcm92ZSBhIHBvaW50LCBFdWdlbmUgbXVyZGVyZWQgaGVyLiBTaHJlZGRpbmcgaGVyIGhlYXJ0IHdpdGggYSBWaWJyYXRpbmcgaGFuZC4gV2F0Y2hpbmcgaGlzIGJlc3QgZnJpZW5kIERpZSBiZWZvcmUgaGltLCBFdmFuIHJlc3BvbmRlZCB3aXRoIFB1cmUgUmFnZS4gVGhlIFR3byBTcGVlZHN0ZXJzIGVuZ2FnaW5nIGluIG9uZSBmaW5hbCwgaGlnaCBzdGFrZXMgYmF0dGxlLjwvcD4KPHRhYmxlPgo8dGhlYWQ+Cjx0cj4KPHRoIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5UaGUgRmFzdGVzdCBJbiBEZW52ZXI8L3RoPgo8L3RyPgo8L3RoZWFkPgo8dGJvZHk+CjwvdGJvZHk+CjwvdGFibGU+CjxwPlRoZSBJbnRlbnNlIEJhdHRsZSB3YXMgTG9uZyBhbmQgSGFyZC4gRXZhbiBiZWluZyBwdXNoZWQgdG8gaGlzIHV0bW9zdCBsaW1pdCwgd2hpbGUgRXVnZW5lIHRveWVkIGFyb3VuZCB3aXRoIHRoZSBUZWVuYWdlIFNwZWVkc3Rlci4gTW9ja2luZyBoaW0sIHRocmVhdGVuaW5nIGhpcyBtb3RoZXIuIFJpbGluZyB1cCBFdmFuJ3MgZW1vdGlvbnMuIFRvIHRoZSBwb2ludCB3aGVyZSBFdmFuIHRlbXBvcmFyaWx5IGJyb2tlIGhpcyBsaW1pdHMsIGFuZCByZWFjaGVkIHRoZSBTcGVlZCBvZiBMaWdodCBmb3IgdHdvIHdob2xlIHNlY29uZHMsIHRha2luZyBFdWdlbmUgYnkgU3VycHJpc2UuIE1ha2luZyBoaW0gRmFzdGVyIHRoYW4gaGlzIEZhdGhlciwgYW5kIGFibGUgdG8gZGVmZWF0IGhpbS4gRXZhbidzIEFuZ2VyIGdvdCB0aGUgYmV0dGVyIG9mIGhpbSwgYW5kIGhlIHByb2NlZWRlZCB0byBicnV0YWxseSBiZWF0IHVwIGhpcyBGYXRoZXIuIElmIGl0IHdlcmVuJ3QgZm9yIHRoZSB0aW1lbHkgYXJyaXZhbCBvZiBUaGUgRmxhc2gsIHdobyB0YWxrZWQgRXZhbiBpbnRvIHN0b3BwaW5nIGJlZm9yZSBraWxsaW5nIGhpcyBGYXRoZXIsIGFuZCBjb252aW5jZWQgaGltIHRvIGxvY2sgaGltIHVwIGluIElyb24gSGVpZ2h0cyBQZW5pdGVudGlhcnkuIEV2YW4gdGhlbiB0b2xkIEJhcnJ5IGV2ZXJ5dGhpbmcgdGhhdCBoYXBwZW5lZCwgYWJvdXQgaGlzIEZhdGhlciwgYW5kIGhpcyB0ZW1wb3JhcnkgYm9vc3QgaW4gU3BlZWQsIHdoaWNoIGhlIGhhc24ndCBiZWVuIGFibGUgdG8gYWNoaWV2ZSBhZ2FpbiBzaW5jZS4gQWZ0ZXIgZXZlcnl0aGluZyB3aXRoIGhpcyBGYXRoZXIsIGFuZCBTYWlyYSdzIERlYXRoLCBFdmFuIGRlY2lkZWQgdG8gc3RvcCBiZWluZyBhIEhlcm8uIFN0YXRpbmcgdGhhdCBoZSBjb3VsZG4ndCBicmluZyBoaW1zZWxmIHRvIHB1dCB0aGUgc3VpdCBvbiBhZnRlciBldmVyeXRoaW5nLjwvcD4KPHRhYmxlPgo8dGhlYWQ+Cjx0cj4KPHRoIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5TaXggTW9udGhzIExhdGVyPC90aD4KPC90cj4KPC90aGVhZD4KPHRib2R5Pgo8L3Rib2R5Pgo8L3RhYmxlPgo8cD5TaXggTW9udGhzIHBhc3NlZCBzaW5jZSB0aGUgZGVmZWF0IG9mIEV1Z2VuZSBKYWNrc29uLCBhbmQgdGhlIGxhc3Qgc2lnaHRpbmcgb2YgQ29iYWx0LiBFdmFuIGJlZ2FuIHRvIHN0dWR5IE1lZGljYWwgU2NpZW5jZSwgQ2hlbWlzdHJ5IGFuZCBQaHlzaWNzLiBEZWNpZGluZyB0aGF0IGhlIHdhbnRlZCB0byBiZWNvbWUgYSBEb2N0b3IgbGlrZSBoaXMgTW90aGVyLCBvciBmb2xsb3cgYSBwYXRoIG9mIFNjaWVuY2UsIHNob3VsZCBiZWluZyBhIERvY3RvciBub3Qgd29yayBvdXQuIFNhaXJhJ3MgRGVhdGggY29udGludWVkIHRvIGhhdW50IEV2YW4sIG1ha2luZyBoaW0gbW9yZSBjeW5pY2FsIHRoYW4gaGUgdXN1YWxseSBjYW1lIG9mZiBhcy4gRGlzdGFuY2luZyBoaW1zZWxmIGZyb20gaGlzIGZyaWVuZHMsIGFuZCBoaXMgcm9tYW50aWMgaW50ZXJlc3QgPGEgaHJlZj0iaHR0cHM6Ly90d2l0dGVyLmNvbS9GZWFsdHlPZkhlYXJ0Ij5Jemlkb3JhICdJenp5JyBPYnNpZGlhbjwvYT4uIE9ubHkgY29tbXVuaWNhdGluZyB3aXRoIHRoZW0gaWYgbmVjZXNzYXJ5LiBHb2luZyBzbyBmYXIgYXMgdG8gcmVudCBhIGNyYXBweSBvbGQgYXBhcnRtZW50IG9uIHRoZSBmdXJ0aGVyIHBhcnRzIG9mIHRoZSBDb2xsZWdlIENhbXB1cyB3aXRoIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vVW5rbm93bkhlcm9pc20iPkFkZHlzb24gVHJpcHA8L2E+LiBIZSBmaWd1cmVkIHRoYXQgaGUnZCBiZSBiZXR0ZXIgb2ZmIHNlZWluZyBvbmUgcGVyc29uIGFsbCB0aGUgdGltZSwgYXMgb3Bwb3NlZCB0byBydW5uaW5nIGludG8gcGVvcGxlIGhlIGtuZXcgaW4gdGhlIHByb3BlciBEb3Jtcy48L3A+Cjx0YWJsZT4KPHRoZWFkPgo8dHI+Cjx0aCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+VmVsb2NpdHkgUmlzZXM8L3RoPgo8L3RyPgo8L3RoZWFkPgo8dGJvZHk+CjwvdGJvZHk+CjwvdGFibGU+CjxwPlRoaXMgc3RvcnkgY2FuIGJlIGZvdW5kIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vaS9tb21lbnRzLzkzMTY4OTE2NDQyODM4NjMwNSI+aGVyZTwvYT4uIEl0IHRlbGxzIHRoZSBzdG9yeSBvZiBFdmFuJ3MgZGVjaXNpb24gdG8gcmV0dXJuIHRvIHRoZSBsaWZlIG9mIGEgSGVybywgYnV0IHdpdGggYSBuZXcgbmFtZS48L3A+Cjx0YWJsZT4KPHRoZWFkPgo8dHI+Cjx0aCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+VW5leHBlY3RlZCBDb21wbGljYXRpb248L3RoPgo8L3RyPgo8L3RoZWFkPgo8dGJvZHk+CjwvdGJvZHk+CjwvdGFibGU+CjxwPk1lcmUgd2Vla3MgYWZ0ZXIgRXZhbidzIHJldHVybiwgaGlzIEZhdGhlciB3YXMgcmVsZWFzZWQgZnJvbSBwcmlzb24uIEluIGEgam9pbnQgZWZmb3J0IGJldHdlZW4gPGEgaHJlZj0iaHR0cHM6Ly90d2l0dGVyLmNvbS9WYWxpYW50RGVjZWl0Ij5MZXggTHV0aG9yPC9hPiwgYW5kIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vVGFpbnRlZFJlZENoYW9zIj5Bbm5hYmV0aCBCbMO8ZGdhdGU8L2E+LiBXaGlsc3QgQW5uYWJldGggYW5kIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vR290aGFtUXVpY2tEcmF3Ij5NYXJjb3MgRGVuemVsPC9hPiBwaWNrZWQgdXAgdGhlIG5ld2x5IHJlbGVhc2VkIEV1Z2VuZSwgTHV0aG9yIGdhdmUgYSBzcGVlY2ggYXQgRGVudmVyIFVuaXZlcnNpdHkuIFdoZXJlIGhlIG1lbnRpb25lZCBoaXMgJnF1b3Q7SGVyb2VzIFdpdGhvdXQgTWFza3MmcXVvdDsgT3JnYW5pemF0aW9uLCB0aGUgcmVsZWFzZSBvZiBFdWdlbmUsIHRyeWluZyB0byBwbGF5IGhpbSBvZmYgYXMgYW4gaW5ub2NlbnQgbWFuIHdyb25nZnVsbHkgY29udmljdGVkLCBhbmQgcGFpbnRpbmcgVmVsb2NpdHkgYXMgYSBmYWxzZSBoZXJvLCBhbmQgYSBjb3dhcmQuIENsZWFybHkgdXBzZXR0aW5nIEV2YW4sIHdob20gd2FzIGluIGF0dGVuZGFuY2UgZHVyaW5nIHRoZSBzcGVlY2guIFRoZSByZWxlYXNlIG9mIGhpcyBmYXRoZXIgcHJvbXB0ZWQgRXZhbiB0byBzZWVrIGhlbHAgZnJvbSBEZW52ZXIncyBvdGhlciBWaWdpbGFudGVzIGFuZCBIZXJvZXMsIGluY2x1ZGluZyBtZW1iZXIgb2YgTHV0aG9yJ3MgT3JnYW5pemF0aW9uIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vRm9yZWlnbkV0aGVyIj5MYXlsYSBMZW9wYXJkPC9hPiB0byBzdGFydC4gQXNzZW1ibGluZyBhIHRlYW0gdG8gc3RvcCB3aGF0ZXZlciBMdXRob3IsIEV1Z2VuZSwgQW5uYWJldGggYW5kIE1hcmNvcyB3ZXJlIHVwIHRvLiBNdWNoIGhhcyBoYXBwZW5lZCBzaW5jZSB0aGVuLiBIZSdzIG1hZGUgbmV3IGZyaWVuZHMsIHByb3ZlbiBoaW1zZWxmIHRvIGJlIGEgZ3JlYXQgaGVyby4gSGUgc2F2ZWQgRGVudmVyLCBhbmQgZXZlbiB0aGUgV29ybGQsIGZyb20gYWJzb2x1dGUgYW5uaWhpbGF0aW9uIHNldmVyYWwgdGltZXMuPC9wPgo8dGFibGU+Cjx0aGVhZD4KPHRyPgo8dGggc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPkNlbGVyaXR5PC90aD4KPC90cj4KPC90aGVhZD4KPHRib2R5Pgo8L3Rib2R5Pgo8L3RhYmxlPgo8cD5JbiBDZW50cmFsIENpdHksIGEgYml6YXJyZSA8YSBocmVmPSJodHRwczovL2RjLmZhbmRvbS5jb20vd2lraS9UaGVfRmxhc2hfVm9sXzVfMSI+bGlnaHRuaW5nIHN0b3JtPC9hPiB3b3VsZCBzdHJpa2UgbWFueSBwZW9wbGUsIGdyYW50aW5nIHRoZW0gYSBjb25uZWN0aW9uIHRvIHRoZSBTcGVlZCBGb3JjZSwgdGhvdWdoIG1vc3Qgd2VyZSBzb29uIGtpbGxlZCBieSA8YSBocmVmPSJodHRwczovL2RjLmZhbmRvbS5jb20vd2lraS9BdWd1c3RfSGVhcnRfKFByaW1lX0VhcnRoKSI+R29kc3BlZWQ8L2E+LiBPbmUgb2YgdGhlc2UgcGVvcGxlLCA8YSBocmVmPSJodHRwczovL3R3aXR0ZXIuY29tL3NwZWVkd2l0aGluIj5KYWVseW5uIEdyZXk8L2E+IHdhcyBsdWNreSBlbm91Z2ggdG8gaGF2ZSBsZWZ0IENlbnRyYWwgQ2l0eSByaWdodCBhZnRlciBiZWluZyBzdHJ1Y2sgYnkgdGhlIGxpZ2h0bmluZywgYW5kIGNhbWUgdG8gRGVudmVyLiBFdmFuIHdhcyBxdWljayB0byBkaXNjb3ZlciB0aGUgbmV3IFNwZWVkc3RlciwgYW5kIGFwcHJvYWNoIGhlci4gT2ZmZXJpbmcgdG8gdGVhY2ggaGVyIGhvdyB0byBwcm9wZXJseSB1dGlsaXplIGhlciBuZXcgcG93ZXJzLiBFdmVudHVhbGx5LCBKYWVseW5uIHdvdWxkIGJlY29tZSBvbmUgb2YgRXZhbidzIGNsb3Nlc3QgZnJpZW5kcywgYW5kIHNvb24gYmVjYW1lIENlbGVyaXR5LCBWZWxvY2l0eSdzIHBhcnRuZXIuPC9wPgo8dGFibGU+Cjx0aGVhZD4KPHRyPgo8dGggc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPkxvc3QgSW4gVGltZTwvdGg+CjwvdHI+CjwvdGhlYWQ+Cjx0Ym9keT4KPC90Ym9keT4KPC90YWJsZT4KPHA+VGhpcyBzdG9yeSBjYW4gYmUgZm91bmQgPGEgaHJlZj0iaHR0cHM6Ly90d2l0dGVyLmNvbS9JbW1vcmFsTW9tZW50dW0vc3RhdHVzLzEwOTgxMDQ1OTg1NTkxODI4NDgiPmhlcmU8L2E+IGFuZCA8YSBocmVmPSJodHRwczovL3R3aXR0ZXIuY29tL0Zhc3Rlc3RJbkRlbnZlci9zdGF0dXMvMTA5ODUwNDMwMTc5NjcxNjU0NSI+aGVyZTwvYT4uIEl0IHRlbGxzIHRoZSBzdG9yeSBvZiBFdmFuJ3MgcXVlc3QgdGhyb3VnaCB0aGUgdGltZSBzdHJlYW0gYW5kIGV2ZW4gPGEgaHJlZj0iaHR0cHM6Ly9kYy5mYW5kb20uY29tL3dpa2kvSHlwZXJ0aW1lIj5IeXBlcnRpbWU8L2E+IGl0c2VsZiwgdG8gZmluZCBoaXMgd2F5IGJhY2sgaG9tZS48L3A+Cjx0YWJsZT4KPHRoZWFkPgo8dHI+Cjx0aCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+VGhlIERlYXRoKHMpIGFuZCBSZWJpcnRoKHMpIE9mIENlbGVyaXR5PC90aD4KPC90cj4KPC90aGVhZD4KPHRib2R5Pgo8L3Rib2R5Pgo8L3RhYmxlPgo8cD5PbmUgZGF5LCBKYWVseW5uIHdhcyBicnV0YWxseSBtdXJkZXJlZCBieSA8YSBocmVmPSJodHRwczovL3R3aXR0ZXIuY29tL0ltbW9yYWxNb21lbnR1bSI+RW9iYXJkIFRoYXduZTwvYT4sIHdobyB3b3VsZCBydW4gdGhlIGJvZHkgb3ZlciB0byBFdmFuIHRvIHRhdW50IGFuZCAoZnVydGhlcikgdHJhdW1hdGl6ZSBoaW0uIFRob3VnaCwgZm9yIHVua25vd24gcmVhc29ucywgVGhhd25lIHNvb24gd2VudCBiYWNrIHRvIHdoZW4gaGUga2lsbGVkIEphZWx5bm4gYW5kIHN0b3BwZWQgaGVyIGRlYXRoLiBCZWNhdXNlIEphZWx5bm4ncyByZXN1cnJlY3Rpb24gYXMgc2VlbiBhcyBhbiBhbHRlcmF0aW9uIHRvIHRoZSBUaW1lbGluZSwgPGEgaHJlZj0iaHR0cHM6Ly90d2l0dGVyLmNvbS9PZlJhcGlkbmVzcyI+VGhlIEZsYXNoPC9hPiBraWxsZWQgaGVyIGluIGFuIGF0dGVtcHQgYXQgY29ycmVjdGluZyB0aGUgdGltZWxpbmUuIE9uY2UgYWdhaW4sIHNoZSB3YXMgYnJvdWdodCBiYWNrIHRvIGxpZmUgYnkgVGhhd25lLCBidXQgd2l0aCBhIHR3aXN0IC0gc2hlIG5vdyB3aXRoIGEgY29ubmVjdGlvbiB0byB0aGUgU3BlZWQgRm9yY2UncyBOZWdhdGl2ZSBDb3VudGVycGFydC4gRmxhc2gncyBhY3Rpb25zIHdvdWxkIGxlYWQgdG8gRXZhbiBvcGVubHkgY29uZGVtbmluZyBCYXJyeSwgYW5kIGZvcmV2ZXIgcHV0dGluZyBhIHdlZGdlIGJldHdlZW4gVmVsb2NpdHksIGFuZCBoaXMgZmVsbG93IFNwZWVkc3RlcnMuPC9wPgo8dGFibGU+Cjx0aGVhZD4KPHRyPgo8dGggc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPlMuVC5BLlIuIExhYnMgQW5kIENlbnRyYWwgQ2l0eTwvdGg+CjwvdHI+CjwvdGhlYWQ+Cjx0Ym9keT4KPC90Ym9keT4KPC90YWJsZT4KPHA+RHVyaW5nIGhpcyB0aW1lIGluIGNvbGxlZ2UsIGhpcyBicmlsbGlhbmNlIHdhcyByZWNvZ25pemVkIGJ5IG9uZSBvZiBoaXMgcHJvZmVzc29ycy4gVGhlIHByb2Zlc3NvciBoYWQgYW4gb2xkIGZyaWVuZCB3aG8gd29ya2VkIGZvciBTLlQuQS5SLiBMYWJzLCBEb2N0b3IgTGluZGEgRm9yZCwgYW5kIHB1dCBpbiBhIGhpZ2ggcmVjb21tZW5kYXRpb24gZm9yIGhpbSB3aGVuIHRoZXkgd2VyZSBzZWVraW5nIG91dCBwcm9taXNpbmcgeW91bmcgc2NpZW50aXN0cyBmb3IgYW4gaW50ZXJuc2hpcC4gRXZhbiB3YXMgdGhyaWxsZWQsIGJ1dCB0aGUgb2ZmZXIgaGFkIGEgY2F0Y2guIEhlIGhhZCB0byBtb3ZlIHRvIENlbnRyYWwgQ2l0eSBmb3IgaXQuIE5hdHVyYWxseSwgZ2l2ZW4gaG93IHJvdWdoIGhpcyByZWxhdGlvbnNoaXAgd2l0aCB0aGUgRmxhc2ggRmFtaWx5IGhhZCBnb3R0ZW4gb3ZlciB0aGUgeWVhcnMsIGhlIHdhcyByZWx1Y3RhbnQgYXQgZmlyc3QuIEJ1dCBoZSByZWZ1c2VkIHRvIGFsbG93IHBlcnNvbmFsIGdyaWV2YW5jZXMgZ2V0IGluIHRoZSB3YXkgb2YgYSBncmVhdCBvcHBvcnR1bml0eS4gQWNjZXB0aW5nIHRoZSBJbnRlcm5zaGlwLCBFdmFuIG1vdmVkIHRvIGFuIGFwYXJ0bWVudCBpbiBDZW50cmFsIENpdHksIGJ1dCB3aGVuIGhpcyBmb3JtZXIgcHJvdMOpZ8OpIEphZWx5bm4gc2F3IHRoZSBzdGF0ZSB0aGF0IGhlciBmcmllbmQgd2FzIGxpdmluZyBpbiwgc2hlIGRlY2lkZWQgdG8gYnV5IGhpbSBhIHBlbnRob3VzZS4gU2VyaW91c2x5LjwvcD4KPHRhYmxlPgo8dGhlYWQ+Cjx0cj4KPHRoIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5GZWFyIFRoZSBSZWFwZXI8L3RoPgo8L3RyPgo8L3RoZWFkPgo8dGJvZHk+CjwvdGJvZHk+CjwvdGFibGU+CjxwPkJvdW5jaW5nIGJldHdlZW4ga2VlcGluZyBhbiBleWUgb24gRGVudmVyIGFuZCBDZW50cmFsIENpdHkgd2FzIHN0cmVzc2Z1bC4gRXZlbiB3aXRoIHRoZSBhc3Npc3RhbmNlIG9mIHRoZSBBcnRpZmljaWFsIEludGVsbGlnZW5jZSBjcmVhdGVkIGJ5IGhpcyBGYXRoZXIsIGFuZCBmZWxsb3cgRGVudmVyIERlZmVuZGVyIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vVmlvbGV0RGVmZW5kZXIiPlRoZSBWaW9sZXQgTGFudGVybjwvYT4uIEhvd2V2ZXIsIGFmdGVyIHRoZSBkaXNjb3Zlcnkgb2YgdGhlIHRocmVlIG5ldyBGb3JjZXMsIDxhIGhyZWY9Imh0dHBzOi8vZGMuZmFuZG9tLmNvbS93aWtpL1N0aWxsX0ZvcmNlIj5UaGUgU3RpbGwgRm9yY2U8L2E+LCA8YSBocmVmPSJodHRwczovL2RjLmZhbmRvbS5jb20vd2lraS9TdHJlbmd0aF9Gb3JjZSI+U3RyZW5ndGggRm9yY2U8L2E+IGFuZCA8YSBocmVmPSJodHRwczovL2RjLmZhbmRvbS5jb20vd2lraS9TYWdlX0ZvcmNlIj5TYWdlIEZvcmNlPC9hPiwgY2FtZSB3aXRoIGl0IG5ldyBIZXJvZXMgYW5kIG5ldyB0aHJlYXRzLiBPbmUgc3VjaCB0aHJlYXQgd2FzIGEgd29tYW4gbmFtZWQgRXJpbiBNYXN0ZXJzLCB3aG8gY2FsbGVkIGhlcnNlbGYgVGhlIEZvcmNlIFJlYXBlci4gU2hlIGhhZCBhIHVuaXF1ZSBhYmlsaXR5IHRvIGxlZWNoIG9mZiBvZiB0aGUgY29ubmVjdGlvbiBvZiBvdGhlciBGb3JjZSBjb25kdWl0cywgYW5kIGdhaW4gaGVyIG93biBjb25uZWN0aW9uIHRvIHRoYXQgY29uZHVpdHMgcmVzcGVjdGl2ZSBGb3JjZS4gU2hlIHdhcyBhIGNoYWxsZW5naW5nIGZvZSBmb3IgRXZhbiwgZXZlbiBpbiB0aGVpciBmaXJzdCBlbmNvdW50ZXIuIFNoZSBhbHJlYWR5IGhhZCBhY2Nlc3MgdG8gdGhlIFN0aWxsIEZvcmNlIHRocm91Z2ggc2lwaG9uaW5nIHRoZSBjb25uZWN0aW9uIGZyb20gYW4gdW5rbm93biB1c2VyLCBhbmQgdGhlIFNhZ2UgRm9yY2UgZnJvbSBhIHlvdW5nIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vR0VORVNJU05PTU9SRSI+V29tYW48L2E+LiBVc2luZyBvbmUgb2YgdGhlIG1vcmUgZGVzdHJ1Y3RpdmUgYWJpbGl0aWVzIG9mIHRoZSBTcGVlZCBGb3JjZSwgYSBmdWxsIHBvd2VyZWQgZGlzY2hhcmdlLCBoZSB3YXMgYWJsZSB0byBkZWZlYXQgVGhlIFJlYXBlci4gSW4gdGhlIHByb2Nlc3MsIGhlIGFncmVlZCB0byB0ZWFjaCBMZWlhIHdoYXQgaGUgY291bGQgYWJvdXQgaGVyIHBvd2VycywgYW5kIGV2ZW4gaG93IHRvIGJlIGEgJnF1b3Q7aGVybyZxdW90Oy4gRXZlbiBjcmVhdGluZyBhIG5ldyAmcXVvdDtCdW5rZXImcXVvdDsgaW4gQ2VudHJhbCBDaXR5LCBrbm93biBhcyBKdXBpdGVyIEJhc2UsIHRvIGFjdCBhcyBhIGJhc2Ugb2Ygb3BlcmF0aW9ucyBmb3IgRXZhbiBhbmQgTGVpYSwgbm93IGtub3duIGFzIEdlbmVzaXMuIEV2YW4gdmlzaXRlZCBFcmluIGluIGhlciBJcm9uIEhlaWdodHMgcHJpc29uIGNlbGwsIGFzIEV2YW4sIG5vdCBWZWxvY2l0eSwgbWFueSB0aW1lcyB0byB0cnkgYW5kIHVuZGVyc3RhbmQgaGVyIGFuZCBoZWxwIGhlci4gSGUgZmVsdCB0aGF0IHRoZXkgd2VyZW4ndCBzbyBkaWZmZXJlbnQuPC9wPgo8dGFibGU+Cjx0aGVhZD4KPHRyPgo8dGggc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPk5vIE1vcmUgSGVyb2VzPC90aD4KPC90cj4KPC90aGVhZD4KPHRib2R5Pgo8L3Rib2R5Pgo8L3RhYmxlPgo8cD5BZnRlciBFb2JhcmQga2lkbmFwcGVkIGEgcHJlZ25hbnQgSmFlbHlubiBhbmQgdG9vayBoZXIgdG8gdGhlIDI1dGggQ2VudHVyeSwgRXZhbiBhbmQgZnJpZW5kcyB3ZXJlIGRldmlzaW5nIGEgcGxhbiB0byByZXNjdWUgSmFlbHlubiBmcm9tIHRoZSBSZXZlcnNlIEZsYXNoLCBldmVuIGdvaW5nIHNvIGZhciBhcyB0byB0ZWFtIHVwIHdpdGggaGlzIHN3b3JuIG5lbWVzaXMgVGhlIEZvcmNlIFJlYXBlci4gSG93ZXZlciwgdGhleSB3ZXJlIHVuYWJsZSB0byBmaW5kIEphZWx5bm4gaW4gdGltZSwgYW5kIHNoZSByZXR1cm5lZCB3aXRoIGhlciBuZXdib3JuIGRhdWdodGVyLiBBbmdyeSwgYW5kIHRyYXVtYXRpemVkIGFmdGVyIGJlaW5nIHRvcnR1cmVkIGJ5IFRoYXduZS4gVGhpcyBsZWQgdG8gYSBmYWxsaW5nIG91dCBiZXR3ZWVuIEV2YW4gYW5kIEphZWx5bm4uIE9idmlvdXNseSwgdGhpcyBoaXQgaGltIGluY3JlZGlibHkgaGFyZC4gSGUgZmFpbGVkIGhpcyBjbG9zZXN0IGZyaWVuZCBvbmNlIGFnYWluLiBIZSB3YXMgYSBmYWlsdXJlIGFzIGEgcGVyc29uLCBhIGZyaWVuZCBhbmQgYSBoZXJvLiBTaG9ydGx5IGFmdGVyLCB3aXRob3V0IGEgd29yZCBvciBhbnkgZ29vZGJ5ZXMsIEV2YW4gZGlzYXBwZWFyZWQuPC9wPgo8dGFibGU+Cjx0aGVhZD4KPHRyPgo8dGggc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPlNvbGl0dWRlPC90aD4KPC90cj4KPC90aGVhZD4KPHRib2R5Pgo8L3Rib2R5Pgo8L3RhYmxlPgo8cD5EZWNpZGluZyB0byBpc29sYXRlIGhpbXNlbGYgb24gdGhlIG1vc3QgcmVtb3RlIGlzbGFuZCBvbiBFYXJ0aCwgVHJpc3RhbiBkYSBDdW5oYS4gSGUgYnVpbHQgaGltc2VsZiBhIHNtYWxsIGNhYmluIG9uIHRoZSBpc2xhbmQsIGFuZCByZW1haW5lZCB0aGVyZSBmb3IgbW9udGhzLiBVbmF3YXJlIHRvIHdoYXQgd2FzIGhhcHBlbmluZyBpbiB0aGUgb3V0c2lkZSB3b3JsZCwgb3IgZXZlbiBoaXMgZnJpZW5kcy4gRXZhbidzIGFic2VuY2UgaGFkIGFwcGFyZW50bHkgY2F1c2VkIGEgZG9taW5vIGVmZmVjdCBpbiBoaXMgZnJpZW5kcycgbGl2ZXMuIEV2YW4gaGltc2VsZiB0aGlua3MgaXQgd2FzIGp1c3QgYSBjb2luY2lkZW5jZS4gTGVpYSBoYWQgYXR0ZW1wdGVkIHRvIHVzZSBKdXBpdGVyIEJhc2VzIEEuSSwgRC5FLkMuQS4gdG8gbG9jYXRlIGhpbSwgYnV0IEV2YW4gaGFkIGluc3RhbGxlZCBhIGZhaWwgc2FmZS4gSW5zdGVhZCBvZiByZXZlYWxpbmcgaGlzIHRydWUgbG9jYXRpb24sIHRoZSBBLkkuIHdvdWxkIGxvY2F0ZSBoaW0gaW4gYSBwbGFjZSBrbm93biBhcyB0aGUgPGEgaHJlZj0iaHR0cHM6Ly9mb3J0bml0ZS5mYW5kb20uY29tL3dpa2kvVGlsdGVkX1Rvd2VycyI+VGlsdGVkIFRvd2VyczwvYT4uIFRoZSBsb2NhdGlvbiBpcyBmaWN0aW9uYWwsIHNvIG5hdHVyYWxseSBpdCBwaXNzZWQgTGVpYSBvZmYuIEFzIGludGVuZGVkLiBEdXJpbmcgaGlzIHRpbWUgb24gdGhlIGlzbGFuZCwgaGUgd2FzIHZpc2l0ZWQgYnkgRXJpbiwgd2hvIGhhZCBub3cgZ2FpbmVkIHRoZSBhYmlsaXR5IHRvIGFjY2VzcyB0aGUgdGhpcmQgRm9yY2UsIFRoZSBTdHJlbmd0aCBGb3JjZS4gQWxsIHNoZSBuZWVkZWQgd2FzIHRoZSBTcGVlZCBGb3JjZS4gSGVyIG9ic2Vzc2lvbiB3aXRoIFZlbG9jaXR5IGhhZCBtYWRlIGhlciBkZWNpZGUgdGhhdCBpdCB3b3VsZCBiZSBoaXMgY29ubmVjdGlvbiBzaGUnZCBzaXBob24gb2ZmIG9mLiBTaGUgd2FzIHNob2NrZWQgdG8gbGVhcm4gdGhhdCBFdmFuIGFuZCBWZWxvY2l0eSB3ZXJlIG9uZSBhbmQgdGhlIHNhbWUuIEluc3RlYWQgb2YgZmlnaHRpbmcgaGVyLCBob3dldmVyLCBFdmFuIGFuZCBFcmluIHdvdWxkIHNpbXBseSB0YWxrLiBUYWxrIGFib3V0IGhlciBoaXN0b3J5LCBoZXIgbW90aXZhdGlvbnMgLSBhbmQgd2hhdCBzaGUgd291bGQgZG8gd2hlbiBzaGUgZ2FpbmVkIHRoZSBwb3dlciBvZiB0aGUgZm91ciBGb3JjZXMsIGFuZCB1bmxvY2tlZCB0aGUgcG93ZXIgb2YgdGhlIDxhIGhyZWY9Imh0dHBzOi8vZGMuZmFuZG9tLmNvbS93aWtpL0ZvcmV2ZXJfRm9yY2UiPkZvcmV2ZXIgRm9yY2U8L2E+LiBUaGUgZW5jb3VudGVyIGVuZGVkIHdpdGggRXZhbiByZXR1cm5pbmcgdG8gaGlzIFNvbGl0dWRlLCBhbmQgRXJpbiBsZWF2aW5nLiA8L3A+Cjx0YWJsZT4KPHRoZWFkPgo8dHI+Cjx0aCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+Rm9yZXZlcjwvdGg+CjwvdHI+CjwvdGhlYWQ+Cjx0Ym9keT4KPC90Ym9keT4KPC90YWJsZT4KPHA+QWZ0ZXIgZm91ciBtb250aHMsIEV2YW4gZmVsdCBpdCB3YXMgdGltZSB0byByZXR1cm4uIE11Y2ggaGFkIGNoYW5nZWQgaW4gdGhlIHRpbWUgaGUgd2FzIGdvbmUuIFBlb3BsZSBoYWQgY2hhbmdlZC4gTGVpYSBoYWQgbW92ZWQgdG8gQ2FsaWZvcm5pYSwgSmFlbHlubiB3YXMgc3VjY2Vzc2Z1bGx5IHJ1bm5pbmcgaGVyIGZhbWlsaWVzIGJ1c2luZXNzIGFmdGVyIHRoZSBtdXJkZXIgb2YgaGVyIHBhcmVudHMuIFMuVC5BLlIuIExhYnMgd2FzIHRocml2aW5nIHdoZW4gaXQgY2FtZSB0byB3b3JrLiBXZWVrcyBhZnRlciBoZSByZXR1cm5lZCwgYWZ0ZXIgaGUgaGFkIGZpbmFsbHkgYWRqdXN0ZWQgYmFjayB0byBoaXMgbGlmZS4gRXJpbiByZXR1cm5lZCBpbiBhIG5ldywgZ2xvd2luZyBmb3JtLiBCb2FzdGluZyB0aGUgcG93ZXIgb2YgdGhlIEZvcmV2ZXIgRm9yY2UuIERlc3BpdGUgRXZhbidzIHdhcm5pbmdzLCBzaGUgdXNlZCBpdHMgcG93ZXIuIEJ1dCBzaGUgY2FtZSB0byBoaW0gZm9yIGhlbHAgd2l0aCBpdC4gU2hlIGNvdWxkbid0IGNvbnRyb2wgaXQuIEhlIHRyaWVkIHRvIGhlbHAgYXMgbXVjaCBhcyBoZSBjb3VsZC4gVGhlIHR3byBzZWVtaW5nbHkgYmVjYW1lIGF0dGFjaGVkIHRvIG9uZSBhbm90aGVyLCBhbmQgc3BlbnQgb25lIG5pZ2h0IHRvZ2V0aGVyLiBXaGVuIEV2YW4gYXdva2UsIEVyaW4gd2FzIGdvbmUgd2l0aG91dCBhIHRyYWNlLiBIZSB0cmllZCB0byBsb29rIGZvciBoZXIsIGJ1dCBjYW1lIHVwIHdpdGggbm90aGluZy4gQnV0IHNvbWV0aGluZyBoYWQgY2hhbmdlZCBpbiBoaXMgbGlmZSB3aXRob3V0IGhpcyBrbm93bGVkZ2UuIEhpcyBoaXN0b3J5IGhhZCBjaGFuZ2VkLiBJbnN0ZWFkIG9mIGhpcyBGYXRoZXIgYmVpbmcgdGhlIFN1cGVydmlsbGFpbiBab3JhbiwgaGUgd2FzIHNpbXBseSBhIGFic2VudGVlIGZhdGhlci4gQW5vdGhlciBtYW4gaGFkIGJlY29tZSBab3JhbiBhbmQgdG9ybWVudGVkIEV2YW4gaW4gaGlzIHlvdW5nZXIgZGF5cy4gQW5vdGhlciBoYWQgbXVyZGVyZWQgaGlzIEhpZ2ggU2Nob29sIGJlc3QgZnJpZW5kLiBIZSBoYXMgeWV0IHRvIGRpc2NvdmVyIHRoYXQgaGlzIGhpc3RvcnkgaGFkIGJlZW4gY2hhbmdlZC48L3A+Cjx0YWJsZT4KPHRoZWFkPgo8dHI+Cjx0aCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+Rmxhc2ggRGF5PC90aD4KPC90cj4KPC90aGVhZD4KPHRib2R5Pgo8L3Rib2R5Pgo8L3RhYmxlPgo8cD5QZW50IHVwIGFuZ2VyIHRvd2FyZHMgQmFycnkgQWxsZW4sIGFuZCB0aGUgRmxhc2ggRmFtaWx5LCB3aG8gaGFkIHNlZW1pbmdseSB0dXJuZWQgYSBibGluZCBleWUgb24gdGhlIG11cmRlciBvZiBKYWVseW5uLCBmaW5hbGx5IHJlYWNoZWQgaXRzIGJvaWxpbmcgcG9pbnQuIFNvbWV0aGluZyBpbiBFdmFuIGJyb2tlLCBhbmQgaGUgbWFkZSBhIHZvdyB0byBoaW1zZWxmLiBUbyBwcm92ZSB0aGF0IFRoZSBGbGFzaCB3YXMgbm90IHRoZSBoZXJvIHRoYXQgZXZlcnlvbmUgdGhvdWdodCBoZSB3YXMuIFRoYXQgaGUgd2FzIGEgbXVyZGVyZXIuIER1cmluZyBCYXJyeSdzIHNwZWVjaCBhdCBoaXMgYW5udWFsIGFwcGVhcmFuY2Ugb24gRmxhc2ggRGF5LCBFdmFuIGludGVycnVwdGVkLCBhbmQgdmVyeSBwdWJsaWNseSBhdHRhY2tlZCBCYXJyeS4gQmFycnkgdHJpZWQgdG8gdGFsayBFdmFuIG91dCBvZiB3aGF0IGhlIHdhcyBkb2luZywgYnV0IHRoZSBzaXR1YXRpb24gcXVpY2tseSBzcGlyYWxlZCBvdXQgb2YgY29udHJvbC4gVGhlIHR3byBmb3VnaHQsIGNhdXNpbmcgYSBsb3Qgb2YgZGFtYWdlIHRvIENlbnRyYWwgQ2l0eS4gVGhpcyB3YXMgdGhlIGRheSBFdmFuIHNldmVyZWQgdGllcyB3aXRoIHRoZSBGbGFzaCBGYW1pbHkuIEJ1cm5pbmcgdGhlIGJyaWRnZSBkb3duLCBzbyB0byBzcGVhay48L3A+Cjx0YWJsZT4KPHRoZWFkPgo8dHI+Cjx0aCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+UmV0dXJuIFRvIERlbnZlcjwvdGg+CjwvdHI+CjwvdGhlYWQ+Cjx0Ym9keT4KPC90Ym9keT4KPC90YWJsZT4KPHA+SGlzIGludGVybnNoaXAgd2l0aCBTLlQuQS5SLiBMYWJzIGhhZCBjb25jbHVkZWQuIEhlIGRlY2lkZWQgdGhhdCBoZSB3YXMgZ29pbmcgdG8gbGVhdmUsIGFuZCByZXR1cm4gdG8gRGVudmVyLiBIZSBjb3VsZG4ndCBiYXJlIHRvIGxpdmUgaW4gdGhlIGNpdHkgdGhhdCBob3VzZWQgYSBmYWxzZSBoZXJvLiBXaGVuIGhlIHdlbnQgdG8gaW5mb3JtIHRoZSBoaWdoZXIgdXBzIGF0IFMuVC5BLlIuIG9mIGhpcyBkZXBhcnR1cmUsIHRoZXkgY2FtZSB1cCB3aXRoIGEgY291bnRlciBvZmZlci4gVGhleSB3ZXJlIHBsYW5uaW5nIHRvIG9wZW4gYSBuZXcgTGFiIGluIERlbnZlciwgYW5kIHdlcmUgaW4gZmFjdCBwbGFubmluZyB0byBhc2sgaGltIHRvIG1vdmUgdGhlcmUgdG8gaGVscCBraWNrIGl0IG9mZiB0aGUgZ3JvdW5kLCBzaW5jZSBoZSB3YXMgZmFtaWxpYXIgd2l0aCB0aGUgY2l0eS4gSXQgd2FzIGEgbG90IHRvIGFzayBzdWNoIGEgeW91bmcgbWFuLiBFdmFuIHNhdyBpdCBhcyBTLlQuQS5SLiByZWNvZ25pemluZyBoaXMgdGFsZW50cy4gSGUgYWNjZXB0ZWQgdGhpcyBvZmZlciwgYW5kIG1vdmVkIGJhY2sgaG9tZS4gRmluYWxseSwgYWZ0ZXIgdHdvIGFuZCBhIGhhbGYgeWVhcnMgb2YgYmVpbmcgZ29uZSwgb2YgbGVhdmluZyBEZW52ZXIgaW4gdGhlIGhhbmRzIG9mIHRoZSBWaW9sZXQgTGFudGVybiwgVmVsb2NpdHkgd2FzIGhvbWUuPC9wPgo8dGFibGU+Cjx0aGVhZD4KPHRyPgo8dGggc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPkRlYXRoIE1ldGFsPC90aD4KPC90cj4KPC90aGVhZD4KPHRib2R5Pgo8L3Rib2R5Pgo8L3RhYmxlPgo8cD5EdXJpbmcgdGhlIGJlZ2lubmluZyBvZiB0aGUgZXZlbnRzIG9mIFBlcnBldHVhIGFuZCBUaGUgQmF0bWFuIFdobyBMYXVnaHMnIDxhIGhyZWY9Imh0dHBzOi8vZGMuZmFuZG9tLmNvbS93aWtpL0RhcmtfTmlnaHRzOl9EZWF0aF9NZXRhbCI+SW52YXNpb248L2E+IG9mIHRoZSBNdWx0aXZlcnNlLCBpbnN0ZWFkIG9mIHJ1bm5pbmcgaW50byB0aGUgU3BlZWQgRm9yY2Ugd2l0aCB0aGUgb3RoZXIgU3BlZWRzdGVycyBhdCB0aGUgZmlyc3Qgc2lnbiBvZiB0cm91YmxlLCBWZWxvY2l0eSBzdGF5ZWQgaW4gRGVudmVyLiBEZWZlbmRpbmcgaGlzIGhvbWUgZnJvbSB0aGUgdGhyZWF0cyBhdCBoYW5kLiBIb3dldmVyLCB3aGVuIFBlcnBldHVhIHRvb2sgb3ZlciB0aGUgTXVsdGl2ZXJzZSwgYW5kIGdpZnRlZCB0aGUgRWFydGggdG8gdGhlIEJhdG1hbiBXaG8gTGF1Z2hzLCB0aGUgd29ybGQgY2hhbmdlZC4gSW5zdGVhZCBvZiBzdXJyZW5kZXJpbmcgbGlrZSB0aGUgbWFqb3JpdHkgb2YgdGhlIEhlcm9lcywgRXZhbiBzdG9vZCBoaXMgZ3JvdW5kIGFuZCBmb3VnaHQgYWdhaW5zdCB0aGUgQmF0bWVuIG9mIHRoZSBEYXJrIE11bHRpdmVyc2UsIGFuZCBldmVudHVhbGx5IHBlcmlzaGVkIGluIHRoZSBhdHRlbXB0IHdoZW4gdGhlIHdvcmxkIGNoYW5nZWQgdG8gc3VpdCB0aGUgQmF0bWVuJ3MgdHdpc3RlZCBuZWVkcy4gQWZ0ZXIgdGhlIGV2ZW50cywgd2hlbiB0aGUgTXVsdGl2ZXJzZSB3YXMgcmVzdG9yZWQgYXQgdGhlIGVuZCBvZiB0aGUgQ3Jpc2lzLCBWZWxvY2l0eSB3YXMgb25lIG9mIHRoZSBmYWxsZW4gSGVyb2VzIHdobyB3YXMgcmV0dXJuZWQgdG8gbGlmZSB3aXRoIGZ1bGwgbWVtb3J5IG9mIHdoYXQgaGFkIGhhcHBlbmVkLjwvcD4KPHRhYmxlPgo8dGhlYWQ+Cjx0cj4KPHRoIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5FbnRyb3B5PC90aD4KPC90cj4KPC90aGVhZD4KPHRib2R5Pgo8L3Rib2R5Pgo8L3RhYmxlPgo8cD5XaXRoIGEgbmV3IGxlYXNlIG9uIGxpZmUsIEV2YW4gY29udGludWVkIGhpcyB3b3JrIGF0IFMuVC5BLlIuIExhYnMgYW5kIGFzIFZlbG9jaXR5IGluIERlbnZlci4gSGlzIGRlYXRoIGR1cmluZyB0aGUgRGVhdGggTWV0YWwgQ3Jpc2lzIGhhdW50ZWQgaGltLCBidXQgaGUgdHJpZWQgdG8gbW92ZSBvbiBhcyBpZiBub3RoaW5nIGhhcHBlbmVkLiBIZSB3YXMgZ2l2ZW4gdGhlIGVuZGluZyB0aGF0IGhlIHdhbnRlZCwgYW5kIGl0IHdhcyB0YWtlbiBmcm9tIGl0LiBOYXR1cmFsbHksIGhlIHdhc24ndCBzdXJlIHdoZXJlIHRvIGdvIGZyb20gdGhlcmUuIE9uZSBkYXksIHdoaWxlIHZpc2l0aW5nIENlbnRyYWwgQ2l0eSwgaGUgaW50ZXJjZXB0ZWQgYSBiYW5rIHJvYmJlcnkgZnJvbSBhIG5ldyB2aWxsYWluIGtub3duIGFzIEVudHJvcHksIGEgbmV3IFN0aWxsIEZvcmNlIGF2YXRhci4gVGhlIHR3byBicmllZmx5IGZvdWdodCwgYW5kIHRoZSBhbHRlcmNhdGlvbiBlbmRlZCB3aXRoIFZlbG9jaXR5IGJlaW5nIHRyYXBwZWQgaW4gU3Rhc2lzIHdoaWxlIEVudHJvcHkgZmxlZC4gVW5hYmxlIHRvIHRyYWNrIGhlciBkb3duLCBFdmFuIGRlY2lkZWQgdGhhdCBzaGUgd291bGQgYmUgVGhlIEZsYXNoJ3MgcHJvYmxlbSwgYW5kIHdlbnQgYmFjayB0byBEZW52ZXIuIExhdGVyLCBhdCBTLlQuQS5SLiBMYWJzLCBoZSByYW4gaW50byBhIGdyZWVuIGhhaXJlZCB3b21hbiwgd2hvIHRoZSBuZXdlc3Qgc3RhZmYgbWVtYmVyLiBMYXlsYSBQYXJrd29vZC4gVGhlIHR3byBxdWlja2x5IGhpdCBpdCBvZmYsIGFuZCBiZWNhbWUgY2xvc2Ugb3ZlciB0aW1lLiBEdXJpbmcgdGhlIHRpbWUsIEV2YW4gd291bGQgY29udGludW91c2x5IHJ1biBpbnRvIEVudHJvcHkgaW4gRGVudmVyLiBKb2tpbmcgdGhhdCBzaGUgd2FzIHN0YWxraW5nIGhpbS4gT3V0IG9mIHRoZSBibHVlLCBMYXlsYSBhc2tlZCBFdmFuIG91dCB0byBhIGNhcm5pdmFsIHdpdGggaGVyLiBUaGUgdHdvIHNwZW50IHRoZSBlbnRpcmUgZGF5IHRvZ2V0aGVyLCBidXQgRXZhbiBub3RpY2VkIHRoYXQgc2hlIHdhcyBhY3Rpbmcgd2VpcmQsIGJ1dCBvcHRlZCB0byBqdXN0IHRyeSBhbmQgZW5qb3kgdGhlIHRpbWUgdG9nZXRoZXIuIEJ5IHRoZSBlbmQgb2YgdGhlIGRheSwgTGF5bGEgcmV2ZWFsZWQgdGhhdCB0aGlzIHdvdWxkIGJlIHRoZSBsYXN0IHRpbWUgdGhleSdkIG1lZXQgYXMgZnJpZW5kcy4gTGF5bGEga2lzc2VkIGhpbSwgdGhlbiBsb2NrZWQgRXZhbiBpbiBzdGFzaXMsIGFuZCByZXZlYWxpbmcgaGVyIGlkZW50aXR5IGFzIEVudHJvcHksIGFuZCBsZWF2aW5nLjwvcD4KPHRhYmxlPgo8dGhlYWQ+Cjx0cj4KPHRoIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5DcmlzaXMgSW4gRGVudmVyPC90aD4KPC90cj4KPC90aGVhZD4KPHRib2R5Pgo8L3Rib2R5Pgo8L3RhYmxlPgo8cD5BIGRheSBsYXRlciwgYSBsYXJnZSBtYWNoaW5lIGFwcGVhcmVkIGluIHRoZSBtaWRkbGUgb2YgRGVudmVyLiBFdmFuIHJhY2luZyB0b3dhcmRzIGl0LCBvbmx5IHRvIGJlIG1ldCBieSBFbnRyb3B5LCB3ZWFyaW5nIGEgc3RyYW5nZSwgbGFyZ2UgaGVsbWV0LiBBcm1lZCB3aXRoIG5vdCBvbmx5IHRoZSBTdGlsbCBGb3JjZSwgYnV0IHRoZSBvdGhlciB0aHJlZSBGb3JjZXMgYXMgd2VsbC4gVGhlIHR3byBmb3VnaHQsIEV2YW4gY29uZnVzZWQgYXMgdG8gd2h5IHNoZSB3YXMgZG9pbmcgYWxsIG9mIHRoaXMuIEJ1dCBzaGUgZGlkbid0IGFuc3dlci4gV2hhdCBkaWQgYW5zd2VyLCB3YXMgVGVsLUV4LiBBbiBhcnRpZmljaWFsIGludGVsbGlnZW5jZSBjcmVhdGVkIGJ5IExlaWEuIFRlbC1FeCByZXZlYWxpbmcgdGhhdCBMYXlsYSB3YXMgYSBjbG9uZSwgY3JlYXRlZCB3aXRoIHRoZSBETkEgb2YgRXJpbiBNYXN0ZXJzLCBMZWlhIExvY2t3b29kIGFuZCBBbHlhIFBhcmsuIEFsbCBwZW9wbGUgRXZhbiBrbmV3LCBpbiBhbiBlZmZvcnQgdG8gY3JlYXRlIHRoZSB1bHRpbWF0ZSBmb3JjZSBjb25kdWl0IHRvIGNvbnRyb2wuIFVuZm9ydHVuYXRlbHksIHRoZSBjbG9uaW5nIHRlY2ggVGVsLUV4IHVzZWQgd2FzIGltcGVyZmVjdC4gTGF5bGEncyBib2R5IHdhc24ndCBhYmxlIHRvIGhhbmRsZSB0aGUgcG93ZXIgb2Ygb25lIG9mIHRoZSBGb3JjZXMsIGxldCBhbG9uZSBhbGwgRm91ci4gU28gVGVsLUV4IGRlY2lkZWQgdG8gdXNlIGhlciB0byB0YXAgaW50byBpdCwgYW5kIHVzZSB0aGUgbWFjaGluZSB0byBhY2Nlc3MgdGhlbSBmdWxseS4gRGVzdHJveWluZyBEZW52ZXIgaW4gdGhlIHByb2Nlc3MuIFRoZXkgZm91Z2h0LCBFdmFuIGV2ZW50dWFsbHkgb3ZlcmNvbWluZyBUZWwtRXggYW5kIExheWxhLCB3aGlsZSB0YXBwaW5nIGludG8gdGhlIFN0aWxsIEZvcmNlIGhpbXNlbGYuIEZyZWVpbmcgTGF5bGEgZnJvbSBUZWwtRXgncyBjb250cm9sLCBhbmQgdXNpbmcgREVDQSB0byBvdmVycG93ZXIgYW5kIHN0b3AgVGVsLUV4LiBCdXQgYW5vdGhlciBwcm9ibGVtIGFyb3NlLiBUaGUgbWFjaGluZSBoYWQgYmVlbiBzZXQgdG8gYmxvdy4gSWYgaXQgZXhwbG9kZWQsIGl0IHdvdWxkIGhhdmUgd2lwZWQgb3V0IGFsbCBvZiBEZW52ZXIuIEV2YW4gaGFkIG5vIG90aGVyIG9wdGlvbiwgYnV0IHRvIHJ1biBhcm91bmQgaXQgYXMgZmFzdCBhcyBoZSBwb3NzaWJseSBjb3VsZC4gTWF5YmUgZXZlbiBmYXN0ZXIgdGhhbiBoZSBjb3VsZCBwaHlzaWNhbGx5IGhhbmRsZS4gVXNpbmcgdGhlIGtpbmV0aWMgZm9yY2Ugb2YgaGlzIHJ1bm5pbmcgdG8gY29udGFpbiB0aGUgYmxhc3QgYXMgbXVjaCBhcyBoZSBjb3VsZC4gREVDQSBpbmZvcm1pbmcgaGltIHRoYXQgdGhpcyB3b3VsZCBtb3JlIHRoYW4gbGlrZWx5IGRlc3Ryb3kgaGltLiBFdmFuLCBrbm93aW5nIHRoaXMsIGFjY2VwdGVkIHRoaXMsIGFuZCBiZWdhbiB0byBydW4uIEhvd2V2ZXIsIHVzaW5nIHRoZSBTYWdlIEZvcmNlLCBMYXlsYSB3b3VsZCBmb3JjZSBoaW0gdG8gc3RvcC4gRXZhbiB1bmFibGUgdG8gbW92ZSwgdGhlIGNsb25lIGluc3RlYWQgdG9vayBoaXMgcGxhY2UuIFVzaW5nIHRoZSBwb3dlciBvZiB0aGUgZm91ciBGb3JjZXMgdG8gbGltaXQgdGhlIGV4cGxvc2lvbiB0byBvbmx5IGEgc2VjdGlvbiBvZiBEZW52ZXIsIHdoaWxlIHByb3RlY3RpbmcgRXZhbiBmcm9tIHRoZSBleHBsb3Npb24uIEV2YW4gc3Vydml2ZWQsIHRob3VnaCBoZSBkb2VzIG5vdCBxdWl0ZSB1bmRlcnN0YW5kIGhvdyBoZSBkaWQuIEhlIHdpc2hlcyBoZSBkaWRuJ3QsIGFzIGhlIGJlbGlldmVkIExheWxhIHNob3VsZCd2ZSBnb3R0ZW4gdGhlIGNoYW5jZSB0byBsaXZlLiBBZnRlciB0aGlzLCBFdmFuIGZvdW5kIHRoYXQgaGUgd2FzIGFibGUgdG8gY29ubmVjdCB0byB0aGUgU3RpbGwgRm9yY2UgZWFzaWVyIHRoYW4gd2hlbiBoZSBmb3VnaHQgTGF5bGEgYW5kIFRlbC1FeC4gSGUgYXNzdW1lZCBoZSB3YXMgc2ltcGx5IHByb2dyZXNzaW5nIGZhc3RlciB0aGFuIGV4cGVjdGVkLjwvcD4KPHRhYmxlPgo8dGhlYWQ+Cjx0cj4KPHRoIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5EZW52ZXIncyBNb3N0IFdhbnRlZDwvdGg+CjwvdHI+CjwvdGhlYWQ+Cjx0Ym9keT4KPC90Ym9keT4KPC90YWJsZT4KPHA+QWZ0ZXIgc29tZSB0aW1lLCBhIGxlc3MgZW5lcmdldGljIGFuZCBtb3JlIHdvcm4gb3V0IEV2YW4gY29udGludWVkIGhpcyBoZXJvaWMgYWN0cyBhcyBWZWxvY2l0eS4gVW50aWwsIG9uZSBkYXksIFZlbG9jaXR5IHNlZW1pbmdseSBzbmFwcGVkLCBhbmQgY29tbWl0dGVkIGEgbWFzcyBtdXJkZXIuIE1vcmUgZGV0YWlscyBvZiB0aGlzIGV2ZW50IGNhbiBiZSBmb3VuZCA8YSBocmVmPSJodHRwczovL3R3aXR0ZXIuY29tL0Zhc3Rlc3RJbkRlbnZlci9zdGF0dXMvMTU0NTAyMDI3NDUzNzQ0MzMyOD9zPTIwIj5oZXJlPC9hPjwvcD4KPHRhYmxlPgo8dGhlYWQ+Cjx0cj4KPHRoIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5UaGUgR2VtaW5pIERpbGVtbWE8L3RoPgo8L3RyPgo8L3RoZWFkPgo8dGJvZHk+CjwvdGJvZHk+CjwvdGFibGU+CjxwPlRoaXMgc3RvcnkgY2FuIGJlIGZvdW5kIGFuZCByZWFkIDxhIGhyZWY9Imh0dHBzOi8vdHdpdHRlci5jb20vRmFzdGVzdEluRGVudmVyL3N0YXR1cy8xNjEyNzg3Nzk4NTE5NzA5Njk3P3M9MjAiPmhlcmU8L2E+LjwvcD4KPGhyIC8+CjxoMT5Qb3dlcnMgQW5kIEFiaWxpdGllczwvaDE+CjxwPldyaXRlcnMgTm90ZTogUG93ZXJzIENvcGllZCBhbmQgUGFzdGVkIEZyb20gVGhlIFNwZWVkIEZvcmNlIFBhZ2UgT24gVGhlIERDIFdpa2lhIFBhZ2UuIE1vcmUgSW5mb3JtYXRpb24gSW4gUmVnYXJkcyBUbyBUaGUgU3BlZWQgRm9yY2UsIEl0J3MgQWJpbGl0aWVzIEFuZCBJdCdzIEhpc3RvcnkgQ2FuIEJlIEZvdW5kIDxhIGhyZWY9Imh0dHA6Ly9kYy53aWtpYS5jb20vd2lraS9TcGVlZF9Gb3JjZSI+SGVyZTwvYT4uPC9wPgo8dGFibGU+Cjx0aGVhZD4KPHRyPgo8dGggc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPlNwZWVkIEZvcmNlIENvbmR1aXQ8L3RoPgo8L3RyPgo8L3RoZWFkPgo8dGJvZHk+CjwvdGJvZHk+CjwvdGFibGU+CjxwPlRob3NlIHdpdGggYWNjZXNzIHRvIHRoZSBTcGVlZCBGb3JjZSBjYW4gdXNlIGEgbGFyZ2UgbnVtYmVyIG9mIGFiaWxpdGllcywgdXN1YWxseSByZXZvbHZpbmcgYXJvdW5kIHNwZWVkLiBQb3dlcnMgdmFyeSB0aHJvdWdob3V0IGVhY2ggU3BlZWQgRm9yY2UgdXNlcnMuPC9wPgo8cD5TcGVlZCBGb3JjZSBjb25kdWl0cyBoYXZlIG9uZSBtYWluIGFiaWxpdHkgYWJvdmUgYWxsIGVsc2UuIFRoZXNlIGNoYXJhY3RlcnMgaW1tZWRpYXRlbHkgdW5kZXJzdGFuZCBob3cgdG8gcnVuIGF0IHN1cGVyaHVtYW4gc3BlZWRzIGFuZCB0aGVpciBib2RpZXMgaW5zdGluY3RpdmVseSB1bmRlcnN0YW5kIGhvdyB0byByZWFjdCBhdCBoaWdoLXNwZWVkIHNpdHVhdGlvbnMuIE9sZGVyIHNwZWVkc3RlcnMgaGF2ZSBhIHJlZHVjZWQgYnV0IG1heGVkIHNwZWVkIG9mIDc3MG1waCB3aGljaCBpcyBqdXN0IGJlbG93IHNvbmljIGJvb21zIGFsbG93aW5nIHRoZW0gdG8gcmVhY3QgdG8gc2l0dWF0aW9ucyB3aXRob3V0IGNhdXNpbmcgY2l2aWxpYW5zIHVuZG8gc3RyZXNzLiBTcGVlZHN0ZXJzIGluIHRoZWlyIHByaW1lIGNhbiB0cmF2ZWwgYXQgbXVjaCBmYXN0ZXIgc3BlZWRzIHN1Y2ggYXMgdGhlIG1heCBsZXZlbCBvZiByZWNvcmRlZCBhaWRlZCBzcGVlZCBvbiBFYXJ0aCBhbmQgZXZlbiByZWFjaCB0aGUgc3BlZWQgb2YgbGlnaHQgd2l0aCBlbm91Z2ggd2lsbHBvd2VyLiBJdCBpcyBwb3NzaWJsZSBmb3IgY29uZHVpdHMgdG8gdHJhdmVsIG11Y2ggZmFzdGVyIHRoYW4gdGhlIHNwZWVkIG9mIGxpZ2h0IGhvd2V2ZXIgc3VjaCBsZXZlbHMgcmVxdWlyZSBhbiBpbmNyZWRpYmxlIGFtb3VudCBvZiBzdHJlc3MuIFNwZWVkc3RlcnMgdW5hY2N1c3RvbWVkIHRvIHRoZWlyIG1heCBsZXZlbCBvZiBzcGVlZHMgbWF5IGRldGFjaCB0aGVtc2VsdmVzIGZyb20gdGhlIFNwZWVkIEZvcmNlIG9yIGV2ZW4gYmVjb21lIHBhcnQgb2YgdGhlIFNwZWVkIEZvcmNlIGJ5IGFjY2lkZW50LiBTcGVlZHN0ZXJzIGNvbW1vbmx5IHVzZSB0aGVpciBzcGVlZCB0byBtYW5pcHVsYXRlIGFuZCBjb250cm9sIGFpcmZsb3csIGFzIHdlbGwgYXMgdmlicmF0ZSB0aGVpciBib2RpZXMgdG8gaW50YW5naWJpbGl0eSBhbmQgcGhhc2UuIEJ5IGV4Y2VlZGluZyB0aGUgc3BlZWQgb2YgbGlnaHQgc3BlZWRzdGVycyBjYW4gZW50ZXIgdGhlIHNwZWVkIGZvcmNlIG9yIHRyYXZlbCB0aHJvdWdob3V0IHRoZSB0aW1lIHN0cmVhbS48L3A+CjxwPlNwZWVkc3RlcnMgYWxzbyBwb3NzZXNzIHN1cGVyaHVtYW4gcGh5c2ljYWwgY2hhcmFjdGVyaXN0aWNzLCBzdWNoIGFzIGhlaWdodGVuZWQgc3RhbWluYSwgYWdpbGl0eSwgaGVhbGluZywgc2Vuc2VzLCBhbmQgc29tZXRpbWVzIHN0cmVuZ3RoLCBhcyB3ZWxsIGFzIGluY3JlYXNlZCBtZW50YWwgY2FwYWNpdHkuIFRoZSBTcGVlZCBGb3JjZSBhbHNvIG1hbmlmZXN0cyBhIHByb3RlY3RpdmUgYXVyYSBhcm91bmQgc3BlZWRzdGVycyB0aGF0IHByb3RlY3QgdGhlbSBmcm9tIHRoZSBoYXJzaCBlZmZlY3RzIG9mIG1vdmluZyBhdCBzdXBlciBzcGVlZHMsIGdyZWF0bHkgaGVpZ2h0ZW5pbmcgdGhlaXIgZHVyYWJpbGl0eS48L3A+CjxwPlNwZWVkIEZvcmNlIGNvbmR1aXRzIGJvZGllcyBnZW5lcmF0ZSBTcGVlZCBGb3JjZSBlbmVyZ3kgdGhhdCBtYW5pZmVzdHMgaXRzZWxmIGFzIGVsZWN0cmljaXR5LiBUaGlzIFNwZWVkIEZvcmNlIGxpZ2h0bmluZyB2YXJpZXMgaW4gY29sb3VyIGZyb20geWVsbG93LCByZWQsIGJsdWUsIGFuZCB3aGl0ZS4gVGhlIGxpZ2h0bmluZydzIHByb3BlcnRpZXMgYXJlIGVpdGhlciBpZGVudGljYWwgb3IgdmVyeSBzaW1pbGFyIHRvIGNvbW1vbiBlbGVjdHJpY2l0eSwgYXMgaXQgcmVhY3RzIG1hZ25ldGljYWxseSB0byBtZXRhbHMgYW5kIGNhbiBzaG9jayBwZW9wbGUgb24gY29udGFjdC4gU29tZSBzcGVlZHN0ZXJzIGNhbiBsZWFybiB0byBtYW5pcHVsYXRlIHRoZWlyIGxpZ2h0bmluZyB0byB3aGljaCB0aGV5IGNhbiBwcm9qZWN0IGl0IGFuZCBtYW5pcHVsYXRlIGVsZWN0cm9tYWduZXRpc20uPC9wPgo8cD5DZXJ0YWluIHNwZWVkc3RlcnMgY2FuIHVzZSB0aGUgU3BlZWQgRm9yY2UgZm9yIG1vcmUgYWR2YW5jZWQgYXBwbGljYXRpb25zIHN1Y2ggYXMgdGltZSBtYW5pcHVsYXRpb24sIGVuZXJneSBjb25zdHJ1Y3QgY3JlYXRpb24sIGNyZWF0aW5nIGNvcGllcyBvZiB0aGVtc2VsdmVzLCBvciBzdGVhbGluZy9sZW5kaW5nIHNwZWVkLjwvcD4KPHA+RXZhbiBoaW1zZWxmIGhhcyBhIHVuaXF1ZSBTcGVlZHN0ZXIgcG93ZXIga25vd24gYXMgPHN0cm9uZz5TcGVlZCBTZW5zZTwvc3Ryb25nPi4gVGhlIEFiaWxpdHkgYWN0cyBsaWtlIGFuIGVhcmx5IHdhcm5pbmcgc3lzdGVtIGZvciBkYW5nZXIuIENhdXNpbmcgYSByaW5naW5nIHNlbnNhdGlvbiB0byBydW4gdGhyb3VnaCBoaXMgaGVhZC4gRXZhbiBoaW1zZWxmIGlzIGVudGlyZWx5IHVuc3VyZSBvZiB3aGF0IGNhdXNlcyBpdCwgc3BlY3VsYXRpbmcgdGhhdCBpdCdzIHRoZSBTcGVlZCBGb3JjZSAmcXVvdDt0YWxraW5nJnF1b3Q7IHRvIGhpbS4gQnV0IGl0J3MgcHJvdmVuIHRvIGJlIGFjY3VyYXRlIGFuZCB1c2VmdWwsIHJlZ2FyZGxlc3Mgb2YgaG93IG11Y2ggaXQgYW5ub3lzIGhpbS48L3A+Cjx0YWJsZT4KPHRoZWFkPgo8dHI+Cjx0aCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+U3RpbGwgRm9yY2UgQ29uZHVpdDwvdGg+CjwvdHI+CjwvdGhlYWQ+Cjx0Ym9keT4KPC90Ym9keT4KPC90YWJsZT4KPHA+RHVyaW5nIHRoZSBFbnRyb3B5IGluY2lkZW50LCBpdCB3YXMgcmV2ZWFsZWQgdGhhdCBFdmFuIGhhZCB0aGUgYWJpbGl0eSB0byB0YXAgaW50byBhbmQgdXNlIHRoZSBwb3dlciBvZiB0aGUgPGEgaHJlZj0iaHR0cHM6Ly9kYy5mYW5kb20uY29tL3dpa2kvU3RpbGxfRm9yY2UiPlN0aWxsIEZvcmNlPC9hPi4gVGhlIGFiaWxpdGllcyBvZiB0aGUgU3RpbGwgRm9yY2UgaW5jbHVkZTogPC9wPgo8dWw+CjxsaT4KPHA+PHN0cm9uZz5Nb3Rpb24gTmVnYXRpb246PC9zdHJvbmc+IFVzaW5nIHRoZSBTdGlsbCBGb3JjZSwgRXZhbiBjYW4gY291bnRlciBhbmQgbmVnYXRlIHRoZSBmb3JjZSBvZiBtb3Rpb24sIGJhcmluZyB0aGUgcG90ZW50aWFsIHRvIGluZHVjZSBhbmQgYWNjZWxlcmF0ZSB0aGUgZm9yY2Ugb2YgZW50cm9weS4gQ2F1c2luZyB0aGUgdGFyZ2V0IHRvIHNsb3cgZG93biwgb3IgZXZlbiBjZWFzZSBtb3Rpb24gZW50aXJlbHkuPC9wPgo8L2xpPgo8bGk+CjxwPjxzdHJvbmc+RW5lcmd5IE5lZ2F0aW9uIGFuZCBBYnNvcnB0aW9uOjwvc3Ryb25nPiBFdmFuIGhhcyB0aGUgcG93ZXIgdG8gbmVnYXRlIG1vdGlvbiBpbiBhbnkgd2F5IGZlYXNpYmxlLiBIZSBjYW4gaGFsdCBwaHlzaWNhbCBvYmplY3RzIHN1Y2ggYXMgcGVvcGxlLCBidWxsZXRzIGFuZCBjYXJzIGFuZCByZXR1cm4gdGhlbSB0byB0aGVpciBuYXR1cmFsIHN0YXRlIGlmIGhlIHdpc2hlcy4gSGUgY2FuIGFsc28gbmVnYXRlIHRoZSBwb3dlciBvZiBTcGVlZCBGb3JjZSBjb25kdWl0cyBzZWVpbmcgYXMgdGhlaXIgcG93ZXIgc291cmNlIGlzIGJhc2VkIG9mZiBvZiBtb3Rpb24sIGFzIHdlbGwgZHJhaW4gdGhlIGZvcmNlcyB0aGF0IHB1c2ggbGlmZSBmb3J3YXJkcywgZWZmZWN0aXZlbHkgbWFraW5nIGhpbSBjYXBhYmxlIG9mIGRyYWluaW5nIGEgcGVyc29uJ3MgbGlmZSB1bnRpbCB0aGV5J3JlIGRlYWQsIHdoaWxlIGVtcG93ZXJpbmcgaGltIHNpbXVsdGFuZW91c2x5LjwvcD4KPC9saT4KPGxpPjxzdHJvbmc+Q29uc3RydWN0IENyZWF0aW9uOjwvc3Ryb25nPiBFdmFuIGNhbiBtYW5pcHVsYXRlIHRoZSBHcmVlbiBDb2xvdXJlZCBFbmVyZ3kgb2YgdGhlIFN0aWxsIEZvcmNlLCBhbmQgc2hhcGUgdGhlbSB0byBmb3JtIGNvbnN0cnVjdHMuIFN1Y2ggYXMgY2hhaW5zLCBtZWxlZSB3ZWFwb25zLCBldGMuPC9saT4KPC91bD4KPHRhYmxlPgo8dGhlYWQ+Cjx0cj4KPHRoIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij5TYWdlIEZvcmNlIENvbmR1aXQ8L3RoPgo8L3RyPgo8L3RoZWFkPgo8dGJvZHk+CjwvdGJvZHk+CjwvdGFibGU+CjxwPkR1cmluZyB0aGUgZXZlbnRzIG9mIFRoZSBHZW1pbmkgRGlsZW1tYSwgaXQgd2FzIHJldmVhbGVkIHRoYXQgRXZhbiBhbHNvIGhhZCB0aGUgYWJpbGl0eSB0byB0YXAgaW50byBhbmQgdXNlIHRoZSBwb3dlciBvZiB0aGUgPGEgaHJlZj0iaHR0cHM6Ly9kYy5mYW5kb20uY29tL3dpa2kvU2FnZV9Gb3JjZSI+U2FnZSBGb3JjZTwvYT4uIFRoZSBhYmlsaXRpZXMgb2YgdGhlIFNhZ2UgRm9yY2UgSW5jbHVkZTo8L3A+Cjx1bD4KPGxpPgo8cD48c3Ryb25nPlRlbGVwYXRoeTo8L3N0cm9uZz4gRXZhbidzIGNvbm5lY3Rpb24gdG8gdGhlIFNhZ2UgRm9yY2UgZ2l2ZXMgaGltIGEgc3Ryb25nIHRlbGVwYXRoaWMgbWluZC4gV2l0aCBoaXMgdGVsZXBhdGh5IGhlIGlzIGFibGUgdG8gcmVhZCBhIHBlcnNvbidzIG1pbmQgdG8gbGVhcm4gYWJvdXQgdGhlaXIgcGFzdC4gSGUgY2FuIGFsc28gdXNlIGhpcyBtaW5kIHRvIHByb2plY3QgcHNpb25pYyBhdHRhY2tzLiBIZSBjb3VsZCBhbHNvIGNvbm5lY3QgaGlzIG1pbmQgdG8gYW5vdGhlciwgb3IgZXZlbiBjb250cm9sIG1pbmRzLjwvcD4KPC9saT4KPGxpPgo8cD48c3Ryb25nPklsbHVzaW9uIENhc3Rpbmc6PC9zdHJvbmc+IEV2YW4gY2FuIGNhc3QgaWxsdXNpb25zIGluIGFub3RoZXIgcGVyc29uJ3MgbWluZC4gSGUgY2FuIGRvIHNvIG9uIG11bHRpcGxlIG1pbmRzIGF0IG9uY2UsIGFzIHdlbGwuPC9wPgo8L2xpPgo8bGk+CjxwPjxzdHJvbmc+RW5oYW5jZWQgSW50ZWxsaWdlbmNlOjwvc3Ryb25nPiBBdmF0YXJzIG9mIHRoZSBTYWdlIEZvcmNlIGhhdmUgdGhlaXIgaW50ZWxsaWdlbmNlIG1hZ25pZmllZCB0byBiZXlvbmQgZ2VuaXVzIGxldmVsLjwvcD4KPC9saT4KPGxpPgo8cD48c3Ryb25nPlRhY3RpbGUgVGVsZWtpbmVzaXMvVGVsZWtpbmVzaXM6PC9zdHJvbmc+IFRoZSBTYWdlIEZvcmNlIGdyYW50cyBpdHMgdXNlcnMgdGVsZWtpbmV0aWMgYWJpbGl0aWVzIG9mIGJvdGggYXZlcmFnZSBhbmQgdGFjdGlsZSB2YXJpZXRpZXMuPC9wPgo8L2xpPgo8bGk+PHN0cm9uZz5UZWxlcG9ydGF0aW9uOjwvc3Ryb25nPiBUaGUgU2FnZSBmb3JjZSBhbGxvd3MgaXRzIHVzZXJzIHRvIHRlbGVwb3J0IGFjcm9zcyBncmVhdCBkaXN0YW5jZXMgaWYgbmVlZGVkLjwvbGk+CjwvdWw+CjxociAvPgo8aDE+RXh0cmEgSW5mb3JtYXRpb24vVHJpdmlhPC9oMT4KPHVsPgo8bGk+RXZhbidzIEZhY2UgQ2xhaW0gaXMgTWFydmVsIENvbWljcycgPGEgaHJlZj0iaHR0cDovL21hcnZlbC53aWtpYS5jb20vd2lraS9UaG9tYXNfU2hlcGhlcmRfKEVhcnRoLTYxNikiPlRob21hcyAnVG9tbXknIFNoZXBoZXJkL1NwZWVkPC9hPjwvbGk+CjxsaT5XaGlsc3QgRXZhbidzIFNlY29uZCBNb25pa2VyLCBWZWxvY2l0eSwgc2hhcmVzIGEgbmFtZSB3aXRoIHRoZSBTcGVlZCBEcnVnIDxhIGhyZWY9Imh0dHA6Ly9kYy53aWtpYS5jb20vd2lraS9WZWxvY2l0eV85Ij5WZWxvY2l0eS05PC9hPiwgRXZhbiBoYXMgbm8gY29ubmVjdGlvbiB0byBpdC4gVGhlIE5hbWUgd2FzIGNob3NlbiBhcyBpdCB3YXMgU3BlZWQtQmFzZWQsIGFuZCBub3QgdGFrZW4gYnkgYW5vdGhlci48L2xpPgo8bGk+SGUgaXMgYWJzb2x1dGVseSBhZGRpY3RlZCB0byBjb2ZmZWUuPC9saT4KPGxpPkV2YW4gaXMgY29uc2lkZXJlZCBhIGdlbml1cy4gSGUgaXMgd2VsbCB2ZXJzZWQgaW4gbWFueSBzY2llbnRpZmljIGZpZWxkcywgb3V0IG9mIGVpdGhlciBpbnRlcmVzdCBvciBhIGZlZWxpbmcgb2YgbmVjZXNzaXR5LiBXaGlsZSBoZSBpcyBvbmx5IHdlbGwgdmVyc2VkIGF0IHRob3NlIGZpZWxkcywgaGUgQUJTT0xVVEVMWSBleGNlbHMgaW4gZW5naW5lZXJpbmcgYW5kIHRlY2hub2xvZ3kuIEl0IGlzIGhpcyBzdHJvbmdlc3QgZmllbGQgYnkgZmFyLCBhbmQgaXMgd2h5IGhlIGN1cnJlbnRseSBpbnRlcm5zIGluIHRoZSBBcHBsaWVkIFNjaWVuY2UgYW5kIFJlc2VhcmNoIGFuZCBEZXZlbG9wbWVudCBEaXZpc2lvbnMgYXQgUy5ULkEuUi4gTGFicywgd2hpY2ggaGUgZ290IHRocm91Z2ggaGlzIGNvbGxlZ2UgcHJvZmVzc29yLCB3aG9tIHdhcyBhIGNvbGxlYWd1ZSBvZiBFdmFuJ3MgY3VycmVudCBCb3NzLCBEb2N0b3IgTGluZGEgRm9yZC48L2xpPgo8bGk+SGUgb2Z0ZW4gc2hvd3MgYSBoaWdoIGFtb3VudCBvZiBjb25maWRlbmNlIHdoZW4gaW4gdGhlIFZlbG9jaXR5IENvc3R1bWUsIGJ1dCBpdCBpcyBhbiBhY3QgaGUgcHV0cyBvbi4gSGUgaGFzIGxpdHRsZSB0byBubyBjb25maWRlbmNlIGluIGhpcyBhYmlsaXRpZXMsIGR1ZSB0byBoaXMgbWFueSBuZWdhdGl2ZSBleHBlcmllbmNlcyBpbiBsaWZlLjwvbGk+CjxsaT5FdmFuJ3MgZXllIGNvbG91ciBjaGFuZ2VzIGRlcGVuZGluZyBvbiB3aGF0IEZvcmNlIGhlIGlzIGN1cnJlbnRseSB0YXBwaW5nIGludG8uIEhpcyBub3JtYWwgZXllIGNvbG91ciwgR3JlZW4sIGlzIHRoZSBTcGVlZCBGb3JjZS4gUGFsZSwgYWxtb3N0IHNpY2tseSBncmVlbiBpcyB0aGUgU3RpbGwgRm9yY2UsIHdoaWxlIEJsdWUgaXMgdGhlIFNhZ2UgRm9yY2UuPC9saT4KPC91bD4=
- page viewed 0 times
- follower 0
- following 0
- total tweet 0
- favourite 0
- register 01 January 1970 00:00:00 GMT
- url
- location