In lieu of flowers, the family asks that donations be made in her memory to the Alzheimers Association @ act.alz.org.
Visitation 3:00 pm - 8:00 pm
Thursday March 23, 2023
Tuttle Funeral Home
272 Route 10 Randolph, NJ
Funeral Mass
10:00 am
Friday, March 24, 2023
St. "She was an integral part of our Hillside family and is so very loved by the children, families and staff here at the school," the post read. In partnership with Memorial Tree. Students and faculty were urged to wear a Rox-THON shirt or Roxbury gear on Friday. The planting of 1 memorial tree in the honor of Kellie Anne Ventricelli has been arranged by Deneen Vergano. Kellie was adored and loved by so many. their loved one and friend. She was the most loving and dedicated mother to her beloved son Anthony, and she treasured every moment she spent with him. Officials in Morris County said the bodies of Peter Ventricelli, 57, his wife Kellie, 58, and his son Anthony, 15, were all visibly deceased from what appeared to be gunshot wounds. also provided along with your receipt. She was affectionately known by her students as Miss Kellie.
Kellie was a kind and thoughtful soul who was taken from us far too soon. friends to make a lasting memory of At funeral for Roxbury mom and son, mourners remember a She was affectionately known by her students as Miss Kellie.
Kellie was a kind and thoughtful soul who was taken from us far too soon. Ventricelli Obituary NJ mom, teen son slain in murder-suicide pictured on memorial "We share a deep sadness for the preschool staff and faculty as they grieve the loss of Kellie even while continuing with their work in teaching the young students in the school. A wonderful sister and friend, she made an impact on everyone who met her. 5 Memories Ann L. VENTRICELLI (Bentivoglio) VENTRICELLI Ann L. (nee Bentivoglio), 93 of Saddle River formerly of Garfield, died Friday, June 6, 2014. Succasunna Obituaries Versailles Obituaries | Local Obits for Versailles, KY - Legacy.com We wish that we could take the sadness away. Ann Ventricelli's passing on Saturday, January 15, 2022 has been publicly announced by Massapequa Funeral Home - South Chapel in Massapequa Park, NY. Plant a tree Kellie - may you and your sweet son Anthony be at eternal peace. The Roxbury community continued to grieve Thursday for the mother and teenage son killed as part of a murder-suicide this week, with plans for prayer services and a Friday night fundraiser to give students a "positive way" to respond to the tragedy. Funeral Home Services for Kellie are being provided by Tuttle Funeral Home. The importance of saying "I love you" during COVID-19, Effective ways of dealing with the grieving process, Solutions to show your sympathy safely during the Covid-19 pandemic. Loading story for Kellie Anne Ventricelli. All rights reserved. 2017-2023 Tribute Archive. Kellie was adored and loved by so many. The week of fundraising culminates every year with a Rox-THON event Friday night at the high school. DQo8ZGl2IGNsYXNzPSJvdmVyZmxvdy1pbm5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InRvcGljLWJsb2NrIj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRvcGljLWJsb2NrLXRpdGxlIj4NCiAgICAgICAgICAgICAgICA8aDI+UHJpdmFjeSBwb2xpY3k8L2gyPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgIDxkaXYgY2xhc3M9InRvcGljLWJsb2NrLWJvZHkiPg0KICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFubmVyLWJvcmRlci1wIiBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsiPg0KPHA+PGVtPkxhc3QgdXBkYXRlZDogTWF5IDEsIDIwMjM8L2VtPjwvcD4NCjxwPlRyaWJ1dGUgU3RvcmUgKCJ3ZSwiICJ1cywiICJvdXIiKSBpcyBjb21taXR0ZWQgdG8gcHJvdGVjdGluZyB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uLiBUaGlzIFByaXZhY3kgTm90aWNlIGRlc2NyaWJlcyB0aGUgcGVyc29uYWwgaW5mb3JtYXRpb24gdGhhdCB3ZSBjb2xsZWN0IGFib3V0IHlvdSwgaG93IHdlIHVzZSBhbmQgZGlzY2xvc2UgdGhpcyBpbmZvcm1hdGlvbiwgYW5kIHRoZSBzdGVwcyB3ZSB0YWtlIHRvIHByb3RlY3QgdGhpcyBpbmZvcm1hdGlvbi4gRm9yIHB1cnBvc2VzIG9mIHRoaXMgUHJpdmFjeSBOb3RpY2UsIChhKSAicGVyc29uYWwgaW5mb3JtYXRpb24iIG1lYW5zIGFueSBpbmZvcm1hdGlvbiB0aGF0IHJlbGF0ZXMgdG8geW91IGFzIGFuIGluZGl2aWR1YWwgYW5kIGNvdWxkIHJlYXNvbmFibHkgYmUgdXNlZCB0byBpZGVudGlmeSB5b3UgYW5kIChiKSAiVHJpYnV0ZSBTdG9yZSwiICJ3ZSwiICJ1cyIgYW5kICJvdXIiIGVhY2ggcmVmZXIgdG8gdGhlIGxlZ2FsIGVudGl0eSBzcGVjaWZpZWQgaW4gdGhlICJBcHBsaWNhYmxlIEVudGl0eSIgc2VjdGlvbiB0aGlzIFByaXZhY3kgTm90aWNlIGJlbG93LiBUaGlzIFByaXZhY3kgTm90aWNlIGFwcGxpZXMgdG8gb3VyIGNvbGxlY3Rpb24gYW5kIHVzZSBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbiB0aHJvdWdoIHRoaXMgd2Vic2l0ZSBhbmQgYW55IHJlbGF0ZWQgd2Vic2l0ZXMsIGFwcGxpY2F0aW9ucywgdG9vbHMsIG9yIHBsYXRmb3JtcyAodGhlICJTZXJ2aWNlcyIpLCBhcyB3ZWxsIGFzIHRocm91Z2ggYW55IG90aGVyIG1lYW5zIHdoZXJlIGEgbGluayBvciByZWZlcmVuY2UgdG8gdGhpcyBQcml2YWN5IE5vdGljZSBpcyBwcm92aWRlZCBhdCB0aGUgdGltZSBvZiBjb2xsZWN0aW9uLiZuYnNwOzwvcD4NCjxwPjxzdHJvbmc+MS4gPC9zdHJvbmc+PHN0cm9uZz5PdXIgU2VydmljZXM8L3N0cm9uZz48L3A+DQo8cD5UcmlidXRlIFN0b3JlIGlzIGFuIGVjb21tZXJjZSBzdG9yZSBvZmZlcmluZyBjZXJ0YWluIGZ1bmVyYWwtcmVsYXRlZCBhbmQgb3RoZXIgbWVtb3JpYWwgcHJvZHVjdHMgdGhhdCBnaXZlIGZyaWVuZHMsIGZhbWlseSBtZW1iZXJzIGFuZCBvdGhlcnMgdGhlIG9wcG9ydHVuaXR5IHRvIGV4cHJlc3MgdGhlaXIgY29uZG9sZW5jZXMgdG8gdGhvc2Ugd2hvIGFyZSBleHBlcmllbmNpbmcgb3IgaGF2ZSBleHBlcmllbmNlZCBhIGxvc3MuIE91ciBlY29tbWVyY2Ugc3RvcmUgbWF5IGJlIGVtYmVkZGVkIGludG8gb3Igb3RoZXJ3aXNlIGxpbmtlZCB0byBieSBvciBhY2Nlc3NpYmxlIGZyb20gYSB3ZWJzaXRlIHRoYXQgd2Ugb3Igb3VyIGFmZmlsaWF0ZXMgcHJvdmlkZSB0byBmdW5lcmFsIGhvbWVzIGFuZCBvdGhlciBmdW5lcmFsIHByb2Zlc3Npb25hbHMgKCJDbGllbnRzIikuICZuYnNwOzwvcD4NCjxwPkluIGNvbm5lY3Rpb24gd2l0aCBUcmlidXRlIFN0b3JlJ3MgYnVzaW5lc3MsIFRyaWJ1dGUgU3RvcmUgbWF5IGNvbGxlY3QgYW5kIHN0b3JlIHBlcnNvbmFsIGluZm9ybWF0aW9uIHJlZ2FyZGluZyBpbmRpdmlkdWFscyB3aG8gdmlzaXQgYW5kIHV0aWxpemUgdGhlIFNlcnZpY2VzICgiVHJpYnV0ZSBVc2VycyIpLiAmbmJzcDtUaGlzIFByaXZhY3kgTm90aWNlIGFwcGxpZXMgdG8gVHJpYnV0ZSBTdG9yZSdzIGNvbGxlY3Rpb24gYW5kIHVzZSBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbiBmcm9tIFRyaWJ1dGUgVXNlcnMgYW5kIG90aGVyIGluZGl2aWR1YWxzIHdobyBpbnRlcmFjdCBkaXJlY3RseSB3aXRoIHRoZSBTZXJ2aWNlcywgaW5jbHVkaW5nIENsaWVudHMsIGJ1dCBub3QgdG8gQ2xpZW50cycgdXNlIG9mIHN1Y2ggcGVyc29uYWwgaW5mb3JtYXRpb24uJm5ic3A7PC9wPg0KPHA+PHN0cm9uZz4yLiBQZXJzb25hbCBJbmZvcm1hdGlvbiBXZSBDb2xsZWN0PC9zdHJvbmc+PC9wPg0KPHA+V2hlbiB5b3UgYWNjZXNzIG9yIHVzZSB0aGUgU2VydmljZXMgb3Igb3RoZXJ3aXNlIGludGVyYWN0IHdpdGggdXMsIHdoZXRoZXIgYXMgVHJpYnV0ZSBVc2VyIG9yIG90aGVyIGluZGl2aWR1YWwsIHdlIG1heSBjb2xsZWN0IGNlcnRhaW4gY2F0ZWdvcmllcyBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbiBhYm91dCB5b3UgZnJvbSBhIHZhcmlldHkgb2Ygc291cmNlcy4mbmJzcDtDYXRlZ29yaWVzIG9mIHBlcnNvbmFsIGluZm9ybWF0aW9uIHRoYXQgd2UgbWF5IGNvbGxlY3QgZnJvbSB5b3UgZGlyZWN0bHkgaW5jbHVkZTo8L3A+DQo8dWw+DQo8bGk+Q29udGFjdCBpbmZvcm1hdGlvbiAoZm9yIGV4YW1wbGUsIG5hbWUsIHBob25lIG51bWJlciwgbWFpbGluZyBhZGRyZXNzLCBlbWFpbCBhZGRyZXNzKTwvbGk+DQo8bGk+UGF5bWVudC1yZWxhdGVkIGRldGFpbHMgKGZvciBleGFtcGxlLCBiaWxsaW5nIGFkZHJlc3MgYW5kIG90aGVyIGNyZWRpdCBjYXJkIGRldGFpbHMpPC9saT4NCjxsaT5BY2NvdW50IGluZm9ybWF0aW9uIChmb3IgZXhhbXBsZSwgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLCB0cmFuc2FjdGlvbiBoaXN0b3J5IGFuZCBvdGhlciBpbmZvcm1hdGlvbiB5b3UgcHJvdmlkZSB0byB1cyBpbiBjb25uZWN0aW9uIHdpdGggeW91ciBhY2NvdW50LCBzdWNoIGFzIHlvdXIgZ2VuZGVyIGFuZCBkYXRlIG9mIGJpcnRoKTwvbGk+DQo8bGk+Q29tbXVuaWNhdGlvbnMgKGZvciBleGFtcGxlLCBzdWJtaXR0ZWQgcXVlc3Rpb25zIG9yIG90aGVyIHBvc3RzLCBtYXJrZXRpbmcgcHJlZmVyZW5jZXMsIGNhcmQgbWVzc2FnZXMgYW5kIG90aGVyIHVzZXIgZ2VuZXJhdGVkIGNvbnRlbnQgbGlrZSBwaG90b3MgYW5kIHZpZGVvcyk8L2xpPg0KPC91bD4NCjxwPkNhdGVnb3JpZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gdGhhdCB3ZSBtYXkgY29sbGVjdCBhdXRvbWF0aWNhbGx5IHdoZW4geW91IHVzZSB0aGUgU2VydmljZXMgaW5jbHVkZTo8L3A+DQo8dWw+DQo8bGk+VGVjaG5pY2FsIGluZm9ybWF0aW9uIChmb3IgZXhhbXBsZSwgYnJvd3NlciB0eXBlLCBJUCBhZGRyZXNzLCBjb29raWVzLCBhbmQgb3BlcmF0aW5nIHN5c3RlbSk8L2xpPg0KPGxpPlVzYWdlIGluZm9ybWF0aW9uIChmb3IgZXhhbXBsZSwgcGFnZXMgdmlzaXRlZCwgc2VhcmNoIHRlcm1zIGVudGVyZWQsIGZyZXF1ZW5jeSBvZiB2aXNpdHMgYW5kIHRyYW5zYWN0aW9uIGluZm9ybWF0aW9uLCBzdWNoIGFzIHdoYXQgcHJvZHVjdHMgeW91IHB1cmNoYXNlKTwvbGk+DQo8L3VsPg0KPHA+V2UgdXNlIEdvb2dsZSBBbmFseXRpY3MgdG8gY29sbGVjdCBhbmQgYW5hbHl6ZSBpbmZvcm1hdGlvbiBhYm91dCB1c2Ugb2YgdGhlIFNlcnZpY2VzIGFuZCB0byBoZWxwIHVzIHVuZGVyc3RhbmQgYWN0aXZpdGllcyBhbmQgdHJlbmRzLiBUaGlzIGluY2x1ZGVzIHVzZSBvZiBHb29nbGUgQW5hbHl0aWNzIHBlcmZvcm1hbmNlIHJlcG9ydHMgcmVsYXRpbmcgdG8gZGVtb2dyYXBoaWNzIGFuZCBpbnRlcmVzdHMuIEFzIHBhcnQgb2YgdGhpcyBzZXJ2aWNlLCB3ZSBzaGFyZSBhIHVuaXF1ZSBpZGVudGlmaWVyIHdpdGggR29vZ2xlIEFuYWx5dGljcy4gWW91IG1heSBvcHQtb3V0IG9mIEdvb2dsZSBBbmFseXRpY3MgYnkgaW5zdGFsbGluZyBhIEdvb2dsZSBBbmFseXRpY3Mgb3B0LW91dCBicm93c2VyIGFkZC1vbiBhdmFpbGFibGUgZm9yIGRvd25sb2FkIGhlcmU6Jm5ic3A7PGEgaHJlZj0iaHR0cHM6Ly90b29scy5nb29nbGUuY29tL2RscGFnZS9nYW9wdG91dCI+aHR0cHM6Ly90b29scy5nb29nbGUuY29tL2RscGFnZS9nYW9wdG91dDwvYT4uPC9wPg0KPHA+RmluYWxseSwgd2UgbWF5IGNvbGxlY3QgcGVyc29uYWwgaW5mb3JtYXRpb24gcHVyc3VhbnQgdG8gYSBsZWdhbCBvciBjb250cmFjdHVhbCByZXF1aXJlbWVudCwgYW5kIGZhaWx1cmUgdG8gcHJvdmlkZSBzdWNoIGluZm9ybWF0aW9uIG1heSBpbXBhY3Qgb3VyIGFiaWxpdHkgdG8gZnVsZmlsbCBvdXIgb2JsaWdhdGlvbnMuJm5ic3A7ICZuYnNwOzxzdHJvbmc+PGJyIC8+PC9zdHJvbmc+PC9wPg0KPHA+PHN0cm9uZz4zLiBIb3cgV2UgVXNlIFlvdXIgUGVyc29uYWwgSW5mb3JtYXRpb248L3N0cm9uZz48L3A+DQo8cD5XZSBtYXkgdXNlIHRoZSBwZXJzb25hbCBpbmZvcm1hdGlvbiB3ZSBjb2xsZWN0IGZvciB0aGUgZm9sbG93aW5nIHB1cnBvc2VzOjwvcD4NCjx1bD4NCjxsaT48c3Ryb25nPlByb3ZpZGUgYW5kIGltcHJvdmUgdGhlIFNlcnZpY2VzLiZuYnNwOzwvc3Ryb25nPldlIG1heSB1c2UgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiB0byBwcm92aWRlIGFuZCBpbXByb3ZlIHRoZSBTZXJ2aWNlcywgaW5jbHVkaW5nIHRvIGZ1bGZpbGwgeW91ciBvcmRlcnMgYW5kIHJlcXVlc3RzIGFuZCB0byBwb3N0IHlvdXIgY29tbWVudHMgYW5kIG90aGVyIGZ1bmVyYWwgY29udHJpYnV0aW9ucy4gV2UgbWF5IGFsc28gdXNlIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gZm9yIHRoZSBhZG1pbmlzdHJhdGlvbiBvZiBvdXIgYnVzaW5lc3MsIGZvciBidXNpbmVzcyBkZXZlbG9wbWVudCBwdXJwb3NlcywgYW5kIHRvIGZ1bGZpbGwgb3VyIGNvbnRyYWN0dWFsIG9ibGlnYXRpb25zLjwvbGk+DQo8bGk+PHN0cm9uZz5SaXNrIG1pdGlnYXRpb24gYW5kIHNlY3VyaXR5Ljwvc3Ryb25nPldlIG1heSB1c2UgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBmb3IgcmlzayBtaXRpZ2F0aW9uIGFuZCBzZWN1cml0eSBwdXJwb3NlcywgaW5jbHVkaW5nIHRvIG1haW50YWluIHRoZSBwcml2YWN5IGFuZCBzZWN1cml0eSBvZiBvdXIgZGF0YSwgdG8gY29uZHVjdCBpbnRlcm5hbCBhdWRpdHMgb3IgaW52ZXN0aWdhdGlvbnMsIGZvciBkYXRhIHNlY3VyaXR5IHRlc3RpbmcgYW5kIGJ1c2luZXNzIGNvbnRpbnVpdHkgcGxhbm5pbmcgcHVycG9zZXMsIGFuZCB0byBlbnN1cmUgdGhlIHNhZmV0eSBhbmQgc2VjdXJpdHkgb2Ygb3VyIGFuZCBvdXIgYWZmaWxpYXRlcycgQ2xpZW50cywgc3RhZmYgYW5kIGFzc2V0cy48L2xpPg0KPGxpPjxzdHJvbmc+Q29tbXVuaWNhdGlvbiBhbmQgbWFya2V0aW5nLjwvc3Ryb25nPldlIG1heSB1c2UgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiB0byBjb21tdW5pY2F0ZSB3aXRoIHlvdSBhYm91dCB0aGUgU2VydmljZXMsIHJlc3BvbmQgdG8geW91ciBxdWVzdGlvbnMsIG9yIG9mZmVyIHlvdSBhZGRpdGlvbmFsIHByb2R1Y3RzIG9yIHNlcnZpY2VzLiZuYnNwOzwvbGk+DQo8bGk+PHN0cm9uZz5Db21wbHkgd2l0aCB0aGUgbGF3IGFuZCBleGVyY2lzZSBvdXIgcmlnaHRzLiZuYnNwOzwvc3Ryb25nPldlIG1heSB1c2UgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBhcyByZWFzb25hYmx5IG5lY2Vzc2FyeSB0byBhc3Nlc3MgYW5kIGVuc3VyZSBjb21wbGlhbmNlIHdpdGggYXBwbGljYWJsZSBsYXdzLCBsZWdhbCByZXF1aXJlbWVudHMsIGFuZCBjb21wYW55IHBvbGljaWVzOyB0byBwcm90ZWN0IG91ciBhbmQgb3VyIGFmZmlsaWF0ZXMnIGFzc2V0cyBvciB0byBpbnZlc3RpZ2F0ZSBvciBkZWZlbmQgYWdhaW5zdCBhbnkgY2xhaW1zIG9mIGlsbGVnYWxpdHkgb3Igd3Jvbmdkb2luZyAoaW5jbHVkaW5nIHRvIG9idGFpbiBsZWdhbCBhZHZpY2Ugb3IgdG8gZXN0YWJsaXNoLCBleGVyY2lzZSBvciBkZWZlbmQgbGVnYWwgcmlnaHRzKTsgYW5kIGluIHJlc3BvbnNlIHRvIGEgY291cnQgb3JkZXIgb3IganVkaWNpYWwgb3Igb3RoZXIgZ292ZXJubWVudCBzdWJwb2VuYSBvciB3YXJyYW50LjwvbGk+DQo8bGk+PHN0cm9uZz5Db3Jwb3JhdGUgdHJhbnNhY3Rpb24uJm5ic3A7PC9zdHJvbmc+V2UgbWF5IHVzZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGluIHRoZSBldmVudCB3ZSB1bmRlcnRha2Ugb3IgYXJlIGludm9sdmVkIGluIG9yIGNvbnRlbXBsYXRpbmcgYW55IG1lcmdlciwgYWNxdWlzaXRpb24sIHJlb3JnYW5pemF0aW9uLCBzYWxlIG9mIGFzc2V0cywgYmFua3J1cHRjeSwgb3IgaW5zb2x2ZW5jeSBldmVudC48L2xpPg0KPC91bD4NCjxwPldlIG1heSBhbHNvIGFnZ3JlZ2F0ZSwgYW5vbnltaXplLCBvciBvdGhlcndpc2UgZGUtaWRlbnRpZnkgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBhbmQgdXNlIGl0IGZvciBhbnkgcHVycG9zZSBwZXJtaXR0ZWQgYnkgYXBwbGljYWJsZSBsYXcuJm5ic3A7PC9wPg0KPHA+U29tZSBqdXJpc2RpY3Rpb25zIHJlcXVpcmUgdGhhdCB3ZSBkZXRlcm1pbmUgYSAibGF3ZnVsIGJhc2lzIiBmb3IgcHJvY2Vzc2luZyBwZXJzb25hbCBpbmZvcm1hdGlvbi4gV2hlcmUgc3VjaCByZXF1aXJlbWVudHMgZXhpc3QsIHdlIHJlbHkgb24gdGhlIGZvbGxvd2luZyBsYXdmdWwgYmFzZXMgZm9yIG91ciBwcm9jZXNzaW5nIGFjdGl2aXRpZXM6IHRoYXQgeW91IGhhdmUgY29uc2VudGVkIHRvIHRoZSBwcm9jZXNzaW5nOyB0aGF0IHRoZSBwcm9jZXNzaW5nIGlzIG5lY2Vzc2FyeSBmb3IgdGhlIHBlcmZvcm1hbmNlIG9mIG91ciBjb250cmFjdCB3aXRoIHlvdTsgdGhhdCB3ZSBoYXZlIGEgbGVnYWwgb2JsaWdhdGlvbjsgb3IgdGhhdCB3ZSBoYXZlIGEgbGVnaXRpbWF0ZSBpbnRlcmVzdCBpbiBwcm92aWRpbmcgYW5kIGltcHJvdmluZyB0aGUgU2VydmljZXMgYW5kIG1hbmFnaW5nIG91ciBidXNpbmVzcyBvcGVyYXRpb25zLiBDbGllbnRzIGRldGVybWluZSB0aGUgbGF3ZnVsIGJhc2lzIGZvciBwcm9jZXNzaW5nIHBlcnNvbmFsIGluZm9ybWF0aW9uIG9mIHVzZXJzIG9mIGZ1bmN0aW9ucyBvciBmZWF0dXJlcyBvZiB0aGVpciB3ZWJzaXRlcy48L3A+DQo8cD48c3Ryb25nPjQuIFVzZSBvZiBDb29raWVzPC9zdHJvbmc+PC9wPg0KPHA+V2hlbiB5b3UgdXNlIHRoZSBTZXJ2aWNlcywgd2UgbWF5IHNlbmQgb25lIG9yIG1vcmUgY29va2llcyAod2hpY2ggYXJlIHNtYWxsIHRleHQgZmlsZXMgY29udGFpbmluZyBhIHN0cmluZyBvZiBhbHBoYW51bWVyaWMgY2hhcmFjdGVycykgdG8geW91ciBjb21wdXRlciBvciBtb2JpbGUgZGV2aWNlLCB0byBoZWxwIGFuYWx5emUgb3VyIHdlYiBwYWdlIGZsb3csIGN1c3RvbWl6ZSBvdXIgY29udGVudCwgbWVhc3VyZSBwcm9tb3Rpb25hbCBlZmZlY3RpdmVuZXNzLCBhbmQgcHJvbW90ZSB0cnVzdCBhbmQgc2FmZXR5LiBZb3UgYXJlIGFsd2F5cyBmcmVlIHRvIGRlY2xpbmUgb3VyIGNvb2tpZXMgaWYgeW91ciBicm93c2VyIHBlcm1pdHMsIGFsdGhvdWdoIGRvaW5nIHNvIG1heSBpbnRlcmZlcmUgd2l0aCB5b3VyIGFiaWxpdHkgdG8gdXNlIHRoZSBTZXJ2aWNlcyBvciBjZXJ0YWluIGZlYXR1cmVzIG9mIHRoZSBTZXJ2aWNlcy4gV2UgbWF5IGFsc28gdXNlIEdvb2dsZSBBbmFseXRpY3Mgb3IgYSBzaW1pbGFyIHNlcnZpY2UgdGhhdCB1c2VzIGNvb2tpZXMgdG8gaGVscCB1cyBhbmFseXplIGhvdyB1c2VycyB1c2UgdGhlIFNlcnZpY2VzLjwvcD4NCjxwPldlIG1heSBhbHNvIGFsbG93IGNlcnRhaW4gdGhpcmQgcGFydGllcyBzdWNoIGFzIGFkdmVydGlzaW5nLCBhbmFseXRpY3MgcHJvdmlkZXJzLCBhbmQgd2lkZ2V0IHByb3ZpZGVycyB0byBwbGFjZSBjb29raWVzIGluIG9yZGVyIHRvIGNvbGxlY3QgaW5mb3JtYXRpb24gYWJvdXQgeW91ciBvbmxpbmUgYWN0aXZpdGllcyBvdmVyIHRpbWUgYW5kIGFjcm9zcyBkaWZmZXJlbnQgd2Vic2l0ZXMgd2hlbiB5b3UgYWNjZXNzIG9yIHVzZSB0aGUgU2VydmljZXMuIEN1cnJlbnRseSwgdmFyaW91cyBicm93c2VycyBvZmZlciBhICJEbyBOb3QgVHJhY2siIG9wdGlvbiwgYnV0IHRoZXJlIGlzIG5vIHN0YW5kYXJkIGZvciBob3cgIkRvIE5vdCBUcmFjayIgc2hvdWxkIHdvcmsgb24gY29tbWVyY2lhbCB3ZWJzaXRlcy4gRHVlIHRvIHRoZSBsYWNrIG9mIHN1Y2ggc3RhbmRhcmRzLCB0aGUgU2VydmljZXMsIGluY2x1ZGluZyB0aGlzIHdlYnNpdGUsIGRvIG5vdCByZXNwb25kIHRvICJEbyBOb3QgVHJhY2siIGNvbnN1bWVyIGJyb3dzZXIgc2V0dGluZ3MuPC9wPg0KPHA+PHN0cm9uZz41LiBIb3cgYW5kIFdoZW4gV2UgRGlzY2xvc2UgWW91ciBQZXJzb25hbCBJbmZvcm1hdGlvbjwvc3Ryb25nPjwvcD4NCjxwPldlIG1heSBkaXNjbG9zZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIHRvIHRoZSBmb2xsb3dpbmcgY2F0ZWdvcmllcyBvZiByZWNpcGllbnRzLCB0byBiZSB1c2VkIG9ubHkgZm9yIGxlZ2l0aW1hdGUgcHVycG9zZXMgaW4ga2VlcGluZyB3aXRoIHRoaXMgUHJpdmFjeSBOb3RpY2U6PC9wPg0KPHVsPg0KPGxpPjxzdHJvbmc+R3JvdXAgY29tcGFuaWVzIGFuZCBhZmZpbGlhdGVzLiA8L3N0cm9uZz5XZSBtYXkgZGlzY2xvc2UsIHNoYXJlLCBvciB0cmFuc2ZlciB5b3VyIGluZm9ybWF0aW9uIHRvIGFueSBidXNpbmVzcyBlbnRpdHkgdGhhdCBpcyBwYXJ0IG9mIG91ciBjb3Jwb3JhdGUgZmFtaWx5LiAmbmJzcDtXZSBtYXkgc2hhcmUgeW91ciBpbmZvcm1hdGlvbiB3aXRoIG91ciBDbGllbnRzIGluIGNvbm5lY3Rpb24gd2l0aCBvdXIgQ2xpZW50cycgcHJvdmlzaW9uIG9mIHNlcnZpY2VzIHRvIHlvdSBhbmQvb3IgdGhlaXIgY3VzdG9tZXJzLjwvbGk+DQo8bGk+PHN0cm9uZz5TZXJ2aWNlIHByb3ZpZGVycyBhbmQgcHJvZmVzc2lvbmFsIGFkdmlzb3JzLiA8L3N0cm9uZz5XZSBtYXkgZGlzY2xvc2UgeW91ciBpbmZvcm1hdGlvbiB0byB0aGlyZCBwYXJ0eSB2ZW5kb3JzIHdobyBwcm92aWRlIHNlcnZpY2VzIGluIHN1cHBvcnQgb2Ygb3VyIGJ1c2luZXNzIG9wZXJhdGlvbnMsIHN1Y2ggYXMgd2Vic2l0ZSBkZXZlbG9wbWVudCBhbmQgaG9zdGluZywgcGF5bWVudCBwcm9jZXNzaW5nLCBtYXJrZXRpbmcgbWFuYWdlbWVudCwgc2VydmljZSBvcHRpbWl6YXRpb24sIHZlbmRvcnMgdGhhdCBmdWxmaWxsIG9yZGVycyBmb3IgZnVuZXJhbC1yZWxhdGVkIGl0ZW1zIHN1Y2ggYXMgZmxvd2VycywgYW5kIGRhdGEgYW5hbHl0aWNzLiBXZSBtYXkgYWxzbyBkaXNjbG9zZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIHRvIHByb2Zlc3Npb25hbCBhZHZpc29ycyBzdWNoIGFzIG91ciBhdHRvcm5leXMsIGFjY291bnRhbnRzLCBhbmQgaW5zdXJhbmNlIHByb3ZpZGVycy48L2xpPg0KPGxpPjxzdHJvbmc+UGFydGllcyBpbnZvbHZlZCBpbiBhIGNvcnBvcmF0ZSB0cmFuc2FjdGlvbi4mbmJzcDs8L3N0cm9uZz5XZSBtYXkgZGlzY2xvc2UgeW91ciBpbmZvcm1hdGlvbiB0byByZWxldmFudCB0aGlyZCBwYXJ0aWVzIGluIHRoZSBldmVudCBvZiBhIGRpdmVzdGl0dXJlLCBtZXJnZXIsIGNvbnNvbGlkYXRpb24sIG9yIGFzc2V0IHNhbGUsIG9yIGluIHRoZSB1bmxpa2VseSBldmVudCBvZiBhIGJhbmtydXB0Y3kuPC9saT4NCjxsaT48c3Ryb25nPkxhdyBlbmZvcmNlbWVudCBvciBvdGhlciBnb3Zlcm5tZW50YWwgZW50aXRpZXMuPC9zdHJvbmc+V2UgbWF5IGRpc2Nsb3NlIHlvdXIgaW5mb3JtYXRpb24gaWYgcmVxdWlyZWQgdG8gZG8gc28gYnkgbGF3IG9yIGlmIHdlIGJlbGlldmUgaW4gZ29vZCBmYWl0aCB0aGF0IHN1Y2ggYWN0aW9uIGlzIG5lY2Vzc2FyeSB0byBjb21wbHkgd2l0aCB0aGUgbGF3LCBwcmV2ZW50IHVubGF3ZnVsIGFjdGl2aXR5LCBkZWZlbmQgb3VyIHJpZ2h0cywgb3IgbWFpbnRhaW4gc2VjdXJpdHkuPC9saT4NCjxsaT48c3Ryb25nPk90aGVyIHRoaXJkIHBhcnRpZXMgd2l0aCB5b3VyIGNvbnNlbnQuPC9zdHJvbmc+V2UgbWF5IGRpc2Nsb3NlIHlvdXIgaW5mb3JtYXRpb24gdG8gYW55IG90aGVyIHRoaXJkIHBhcnR5IHdoZXJlIHlvdSBoYXZlIHByb3ZpZGVkIGNvbnNlbnQgdG8gc3VjaCBkaXNjbG9zdXJlLjwvbGk+DQo8L3VsPg0KPHA+PHN0cm9uZz42LiBTZWN1cml0eSwgUmV0ZW50aW9uICZhbXA7IFRyYW5zZmVyIG9mIFBlcnNvbmFsIEluZm9ybWF0aW9uPC9zdHJvbmc+PC9wPg0KPHA+V2UgaGF2ZSBpbXBsZW1lbnRlZCBhbmQgbWFpbnRhaW4gY29tbWVyY2lhbGx5IHJlYXNvbmFibGUgYW5kIGFwcHJvcHJpYXRlIHRlY2huaWNhbCBhbmQgb3JnYW5pemF0aW9uYWwgbWVhc3VyZXMgZGVzaWduZWQgdG8gcHJvdGVjdCB0aGUgY29uZmlkZW50aWFsaXR5LCBpbnRlZ3JpdHksIGFuZCBzZWN1cml0eSBvZiB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uLiBQbGVhc2Ugbm90ZSwgaG93ZXZlciwgdGhhdCBubyBzZWN1cml0eSBtZWFzdXJlcyBhcmUgcGVyZmVjdCBvciBpbXBlbmV0cmFibGUuIFdlIHRoZXJlZm9yZSBjYW5ub3QgZ3VhcmFudHkgYW5kIGRvIG5vdCB3YXJyYW50IHRoZSBhYnNvbHV0ZSBzZWN1cml0eSBvZiB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uLiBXZSByZXRhaW4geW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBmb3Igbm8gbG9uZ2VyIHRoYW4gcmVhc29uYWJseSBuZWNlc3NhcnkgdG8gZnVsZmlsbCB0aGUgcHVycG9zZXMgZm9yIHdoaWNoIHdlIGNvbGxlY3RlZCBpdCBvciB0byBjb21wbHkgd2l0aCB0aGUgbGF3LCBwcmV2ZW50IGZyYXVkLCBmYWNpbGl0YXRlIGFuIGludmVzdGlnYXRpb24sIGRlZmVuZCBhZ2FpbnN0IGxlZ2FsIGNsYWltcywgb3IgZXhlcmNpc2Ugb3VyIGxlZ2FsIHJpZ2h0cy48L3A+DQo8cD5EZXBlbmRpbmcgb24geW91ciBsb2NhdGlvbiwgdGhlIHBlcnNvbmFsIGluZm9ybWF0aW9uIHdlIGNvbGxlY3QgYWJvdXQgeW91IG1heSBiZSB0cmFuc2ZlcnJlZCB0byBhIGp1cmlzZGljdGlvbiB0aGF0IGRvZXMgbm90IHByb3ZpZGUgdGhlIHNhbWUgbGV2ZWwgb2YgcHJvdGVjdGlvbiBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbiBhcyB0aGUganVyaXNkaWN0aW9uIGluIHdoaWNoIHlvdSByZXNpZGUuICZuYnNwO0Ftb25nIG90aGVyIHBsYWNlcywgcGVyc29uYWwgaW5mb3JtYXRpb24gbWF5IGJlIHRyYW5zZmVycmVkIHRvLCBhbmQgc3RvcmVkIGluLCBDYW5hZGEsIEF1c3RyYWxpYSBhbmQgdGhlIFVuaXRlZCBTdGF0ZXMuIFRyYW5zZmVycyBmcm9tIHRoZSBFdXJvcGVhbiBVbmlvbiB0byBDYW5hZGEgYXJlIG1hZGUgcHVyc3VhbnQgdG8gRXVyb3BlYW4gQ29tbWlzc2lvbiBEZWNpc2lvbiAyMDAyLzIvRUMsIHdoaWNoIGRldGVybWluZWQgdGhhdCBDYW5hZGEgaXMgY29uc2lkZXJlZCBhcyBwcm92aWRpbmcgYW4gYWRlcXVhdGUgbGV2ZWwgb2YgcHJvdGVjdGlvbiBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbi48L3A+DQo8cD48c3Ryb25nPjcuJm5ic3A7IFlvdXIgQ2hvaWNlcyAmYW1wOyBSaWdodHM8L3N0cm9uZz48L3A+DQo8cD5Zb3UgbWF5IGRlY2xpbmUgdG8gc2hhcmUgY2VydGFpbiBpbmZvcm1hdGlvbiB3aXRoIHVzLCBpbiB3aGljaCBjYXNlIHdlIG1heSBub3QgYmUgYWJsZSB0byBwcm92aWRlIHRvIHlvdSBzb21lIG9mIHRoZSBmZWF0dXJlcyBhbmQgZnVuY3Rpb25hbGl0eSBvZiB0aGUgU2VydmljZXMuIE9uY2UgeW91IGhhdmUgcmVnaXN0ZXJlZCBmb3IgYW4gYWNjb3VudCB3aXRoIHVzLCB5b3UgbWF5IHVwZGF0ZSwgY29ycmVjdCBvciBkZWxldGUgeW91ciBwcm9maWxlIGluZm9ybWF0aW9uIGFuZCBwcmVmZXJlbmNlcyBhdCBhbnkgdGltZSBieSBhY2Nlc3NpbmcgeW91ciBhY2NvdW50IHByZWZlcmVuY2VzIHBhZ2UgdGhyb3VnaCB0aGUgTXkgQWNjb3VudCB0YWIuICZuYnNwO0lmIHlvdSBkbyBub3Qgd2lzaCB0byByZWNlaXZlIG1hcmtldGluZyBjb21tdW5pY2F0aW9ucyBmcm9tIHVzLCB5b3UgY2FuIG9wdC1vdXQgYnkgdXNpbmcgdGhlIHVuc3Vic2NyaWJlIHByb2Nlc3MgcHJvdmlkZWQgb3IgZGVzY3JpYmVkIGluIGFueSBzdWNoIGNvbW11bmljYXRpb24sIGJ1dCB5b3UgbWF5IHN0aWxsIHJlY2VpdmUgdHJhbnNhY3Rpb25hbCBvciBhZG1pbmlzdHJhdGl2ZSBjb21tdW5pY2F0aW9ucyBmcm9tIHVzLiBBbHRob3VnaCB5b3VyIGNoYW5nZXMgYXJlIHJlZmxlY3RlZCBwcm9tcHRseSBpbiBhY3RpdmUgdXNlciBkYXRhYmFzZXMsIHdlIG1heSByZXRhaW4gYWxsIGluZm9ybWF0aW9uIHlvdSBzdWJtaXQgZm9yIGEgdmFyaWV0eSBvZiBwdXJwb3NlcywgaW5jbHVkaW5nIGJhY2t1cHMgYW5kIGFyY2hpdmluZywgcHJldmVudGlvbiBvZiBmcmF1ZCBhbmQgYWJ1c2UsIGFuZCBhbmFseXRpY3MuPC9wPg0KPHA+RGVwZW5kaW5nIG9uIHlvdXIgbG9jYXRpb24gYW5kIHN1YmplY3QgdG8gbG9jYWwgbGF3LCB5b3UgbWF5IGhhdmUgY2VydGFpbiByaWdodHMgd2l0aCByZXNwZWN0IHRvIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24uIFRoZXNlIG1heSBpbmNsdWRlOiB0aGUgcmlnaHQgdG8gYWNjZXNzLCBjb3JyZWN0LCBhbmQgZGVsZXRlIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb247IHRoZSByaWdodCB0byByZXN0cmljdCBvciBvYmplY3QgdG8gb3VyIHVzZSBvZiB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uOyBhbmQgdGhlIHJpZ2h0IHRvIHJlY2VpdmUgYSBwb3J0YWJsZSBjb3B5IG9mIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gaW4gYSB1c2FibGUgZm9ybWF0LiBJZiB5b3UgcHJvdmlkZSB1cyB3aXRoIGNvbnNlbnQgdG8gdXNlIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24sIHlvdSBtYXkgd2l0aGRyYXcgdGhhdCBjb25zZW50IGF0IGFueSB0aW1lLCBob3dldmVyLCBzdWNoIHdpdGhkcmF3YWwgd2lsbCBub3QgaW1wYWN0IHRoZSBsYXdmdWxuZXNzIG9mIG91ciB1c2Ugb2YgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBiYXNlZCBvbiB5b3VyIGNvbnNlbnQgdXAgdG8gdGhhdCBwb2ludC4mbmJzcDsgJm5ic3A7PC9wPg0KPHA+VG8gbWFrZSBhIHJlcXVlc3QgcmVsYXRlZCB0byB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIG9yIG90aGVyd2lzZSBleGVyY2lzZSB5b3VyIHJpZ2h0cywgeW91IG1heSBjb250YWN0IHVzIHVzaW5nIHRoZSBjb250YWN0IGluZm9ybWF0aW9uIHByb3ZpZGVkIGJlbG93LiBJbiBvcmRlciB0byBmdWxmaWxsIHlvdXIgcmVxdWVzdCwgd2UgbWF5IHJlcXVpcmUgYWRkaXRpb25hbCBpbmZvcm1hdGlvbiBmcm9tIHlvdS4gV2Ugd2lsbCByZXNwb25kIHRvIHJlcXVlc3RzIHdpdGhpbiB0aGUgcmVsZXZhbnQgdGltZSBwZXJpb2RzIGVzdGFibGlzaGVkIGJ5IGFwcGxpY2FibGUgbGF3LiBXZSBhcmUgY29tbWl0dGVkIHRvIGZpbmRpbmcgYSBmYWlyIGFuZCByZWFzb25hYmxlIHJlc29sdXRpb24gdG8gYW55IHJlcXVlc3QsIGNvbmNlcm4sIG9yIGNvbXBsYWludCB5b3UgYnJpbmcgdG8gb3VyIGF0dGVudGlvbi4gSG93ZXZlciwgaWYgeW91IGFyZSB1bnNhdGlzZmllZCB3aXRoIG91ciByZXNwb25zZSB0byB5b3VyIHJlcXVlc3QsIHlvdSBtYXkgaGF2ZSB0aGUgcmlnaHQgdG8gbG9kZ2UgYSBjb21wbGFpbnQgd2l0aCBhcHBsaWNhYmxlIGdvdmVybm1lbnRhbCBhdXRob3JpdGllcywgc3ViamVjdCB0byBsb2NhbCBsYXcuJm5ic3A7PC9wPg0KPHA+PHN0cm9uZz44LiBDaGlsZHJlbidzIFByaXZhY3k8L3N0cm9uZz48L3A+DQo8cD5XZSBkbyBub3Qga25vd2luZ2x5IGNvbGxlY3Qgb3IgbWFpbnRhaW4gaW5mb3JtYXRpb24gZnJvbSBwZXJzb25zIHVuZGVyIDE2IHllYXJzIG9mIGFnZSAoImNoaWxkcmVuIiksIGFuZCBubyBwYXJ0IG9mIHRoZSBTZXJ2aWNlcyBpcyBkaXJlY3RlZCB0byBjaGlsZHJlbi4gSWYgeW91IGFyZSB1bmRlciAxNiB5ZWFycyBvZiBhZ2UsIHRoZW4gcGxlYXNlIGRvIG5vdCB1c2Ugb3IgYWNjZXNzIHRoZSBTZXJ2aWNlcyBhdCBhbnkgdGltZSBvciBpbiBhbnkgbWFubmVyLiBJZiB3ZSBsZWFybiB0aGF0IGluZm9ybWF0aW9uIGhhcyBiZWVuIGNvbGxlY3RlZCB0aHJvdWdoIHRoZSBTZXJ2aWNlcyBmcm9tIGNoaWxkcmVuIGFuZCB3aXRob3V0IHZlcmlmaWFibGUgcGFyZW50YWwgY29uc2VudCwgdGhlbiB3ZSB3aWxsIHRha2UgdGhlIGFwcHJvcHJpYXRlIHN0ZXBzIHRvIGRlbGV0ZSB0aGlzIGluZm9ybWF0aW9uLiBJZiB5b3UgYXJlIGEgcGFyZW50IG9yIGd1YXJkaWFuIGFuZCBkaXNjb3ZlciB0aGF0IHlvdXIgY2hpbGQgaGFzIHByb3ZpZGVkIHVzIHdpdGggcGVyc29uYWwgaW5mb3JtYXRpb24gd2l0aG91dCB5b3VyIGNvbnNlbnQsIHBsZWFzZSBjb250YWN0IHVzIHVzaW5nIHRoZSBjb250YWN0IGluZm9ybWF0aW9uIGJlbG93IHRvIHJlcXVlc3QgdGhhdCB3ZSBkZWxldGUgdGhlIGluZm9ybWF0aW9uIGZyb20gb3VyIHN5c3RlbXMuPC9wPg0KPHA+PHN0cm9uZz45LiBBcHBsaWNhYmxlIEVudGl0eTwvc3Ryb25nPjwvcD4NCjxwPkFsbCByZWZlcmVuY2VzIHRvICJUcmlidXRlIFN0b3JlLCIgIndlLCIgInVzIiBvciAib3VyIiBpbiB0aGlzIFByaXZhY3kgTm90aWNlIHJlZmVyIHRvIHRoZSBhcHBsaWNhYmxlIGVudGl0eSBzcGVjaWZpZWQgaW4gdGhlIHRhYmxlIGJlbG93LCB3aGljaCBpcyBiYXNlZCBvbiB0aGUgbG9jYXRpb24gb2YgeW91ciBwcmltYXJ5IHJlc2lkZW5jZSAob3IgaWYgeW91IGFyZSBhIGJ1c2luZXNzIGVudGl0eSwgeW91ciBkb21pY2lsZSkgYW5kIHRoZSB0eXBlIG9mIHByb2R1Y3RzIGFuZCBzZXJ2aWNlcyB5b3UgZW5nYWdlIHdpdGggaW4gY29ubmVjdGlvbiB3aXRoIHlvdXIgdXNlIG9mIHRoZSBTZXJ2aWNlczo8L3A+DQo8dGFibGUgc3R5bGU9ImJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IHdpZHRoOiAxMDAlOyBtYXJnaW4tbGVmdDogYXV0bzsgbWFyZ2luLXJpZ2h0OiBhdXRvOyIgYm9yZGVyPSIxIiB3aWR0aD0iMTAwJSIgY2VsbHBhZGRpbmc9IjVweCI+DQo8dGJvZHk+DQo8dHI+DQo8dGQgc3R5bGU9IndpZHRoOiAzMC4zOTQ5JTsiIHdpZHRoPSIxNDUiPg0KPHAgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPiZuYnNwOzwvcD4NCjxwIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij48c3Ryb25nPllvdXIgUHJpbWFyeSBSZXNpZGVuY2Ugb3IgRG9taWNpbGU8L3N0cm9uZz48L3A+DQo8cCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+Jm5ic3A7PC9wPg0KPC90ZD4NCjx0ZCBzdHlsZT0id2lkdGg6IDMwLjExNDglOyIgd2lkdGg9IjE0MyI+DQo8cCBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+PHN0cm9uZz5Qcm9kdWN0L1NlcnZpY2UgVHlwZTwvc3Ryb25nPjwvcD4NCjwvdGQ+DQo8dGQgc3R5bGU9IndpZHRoOiAzNi45NDQyJTsiIHdpZHRoPSIxOTIiPg0KPHAgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPjxzdHJvbmc+QXBwbGljYWJsZSBDb250cmFjdGluZyBFbnRpdHk8L3N0cm9uZz48L3A+DQo8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZCBzdHlsZT0id2lkdGg6IDMwLjM5NDklOyBwYWRkaW5nOiAxMHB4OyIgd2lkdGg9IjE0NSI+DQo8cD4mbmJzcDtDYW5hZGE8L3A+DQo8L3RkPg0KPHRkIHN0eWxlPSJ3aWR0aDogMzAuMTE0OCU7IHBhZGRpbmc6IDEwcHg7IiB3aWR0aD0iMTQzIj4NCjxwPkFsbCBwcm9kdWN0cyBhbmQgc2VydmljZXM8L3A+DQo8L3RkPg0KPHRkIHN0eWxlPSJ3aWR0aDogMzYuOTQ0MiU7IHBhZGRpbmc6IDEwcHg7IiB3aWR0aD0iMTkyIj4NCjxwPlRyaWJ1dGUgVGVjaG5vbG9neSBDYW5hZGEsIFVMQywgYSBCcml0aXNoIENvbHVtYmlhIHVubGltaXRlZCBsaWFiaWxpdHkgY29tcGFueTwvcD4NCjwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkIHN0eWxlPSJ3aWR0aDogMzAuMzk0OSU7IHBhZGRpbmc6IDEwcHg7IiB3aWR0aD0iMTQ1Ij4NCjxwPlVuaXRlZCBTdGF0ZXMgYW5kIHRoZSByZXN0IG9mIHRoZSB3b3JsZCBvdXRzaWRlIENhbmFkYTwvcD4NCjwvdGQ+DQo8dGQgc3R5bGU9IndpZHRoOiAzMC4xMTQ4JTsgcGFkZGluZzogMTBweDsiIHdpZHRoPSIxNDMiPg0KPHA+QWxsIGZsb3dlciBhbmQgbWVtb3JpYWwgdHJlZSBwcm9kdWN0cyBhbmQgcmVsYXRlZCBzZXJ2aWNlczwvcD4NCjwvdGQ+DQo8dGQgc3R5bGU9IndpZHRoOiAzNi45NDQyJTsgcGFkZGluZzogMTBweDsiIHdpZHRoPSIxOTIiPg0KPHA+VHJpYnV0ZSBTdG9yZSBVUywgTExDLCBhIERlbGF3YXJlIGxpbWl0ZWQgbGlhYmlsaXR5IGNvbXBhbnk8L3A+DQo8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZCBzdHlsZT0id2lkdGg6IDMwLjM5NDklOyBwYWRkaW5nOiAxMHB4OyIgd2lkdGg9IjE0NSI+DQo8cD5Vbml0ZWQgU3RhdGVzIGFuZCB0aGUgcmVzdCBvZiB0aGUgd29ybGQgb3V0c2lkZSBDYW5hZGE8L3A+DQo8L3RkPg0KPHRkIHN0eWxlPSJ3aWR0aDogMzAuMTE0OCU7IHBhZGRpbmc6IDEwcHg7IiB3aWR0aD0iMTQzIj4NCjxwPkFsbCBvdGhlciBwcm9kdWN0cyBhbmQgc2VydmljZXM8L3A+DQo8L3RkPg0KPHRkIHN0eWxlPSJ3aWR0aDogMzYuOTQ0MiU7IHBhZGRpbmc6IDEwcHg7IiB3aWR0aD0iMTkyIj4NCjxwPlRyaWJ1dGUgVGVjaG5vbG9neSBVUywgTExDLCBhIERlbGF3YXJlIGxpbWl0ZWQgbGlhYmlsaXR5IGNvbXBhbnk8L3A+DQo8L3RkPg0KPC90cj4NCjwvdGJvZHk+DQo8L3RhYmxlPg0KPHA+PHN0cm9uZz48YnIgLz4xMC4gQ2FsaWZvcm5pYSBSZXNpZGVudHM8L3N0cm9uZz48L3A+DQo8cD5TdXBwbGVtZW50YWwgdG8gdGhlIGFib3ZlLCB0aGUgZm9sbG93aW5nIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gcGVydGFpbnMgdG8gQ2FsaWZvcm5pYSByZXNpZGVudHMgb25seTo8L3A+DQo8dWw+DQo8bGk+Q29sbGVjdGlvbiBhbmQgVXNlIG9mIFBlcnNvbmFsIEluZm9ybWF0aW9uPC9saT4NCjxsaT5DYXRlZ29yaWVzIG9mIHBlcnNvbmFsIGluZm9ybWF0aW9uIGNvbGxlY3RlZCBhYm91dCBDYWxpZm9ybmlhIHJlc2lkZW50cyBpbiB0aGUgcGFzdCB0d2VsdmUgbW9udGhzIGluY2x1ZGUgaWRlbnRpZmllcnMsIG90aGVyIGlkZW50aWZ5aW5nIGluZm9ybWF0aW9uLCBjaGFyYWN0ZXJpc3RpY3Mgb2YgcHJvdGVjdGVkIGNsYXNzLCBjb21tZXJjaWFsIGluZm9ybWF0aW9uLCBJbnRlcm5ldCBvciBvdGhlciBlbGVjdHJvbmljIG5ldHdvcmsgYWN0aXZpdHkgaW5mb3JtYXRpb24sIHByb2Zlc3Npb25hbCBvciBlbXBsb3ltZW50LXJlbGF0ZWQgaW5mb3JtYXRpb24sIGVkdWNhdGlvbiBpbmZvcm1hdGlvbiwgYW5kIGluZmVyZW5jZXMgZHJhd24gZnJvbSBzdWNoIGluZm9ybWF0aW9uLiBGb3IgZXhhbXBsZXMgb2Ygc3BlY2lmaWMgcGllY2VzIG9mIHBlcnNvbmFsIGluZm9ybWF0aW9uIGNvbGxlY3RlZCwgcGxlYXNlIHNlZSB0aGUgIlBlcnNvbmFsIEluZm9ybWF0aW9uIFdlIENvbGxlY3QiIHNlY3Rpb24gYWJvdmUuPC9saT4NCjxsaT5DYXRlZ29yaWVzIG9mIHBlcnNvbmFsIGluZm9ybWF0aW9uIGRpc2Nsb3NlZCBmb3IgYSBidXNpbmVzcyBwdXJwb3NlIGFib3V0IENhbGlmb3JuaWEgcmVzaWRlbnRzIGluIHRoZSBwYXN0IHR3ZWx2ZSBtb250aHMgaW5jbHVkZSBpZGVudGlmaWVycywgb3RoZXIgaWRlbnRpZnlpbmcgaW5mb3JtYXRpb24sIGNoYXJhY3RlcmlzdGljcyBvZiBwcm90ZWN0ZWQgY2xhc3MsIGNvbW1lcmNpYWwgaW5mb3JtYXRpb24sIEludGVybmV0IG9yIG90aGVyIGVsZWN0cm9uaWMgbmV0d29yayBhY3Rpdml0eSBpbmZvcm1hdGlvbiwgcHJvZmVzc2lvbmFsIG9yIGVtcGxveW1lbnQtcmVsYXRlZCBpbmZvcm1hdGlvbiwgYW5kIGVkdWNhdGlvbiBpbmZvcm1hdGlvbi48L2xpPg0KPC91bD4NCjxwPldlIGRvIG5vdCBzZWxsIHBlcnNvbmFsIGluZm9ybWF0aW9uLCBub3IgZG8gd2Ugc2hhcmUgcGVyc29uYWwgaW5mb3JtYXRpb24gd2l0aCB0aGlyZCBwYXJ0aWVzIGZvciB0aG9zZSB0aGlyZCBwYXJ0aWVzJyZuYnNwO2RpcmVjdCBtYXJrZXRpbmcgcHVycG9zZXMuPC9wPg0KPHA+PHN0cm9uZz4xMS4gWW91ciBDYWxpZm9ybmlhIFByaXZhY3kgUmlnaHRzPC9zdHJvbmc+PC9wPg0KPHA+QXMgYSBDYWxpZm9ybmlhIHJlc2lkZW50LCB5b3UgaGF2ZSB0aGUgZm9sbG93aW5nIHJpZ2h0cyB3aXRoIHJlc3BlY3QgdG8geW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbjo8L3A+DQo8dWw+DQo8bGk+WW91IGhhdmUgdGhlIHJpZ2h0IHRvIHJlcXVlc3QgdG8ga25vdyBhYm91dCBwZXJzb25hbCBpbmZvcm1hdGlvbiBjb2xsZWN0ZWQsIGRpc2Nsb3NlZCwgb3Igc29sZC48L2xpPg0KPGxpPllvdSBoYXZlIHRoZSByaWdodCB0byByZXF1ZXN0IHRoZSBkZWxldGlvbiBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbi48L2xpPg0KPGxpPllvdSBoYXZlIHRoZSByaWdodCB0byBvcHQtb3V0IG9mIHRoZSBzYWxlIG9mIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gYXQgYW55IHRpbWUuIE5vdGUgdGhhdCB3ZSBkbyBub3QgY3VycmVudGx5IHNlbGwgcGVyc29uYWwgaW5mb3JtYXRpb24uPC9saT4NCjwvdWw+DQo8cD5GaW5hbGx5LCB5b3UgaGF2ZSB0aGUgcmlnaHQgdG8gbm90IGJlIGRpc2NyaW1pbmF0ZWQgYWdhaW5zdCBhcyBhIHJlc3VsdCBvZiBleGVyY2lzaW5nIHlvdXIgcHJpdmFjeSByaWdodHMuIEFjY29yZGluZ2x5LCB1bmxlc3MgcGVybWl0dGVkIGJ5IGxhdywgd2Ugd2lsbCBub3QgZGVueSB5b3UgZ29vZHMgb3Igc2VydmljZXMsIGNoYXJnZSB5b3UgZGlmZmVyZW50IHByaWNlcyBvciByYXRlcyBmb3IgZ29vZHMgb3Igc2VydmljZXMsIHByb3ZpZGUgeW91IGEgZGlmZmVyZW50IGxldmVsIG9yIHF1YWxpdHkgb2YgZ29vZHMgb3Igc2VydmljZXMsIG9yIHN1Z2dlc3QgeW91IHdpbGwgcmVjZWl2ZSBhIGRpZmZlcmVudCBwcmljZSBvciByYXRlIGZvciBnb29kcyBvciBzZXJ2aWNlcyBvciBhIGRpZmZlcmVudCBsZXZlbCBvciBxdWFsaXR5IG9mIGdvb2RzIG9yIHNlcnZpY2VzLjwvcD4NCjxwPlRvIGV4ZXJjaXNlIHlvdXIgcmlnaHRzLCB5b3UgbWF5IGNvbnRhY3QgdXMgdXNpbmcgdGhlIGNvbnRhY3QgaW5mb3JtYXRpb24gcHJvdmlkZWQgYmVsb3cgb3IgY2FsbCAxLTg2Ni00NDctMDMxMi4gSW4gb3JkZXIgdG8gZnVsZmlsbCB5b3VyIHJlcXVlc3QsIHdlIG1heSByZXF1aXJlIGFkZGl0aW9uYWwgcGVyc29uYWwgaW5mb3JtYXRpb24gZm9yIHB1cnBvc2VzIG9mIHZlcmlmeWluZyB5b3VyIGlkZW50aXR5LiBJZiB5b3UgbWFrZSBhIHJlcXVlc3QgdGhyb3VnaCBhbiBhdXRob3JpemVkIGFnZW50LCB3ZSBtYXkgcmVxdWlyZSBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIHRvIHZlcmlmeSB5b3VyIGF1dGhvcml6YXRpb24gb2YgdGhlIGFnZW50LjwvcD4NCjxwPjxzdHJvbmc+MTIuIENoYW5nZXMgdG8gUHJpdmFjeSBOb3RpY2U8L3N0cm9uZz48L3A+DQo8cD5XZSByZXNlcnZlIHRoZSByaWdodCB0byBtYWtlIGNoYW5nZXMgdG8gdGhpcyBQcml2YWN5IE5vdGljZSBhdCBhbnkgdGltZSwgd2l0aG91dCBub3RpY2UuIFdlIHdpbGwgbm90aWZ5IHlvdSBhYm91dCBjaGFuZ2VzIHRoYXQgc2lnbmlmaWNhbnRseSBpbXBhY3Qgb3VyIHVzZSBvZiB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGJ5IHBsYWNpbmcgYSBwcm9taW5lbnQgbm90aWNlIG9uIHRoaXMgd2Vic2l0ZSBvciBieSBzZW5kaW5nIHlvdSBhbiBlbWFpbC4gUGxlYXNlIHJldmlzaXQgdGhpcyBwYWdlIHBlcmlvZGljYWxseSB0byBzdGF5IGF3YXJlIG9mIGFueSBjaGFuZ2VzIHRvIHRoaXMgUHJpdmFjeSBOb3RpY2UuIEZvciB0aGUgYXZvaWRhbmNlIG9mIGRvdWJ0LCBkaXNwdXRlcyBhcmlzaW5nIGhlcmV1bmRlciB3aWxsIGJlIHJlc29sdmVkIGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgUHJpdmFjeSBOb3RpY2UgaW4gZWZmZWN0IGF0IHRoZSB0aW1lIHRoZSBkaXNwdXRlIGFyb3NlLjwvcD4NCjxwPjxzdHJvbmc+MTMuIENvbnRhY3QgVXM8L3N0cm9uZz48L3A+DQo8cD5QbGVhc2UgY29udGFjdCB1cyB3aXRoIGFueSBxdWVzdGlvbnMsIGNvbW1lbnRzIG9yIGNvbmNlcm5zIGFib3V0IHRoaXMgUHJpdmFjeSBOb3RpY2Ugb3Igb3VyIHVzZSBvZiB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGJ5IGVtYWlsIGF0IGluZm9AdHJpYnV0ZWNlbnRlcnN0b3JlLmNvbSBvciBieSBtYWlsIGF0OjwvcD4NCjxwPlRyaWJ1dGUgU3RvcmU8L3A+DQo8cD4yNTAxIFBhcm1lbnRlciBTdHJlZXQsIFN1aXRlIDMwMEM8YnIgLz5NaWRkbGV0b24sIFdJIDUzNTYyPC9wPg0KPC9kaXY+DQogICAgICAgIDwvZGl2Pg0KICAgIDwvZGl2Pg0KDQo8L2Rpdj4=, DQo8ZGl2IGNsYXNzPSJvdmVyZmxvdy1pbm5lciI+DQogICAgICAgIDxkaXYgY2xhc3M9InRvcGljLWJsb2NrIj4NCiAgICAgICAgICAgIDxkaXYgY2xhc3M9InRvcGljLWJsb2NrLXRpdGxlIj4NCiAgICAgICAgICAgICAgICA8aDI+VGVybXMgT2YgVXNlPC9oMj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICA8ZGl2IGNsYXNzPSJ0b3BpYy1ibG9jay1ib2R5Ij4NCiAgICAgICAgICAgIDxkaXYgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7Ij4NCjxwPjxlbT5MYXN0IHVwZGF0ZWQ6IE1heSAxLCAyMDIzPC9lbT48L3A+DQo8cD5UaGVzZSBUZXJtcyBvZiBVc2UsIHRvZ2V0aGVyIHdpdGggVHJpYnV0ZSBTdG9yZSdzIFByaXZhY3kgUG9saWN5IChjb2xsZWN0aXZlbHksIHRoZSAiVGVybXMiKSwgc2V0IGZvcnRoIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyB0aGF0IGFwcGx5IHRvIHlvdXIgcHVyY2hhc2Ugb2YgYW55IHByb2R1Y3RzIG9yIG1lcmNoYW5kaXNlIG9uIGFuZCB5b3VyIHVzZSBvZiB0aGUgd2Vic2l0ZSBvZiBUcmlidXRlIFN0b3JlIChodHRwczovL3d3dy50cmlidXRlc3RvcmUuY29tLykgYW5kIG91ciBhc3NvY2lhdGVkIHNlcnZpY2VzLCBpbmNsdWRpbmcgYW55IG90aGVyIHdlYnNpdGUgd2hlcmUgd2UgbGluayB0byB0aGVzZSB0ZXJtcyAodG9nZXRoZXIsIHRoZSAiU2l0ZXMiKS4gJm5ic3A7QWxsIHByb2R1Y3RzIG9yIHNlcnZpY2VzIG1hZGUgYXZhaWxhYmxlIGZvciBwdXJjaGFzZSBvbiBvciB0aHJvdWdoIHRoZSBTaXRlcyAoIlByb2R1Y3RzIikgYXJlIHN1YmplY3QgdG8gdGhlc2UgVGVybXMuICZuYnNwO0NlcnRhaW4gc2VydmljZXMgYWNjZXNzaWJsZSB0aHJvdWdoIHRoZSBTaXRlcyBtYXkgaGF2ZSB0aGVpciBvd24gdGVybXMgYW5kIGNvbmRpdGlvbnMgdGhhdCBhcHBseSB0byB5b3VyIHVzZSBvZiB0aGF0IHBhcnRpY3VsYXIgc2VydmljZS4gJm5ic3A7VG8gdGhlIGV4dGVudCB0aGF0IHRoZXJlIGlzIGFueSBjb25mbGljdCBiZXR3ZWVuIHRoZXNlIFRlcm1zIG9mIFVzZSBhbmQgYW55IHRlcm1zIGFuZCBjb25kaXRpb25zIG9yIGFncmVlbWVudHMgcmVsYXRpbmcgdG8gc2VydmljZXMgb3IgcHJvZHVjdHMgeW91IHJlY2VpdmUgZnJvbSBUcmlidXRlIFN0b3JlIG9yIG91ciBhZmZpbGlhdGVzLCB0aG9zZSBvdGhlciB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvciBhZ3JlZW1lbnRzIHdpbGwgZ292ZXJuLiAmbmJzcDtUaGVzZSBUZXJtcyBjb25zdGl0dXRlIGEgbGVnYWxseSBiaW5kaW5nIGFncmVlbWVudCBiZXR3ZWVuIHlvdSwgd2hldGhlciBwZXJzb25hbGx5IG9yIG9uIGJlaGFsZiBvZiBhbiBlbnRpdHkgeW91IHJlcHJlc2VudCAoInlvdSIpLCBhbmQgdGhlIGFwcGxpY2FibGUgZW50aXR5IHJlZmVycmVkIHRvIGluIFNlY3Rpb24gMTUgb2YgdGhlc2UgVGVybXMgKCJUcmlidXRlIFN0b3JlLCIgIndlLCIgInVzIiBhbmQgIm91ciIpIGNvbmNlcm5pbmcgeW91ciBhY2Nlc3MgdG8gYW5kIHVzZSBvZiB0aGUgU2l0ZXMuPC9wPg0KPHA+QnkmbmJzcDt1c2luZyZuYnNwO29yJm5ic3A7YWNjZXNzaW5nJm5ic3A7dGhlJm5ic3A7U2l0ZXMsJm5ic3A7eW91Jm5ic3A7YWdyZWUmbmJzcDt0byZuYnNwO3RoZXNlJm5ic3A7VGVybXMsJm5ic3A7YXMmbmJzcDttYXkmbmJzcDtiZSZuYnNwO3VwZGF0ZWQmbmJzcDtmcm9tJm5ic3A7dGltZSZuYnNwO3RvJm5ic3A7dGltZSZuYnNwO2luJm5ic3A7YWNjb3JkYW5jZSB3aXRoIFNlY3Rpb24gMTEgYmVsb3cuICZuYnNwO0lmIHlvdSBkbyBub3QgYWdyZWUgdG8gdGhlIGZvbGxvd2luZyBUZXJtcywgZG8gbm90IGFjY2VzcyBvciB1c2UgdGhlIFNpdGVzLiAmbmJzcDs8L3A+DQo8cD48c3Ryb25nPjx1Pk5vdGljZSBvZiBCaW5kaW5nIEFyYml0cmF0aW9uPC91Pjwvc3Ryb25nPjxzdHJvbmc+LiAmbmJzcDtUaGVzZSBUZXJtcyBwcm92aWRlIHRoYXQgYWxsIGRpc3B1dGVzIGJldHdlZW4geW91IGFuZCB1cyB0aGF0IGluIGFueSB3YXkgcmVsYXRlIHRvIHRoZXNlIFRlcm1zIG9yIHlvdXIgdXNlIG9mIHRoZSBTaXRlcyB3aWxsIGJlIHJlc29sdmVkIGJ5IEJJTkRJTkcgQVJCSVRSQVRJT04uIEFDQ09SRElOR0xZLCBZT1UgQUdSRUUgVE8gR0lWRSBVUCBZT1VSIFJJR0hUIFRPIEdPIFRPIENPVVJUIChJTkNMVURJTkcgSU4gQSBDTEFTUyBBQ1RJT04gUFJPQ0VFRElORykgdG8gYXNzZXJ0IG9yIGRlZmVuZCB5b3VyIHJpZ2h0cyB1bmRlciB0aGVzZSBUZXJtcy4gWW91ciByaWdodHMgd2lsbCBiZSBkZXRlcm1pbmVkIGJ5IGEgTkVVVFJBTCBBUkJJVFJBVE9SIGFuZCBOT1QgYSBqdWRnZSBvciBqdXJ5IGFuZCB5b3VyIGNsYWltcyBjYW5ub3QgYmUgYnJvdWdodCBhcyBhIGNsYXNzIGFjdGlvbi4gUGxlYXNlIHJldmlldyBTZWN0aW9uIDE0IGJlbG93IGVudGl0bGVkICJJbnRlcnByZXRhdGlvbnMgYW5kIERpc3B1dGVzIiBmb3IgdGhlIGRldGFpbHMgcmVnYXJkaW5nIHlvdXIgYWdyZWVtZW50IHRvIGFyYml0cmF0ZSBhbnkgZGlzcHV0ZXMgd2l0aCB1cy48L3N0cm9uZz48L3A+DQo8cD48c3Ryb25nPjEuIEFjY291bnQgU2VjdXJpdHkmbmJzcDs8L3N0cm9uZz5UbyB1c2UgdGhlIFNpdGVzIHlvdSBtdXN0IChpKSBiZSBhdCBsZWFzdCBlaWdodGVlbiAoMTgpIHllYXJzIG9mIGFnZTsgKGlpKSBoYXZlIG5vdCBwcmV2aW91c2x5IGJlZW4gc3VzcGVuZGVkIG9yIHJlbW92ZWQgZnJvbSB0aGUgU2l0ZXM7IGFuZCAoaWlpKSByZWdpc3RlciBmb3IgYW5kIHVzZSB0aGUgU2l0ZXMgaW4gY29tcGxpYW5jZSB3aXRoIGFueSBhbmQgYWxsIGFwcGxpY2FibGUgbGF3cyBhbmQgcmVndWxhdGlvbnMuJm5ic3A7PC9wPg0KPHA+PHN0cm9uZz4yLiBBY2NvdW50IFJlZ2lzdHJhdGlvbjwvc3Ryb25nPi4gVG8gYWNjZXNzIHNvbWUgZmVhdHVyZXMgb2YgdGhlIFNpdGVzLCB5b3UgbWF5IGJlIHJlcXVpcmVkIHRvJm5ic3A7cmVnaXN0ZXIgZm9yIGFuIGFjY291bnQuICZuYnNwO1doZW4geW91IHJlZ2lzdGVyIGZvciBhbiBhY2NvdW50LCB3ZSBtYXkgYXNrIHlvdSB0byBnaXZlIHVzJm5ic3A7Y2VydGFpbiBpZGVudGlmeWluZyBpbmZvcm1hdGlvbiBhYm91dCB5b3Vyc2VsZiwgaW5jbHVkaW5nIGJ1dCBub3QgbGltaXRlZCB0byB5b3VyIGVtYWlsJm5ic3A7YWRkcmVzcyBhbmQgb3RoZXIgY29udGFjdCBpbmZvcm1hdGlvbiwgYW5kIHRvIGNyZWF0ZSBhIHVzZXIgbmFtZSBhbmQgcGFzc3dvcmQmbmJzcDsoIlJlZ2lzdHJhdGlvbiBJbmZvcm1hdGlvbiIpLiAmbmJzcDtXaGVuIHJlZ2lzdGVyaW5nIGZvciBhbmQgbWFpbnRhaW5pbmcgYW4gYWNjb3VudCwgeW91IGFncmVlJm5ic3A7dG8gcHJvdmlkZSB0cnVlLCBhY2N1cmF0ZSwgY3VycmVudCwgYW5kIGNvbXBsZXRlIGluZm9ybWF0aW9uIGFib3V0IHlvdXJzZWxmLiAmbmJzcDtZb3UgYWxzbyZuYnNwO2FncmVlIG5vdCB0byBpbXBlcnNvbmF0ZSBhbnlvbmUsIG1pc3JlcHJlc2VudCBhbnkgYWZmaWxpYXRpb24gd2l0aCBhbnlvbmUgZWxzZSwgdXNlJm5ic3A7ZmFsc2UgaW5mb3JtYXRpb24sIG9yIG90aGVyd2lzZSBjb25jZWFsIHlvdXIgaWRlbnRpdHkgZnJvbSBUcmlidXRlIFN0b3JlIGZvciBhbnkgcHVycG9zZS4gJm5ic3A7WW91IGFyZSBzb2xlbHkgcmVzcG9uc2libGUgZm9yIG1haW50YWluaW5nIHRoZSBjb25maWRlbnRpYWxpdHkgYW5kIHNlY3VyaXR5IG9mIHlvdXImbmJzcDtwYXNzd29yZCBhbmQgb3RoZXIgUmVnaXN0cmF0aW9uIEluZm9ybWF0aW9uLiAmbmJzcDtGb3IgeW91ciBwcm90ZWN0aW9uIGFuZCB0aGUgcHJvdGVjdGlvbiBvZiZuYnNwO290aGVyIHVzZXJzLCB3ZSBhc2sgeW91IG5vdCB0byBzaGFyZSB5b3VyIFJlZ2lzdHJhdGlvbiBJbmZvcm1hdGlvbiB3aXRoIGFueW9uZSBlbHNlLiAmbmJzcDtJZiZuYnNwO3lvdSBkbyBzaGFyZSB0aGlzIGluZm9ybWF0aW9uIHdpdGggYW55b25lLCB3ZSB3aWxsIGNvbnNpZGVyIHRoZWlyIGFjdGl2aXRpZXMgdG8gaGF2ZSBiZWVuJm5ic3A7YXV0aG9yaXplZCBieSB5b3UuICZuYnNwO0lmIHlvdSBoYXZlIHJlYXNvbiB0byBiZWxpZXZlIHRoYXQgeW91ciBhY2NvdW50IGlzIG5vIGxvbmdlciBzZWN1cmUsJm5ic3A7eW91Jm5ic3A7bXVzdCZuYnNwO2ltbWVkaWF0ZWx5IG5vdGlmeSB1cyBhdCZuYnNwOzx1PjxhIGhyZWY9Im1haWx0bzppbmZvQHRyaWJ1dGVjZW50ZXJzdG9yZS5jb20iPmluZm9AdHJpYnV0ZWNlbnRlcnN0b3JlLmNvbTwvYT48L3U+PC9wPg0KPHA+PHN0cm9uZz4zLiBZb3VyIFVzZSBvZiB0aGUgU2l0ZXMgYW5kIFByb2hpYml0ZWQgQ29uZHVjdDxiciAvPjwvc3Ryb25nPllvdSBhcmUgZ3JhbnRlZCBhIGxpbWl0ZWQsIG5vbi1leGNsdXNpdmUsIHJldm9jYWJsZSByaWdodCB0byBhY2Nlc3MgYW5kIHVzZSB0aGUgU2l0ZXMgc29sZWx5IGZvciB5b3VyIHBlcnNvbmFsIG9yIG5vbi1jb21tZXJjaWFsIHVzZS4gJm5ic3A7RXhjZXB0IGZvciB0aGUgbGltaXRlZCByaWdodCBleHByZXNzbHkgZ3JhbnRlZCB0byB5b3UgaW4gdGhlc2UgVGVybXMsIFRyaWJ1dGUgU3RvcmUgYW5kIGl0cyBsaWNlbnNvcnMgZXhwcmVzc2x5IHJlc2VydmUgYWxsIG90aGVyIHJpZ2h0cyBhbmQgbGljZW5zZXMgdG8gdGhlIFNpdGVzIGFuZCB0aGVpciBjb250ZW50LiAmbmJzcDtZb3UgYWdyZWUgbm90IHRvOjwvcD4NCjxvbCBzdHlsZT0ibGlzdC1zdHlsZS10eXBlOiB1cHBlci1hbHBoYTsiPg0KPGxpPlVzZSB0aGUgU2l0ZXMgZm9yIGFueSBpbGxlZ2FsIHB1cnBvc2UsIG9yIGluIHZpb2xhdGlvbiBvZiBhbnkgbG9jYWwsIHN0YXRlLCBuYXRpb25hbCwgb3IgaW50ZXJuYXRpb25hbCBsYXc7PC9saT4NCjxsaT5WaW9sYXRlIG9yIGVuY291cmFnZSBvdGhlcnMgdG8gdmlvbGF0ZSB0aGUgcmlnaHRzIG9mIHRoaXJkIHBhcnRpZXMsIGluY2x1ZGluZyBpbnRlbGxlY3R1YWwgcHJvcGVydHkgcmlnaHRzOzwvbGk+DQo8bGk+UG9zdCwgdXBsb2FkLCBvciBkaXN0cmlidXRlIGFueSBjb250ZW50IHRoYXQgaXMgdW5sYXdmdWwsIGRlZmFtYXRvcnksIGxpYmVsb3VzLCBpbmFjY3VyYXRlLCBvciB0aGF0IGEgcmVhc29uYWJsZSBwZXJzb24gY291bGQgZGVlbSB0byBiZSBvYmplY3Rpb25hYmxlLCBwcm9mYW5lLCBpbmRlY2VudCwgcG9ybm9ncmFwaGljLCBoYXJhc3NpbmcsIHRocmVhdGVuaW5nLCBoYXRlZnVsLCBvciBvdGhlcndpc2UgaW5hcHByb3ByaWF0ZSwgb3IgdGhhdCB2aW9sYXRlcyBvciBpbmZyaW5nZXMgdGhlIHByaXZhY3ksIGNvcHlyaWdodCwgdHJhZGVtYXJrLCB0cmFkZSBkcmVzcywgdHJhZGUgc2VjcmV0cyBvciBpbnRlbGxlY3R1YWwgcHJvcGVydHkgcmlnaHRzIG9mIGFueSBwZXJzb24gb3IgZW50aXR5OzwvbGk+DQo8bGk+SW50ZXJmZXJlIGluIGFueSB3YXkgd2l0aCwgYnlwYXNzIG9yIGF0dGVtcHQgdG8gYnlwYXNzIGFueSBzZWN1cml0eS1yZWxhdGVkIGZlYXR1cmVzIG9mIHRoZSBTaXRlczs8L2xpPg0KPGxpPkludGVyZmVyZSB3aXRoIHRoZSBvcGVyYXRpb24gb3IgYW55IHVzZXIncyBlbmpveW1lbnQgb2YgdGhlIFNpdGVzLCBpbmNsdWRpbmcgYnkgdXBsb2FkaW5nIG9yIG90aGVyd2lzZSBkaXNzZW1pbmF0aW5nIHZpcnVzZXMsIGFkd2FyZSwgc3B5d2FyZSwgd29ybXMsIG9yIG90aGVyIG1hbGljaW91cyBjb2RlLCBtYWtpbmcgdW5zb2xpY2l0ZWQgb2ZmZXJzIG9yIGFkdmVydGlzZW1lbnRzIHRvIG90aGVyIHVzZXJzLCBvciBhdHRlbXB0aW5nIHRvIGNvbGxlY3QgcGVyc29uYWwgaW5mb3JtYXRpb24gYWJvdXQgdXNlcnMgb3IgdGhpcmQgcGFydGllcyB3aXRob3V0IHRoZWlyIGNvbnNlbnQ7PC9saT4NCjxsaT5EZWVwLWxpbmsgdG8gYW55IGZlYXR1cmUgb3IgY29udGVudCBvbiB0aGUgU2VydmljZXMsIG9yIGFjY2VzcywgbW9uaXRvciBvciBjb3B5IGFueSBjb250ZW50IG9yIGluZm9ybWF0aW9uIG9mIHRoZSBTaXRlcyB1c2luZyBhbnkgcm9ib3QsIHNwaWRlciwgc2NyYXBlciwgY3Jhd2xlciBvciBvdGhlciBhdXRvbWF0ZWQgbWVhbnMgb3IgYW55IG1hbnVhbCBwcm9jZXNzIGZvciBhbnkgcHVycG9zZSB3aXRob3V0IFRyaWJ1dGUgU3RvcmUncyBleHByZXNzIHdyaXR0ZW4gcGVybWlzc2lvbjs8L2xpPg0KPGxpPi4gVXNlLCByZXByb2R1Y2UsIG1vZGlmeSwgZGlzdHJpYnV0ZSBvciBzdG9yZSBhbnkgcGFydCBvZiB0aGUgU2l0ZXMgKGluY2x1ZGluZyBvYml0dWFyaWVzLCBldmVudCBpbmZvcm1hdGlvbiwgb3Igb3RoZXIgY29udGVudCkgZm9yIGFueSBwdXJwb3NlIHdpdGhvdXQgdGhlIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbiBvZiBUcmlidXRlIFN0b3JlOzwvbGk+DQo8bGk+UGVyZm9ybSBhbnkgZnJhdWR1bGVudCBhY3Rpdml0eSwgaW5jbHVkaW5nIGltcGVyc29uYXRpbmcgYW55IHBlcnNvbiBvciBlbnRpdHksIGNsYWltaW5nIGZhbHNlIGFmZmlsaWF0aW9ucywgYWNjZXNzaW5nIHRoZSBhY2NvdW50cyBvZiBvdGhlciB1c2VycyB3aXRob3V0IHBlcm1pc3Npb24sIG9yIGZhbHNpZnlpbmcgeW91ciBpZGVudGl0eSBvciBhbnkgaW5mb3JtYXRpb24gYWJvdXQgeW91LCBpbmNsdWRpbmcgYWdlIG9yIGRhdGUgb2YgYmlydGg7PC9saT4NCjxsaT5Qb3N0LCBkaXNzZW1pbmF0ZSwgc3VibWl0LCB0cmFuc21pdCwgaG9zdCwgc2hhcmUsIGFuZC9vciBwdWJsaXNoIGFkdmVydGlzZW1lbnRzIG9yIHNvbGljaXRhdGlvbnMgb2YgYnVzaW5lc3M7IG9yPC9saT4NCjxsaT4NCjxwPlNlbGwgb3Igb3RoZXJ3aXNlIHRyYW5zZmVyIHRoZSBhY2Nlc3MgZ3JhbnRlZCBoZXJlaW4uJm5ic3A7Jm5ic3A7PC9wPg0KPC9saT4NCjwvb2w+DQo8cD48c3Ryb25nPjQuIFRlcm1zIG9mIFNhbGUgZm9yIFByb2R1Y3RzLiA8L3N0cm9uZz5UcmlidXRlIFN0b3JlJ3MgZWNvbW1lcmNlIHN0b3JlIG1heSBiZSBlbWJlZGRlZCBpbnRvLCBvciBvdGhlcndpc2UgbGlua2VkIHRvIGJ5IG9yIGFjY2Vzc2libGUgZnJvbSwgYSB3ZWJzaXRlIHRoYXQgVHJpYnV0ZSBTdG9yZSBvciBpdHMgYWZmaWxpYXRlcyBwcm92aWRlIHRvIGZ1bmVyYWwgaG9tZXMgb3Igb3RoZXIgZnVuZXJhbCBwcm9mZXNzaW9uYWxzIChlYWNoLCBhICJDbGllbnQiKS4gSWYgeW91IGhhdmUgbmF2aWdhdGVkIHRvIHRoZSBTaXRlcyBmcm9tLCBvciBhcmUgb3RoZXJ3aXNlIHVzaW5nIHRoZSBTaXRlcyBpbiBjb25uZWN0aW9uIHdpdGgsIGEgQ2xpZW50IHdlYnNpdGUsIHBsZWFzZSBiZSBhd2FyZSB0aGF0IHN1Y2ggQ2xpZW50IHdpbGwgcmVjZWl2ZSBjb25zaWRlcmF0aW9uIG9yIGJlbmVmaXQgZnJvbSBUcmlidXRlIFN0b3JlIGZvciBpdGVtcyB0aGF0IHlvdSBwdXJjaGFzZSBmcm9tIFRyaWJ1dGUgU3RvcmUgb24gdGhlIFNpdGVzLCBpbmNsdWRpbmcsIHdpdGhvdXQgbGltaXRhdGlvbiwgaXRlbXMgc3VjaCBhcyBtZW1vcmlhbCB0cmVlcywgZmxvd2VycyBhbmQgb3RoZXIgZ2lmdCBpdGVtcy48L3A+DQo8cD5UcmlidXRlIFN0b3JlIHVzZXMgcmVhc29uYWJsZSBlZmZvcnRzIHRvIG1ha2UgdGhlIGRlc2NyaXB0aW9ucyBvZiBpdHMgUHJvZHVjdHMgYWNjdXJhdGUuJm5ic3A7IEhvd2V2ZXIsIFRyaWJ1dGUgU3RvcmUgZG9lcyBub3Qgd2FycmFudCB0aGF0IHRoZSBkZXNjcmlwdGlvbnMsIGRlcGljdGlvbnMgb3Igb3RoZXIgY29udGVudCBvZiB0aGUgU2l0ZXMgYXJlIGFjY3VyYXRlLCByZWxpYWJsZSwgY29tcGxldGUsIG9yIGN1cnJlbnQuJm5ic3A7IFdlIHJlc2VydmUgdGhlIHJpZ2h0IHRvIHVuaWxhdGVyYWxseSBjb3JyZWN0IGFueSBpbmFjY3VyYWNpZXMgYW5kIG90aGVyd2lzZSB1cGRhdGUgZGVzY3JpcHRpb25zLCBkZXBpY3Rpb25zIGFuZCBvdGhlciBjb250ZW50IG9uIHRoZSBTaXRlcyB3aXRob3V0IG5vdGljZS4gVGhlIHByaWNlcyBmb3IgUHJvZHVjdHMgb24gdGhlIFNpdGVzIGFyZSBzdWJqZWN0IHRvIGNoYW5nZS4mbmJzcDsgSXQgaXMgcG9zc2libGUgZm9yIHRoZSBwcmljZSBvZiBhIFByb2R1Y3QgdG8gY2hhbmdlIGJldHdlZW4gdGhlIHRpbWUgeW91IGFkZCBpdCB0byB5b3VyIHNob3BwaW5nIGNhcnQgYW5kIHRoZSB0aW1lIHlvdSBjaGVjayBvdXQuIEluIHRoZSBldmVudCBhIFByb2R1Y3QgaXMgbGlzdGVkIGF0IGFuIGluY29ycmVjdCBwcmljZSBkdWUgdG8gdHlwb2dyYXBoaWNhbCBvciBvdGhlciBlcnJvciwgd2UgcmVzZXJ2ZSB0aGUgcmlnaHQgdG8gcmVmdXNlIG9yIGNhbmNlbCBhbnkgb3JkZXJzIHBsYWNlZCBmb3IgYW55IFByb2R1Y3RzIGxpc3RlZCBhdCB0aGUgaW5jb3JyZWN0IHByaWNlLiBXZSBzaGFsbCBoYXZlIHRoZSByaWdodCB0byByZWZ1c2Ugb3IgY2FuY2VsIGFueSBzdWNoIG9yZGVycyB3aGV0aGVyIG9yIG5vdCB0aGUgb3JkZXIgaGFzIGJlZW4gY29uZmlybWVkIGFuZCB5b3VyIGNyZWRpdCBvciBkZWJpdCBjYXJkIGNoYXJnZWQuIElmIHlvdXIgY3JlZGl0IG9yIGRlYml0IGNhcmQgaGFzIGFscmVhZHkgYmVlbiBjaGFyZ2VkIGZvciB0aGUgcHVyY2hhc2UgYW5kIHlvdXIgb3JkZXIgaXMgY2FuY2VsZWQsIHdlIHNoYWxsIHByb21wdGx5IGlzc3VlIGEgY3JlZGl0IHRvIHlvdXIgY3JlZGl0IG9yIGRlYml0IGNhcmQgYWNjb3VudCBpbiB0aGUgYW1vdW50IG9mIHRoZSBpbmNvcnJlY3QgcHJpY2UuPGJyIC8+PGJyIC8+QWxsIHByaWNlcyBhcmUgc3RhdGVkIGV4Y2x1c2l2ZSBvZiBhbGwgc2FsZXMsIHVzZSwgdmFsdWUtYWRkZWQgYW5kIG90aGVyIHRheGVzLCBhbmQgYWxsIHNoaXBwaW5nIGFuZCByZWxhdGVkIGNvc3RzIGFuZCBleHBlbnNlcywgYWxsIG9mIHdoaWNoIHdpbGwgYmUgeW91ciByZXNwb25zaWJpbGl0eS4mbmJzcDsgVGhlIHJpc2sgb2YgbG9zcyBhbmQgdGl0bGUgZm9yIGFsbCBQcm9kdWN0cyBwdXJjaGFzZWQgZnJvbSB0aGUgU2l0ZXMgcGFzc2VzIHRvIHlvdSB1cG9uIGRlbGl2ZXJ5IG9mIHRoZSBQcm9kdWN0IHRvIHRoZSBjYXJyaWVyLiZuYnNwOyBUaGUgc2FsZSBvZiBQcm9kdWN0cyBpcyBhbHNvIHN1YmplY3QgdG8gdGhlIGFwcGxpY2FibGUgPGEgaHJlZj0iaHR0cHM6Ly90cmlidXRlY2VudGVyc3RvcmUuY29tL2N1c3RvbWVyLXNlcnZpY2Uvc2hpcHBpbmctcG9saWN5Ij5EZWxpdmVyeSBQb2xpY3k8L2E+IGFuZCA8YSBocmVmPSJodHRwczovL3RyaWJ1dGVjZW50ZXJzdG9yZS5jb20vY3VzdG9tZXItc2VydmljZS9yZXR1cm4tcG9saWN5Ij5SZXR1cm4gUG9saWN5PC9hPi48L3A+DQo8cD48c3Ryb25nPjUuIE1lbW9yaWFsIFRyZWUgUHJvZ3JhbS4gPC9zdHJvbmc+WW91IGFncmVlIGFuZCBhY2tub3dsZWRnZSB0aGF0IFRyaWJ1dGUgU3RvcmUgbWF5IGJlIGxpbWl0ZWQgb24gd2hlbiBvciB3aGVyZSB3ZSwgb3VyIGFmZmlsaWF0ZXMsIG9yIHBhcnRuZXJzIG1heSBwbGFudCBhIHRyZWUgcHVyY2hhc2VkIHRocm91Z2ggb3VyIE1lbW9yaWFsIFRyZWUgUHJvZ3JhbS4mbmJzcDsgRm9yIGV4YW1wbGUsIGEgcHVyY2hhc2VkIHRyZWUgbWF5IG5vdCBiZSBhdmFpbGFibGUgZm9yIHBsYW50aW5nIGR1cmluZyBjZXJ0YWluIHRpbWVzIG9mIHRoZSB5ZWFyIG9yIGR1ZSB0byB3ZWF0aGVyLiZuYnNwOyBUcmlidXRlIFN0b3JlIGFuZCBpdHMgYWZmaWxpYXRlcywgc3VwcGxpZXJzLCBhbmQgcGFydG5lcnMgY2Fubm90IGFuZCBkbyBub3QgZ3VhcmFudGVlIHRoYXQgYSB0cmVlIHB1cmNoYXNlZCB0aHJvdWdoIG91ciBNZW1vcmlhbCBUcmVlIFByb2dyYW0gd2lsbCBiZSBwbGFudGVkIGluIGEgcGFydGljdWxhciB0aW1lZnJhbWUgb3IgbG9jYXRpb24gb3IgdGhhdCB0aGUgdHJlZSB3aWxsIGJlIGEgY2VydGFpbiB0eXBlIG9yIHNpemUuJm5ic3A7PC9wPg0KPHA+PHN0cm9uZz42LiBUaGlyZCBQYXJ0eSBDb250ZW50PC9zdHJvbmc+LiBUaGUgU2l0ZXMgbWF5IGNvbnRhaW4gbGlua3MgdG8gdGhpcmQgcGFydHkgd2Vic2l0ZXMgYW5kIHNlcnZpY2VzLiZuYnNwOyBUcmlidXRlIFN0b3JlIHByb3ZpZGVzIHN1Y2ggbGlua3MgYXMgYSBjb252ZW5pZW5jZSwgYW5kIGRvZXMgbm90IGNvbnRyb2wgb3IgZW5kb3JzZSB0aGVzZSB3ZWJzaXRlcyBhbmQgc2VydmljZXMuJm5ic3A7IFlvdSBhY2tub3dsZWRnZSBhbmQgYWdyZWUgdGhhdCBUcmlidXRlIFN0b3JlIGhhcyBub3QgcmV2aWV3ZWQgdGhlIGNvbnRlbnQsIGFkdmVydGlzaW5nLCBwcm9kdWN0cywgc2VydmljZXMsIG9yIG90aGVyIG1hdGVyaWFscyB0aGF0IGFwcGVhciBvbiBzdWNoIHRoaXJkIHBhcnR5IHdlYnNpdGVzIG9yIHNlcnZpY2VzLCBhbmQgaXMgbm90IHJlc3BvbnNpYmxlIGZvciB0aGUgbGVnYWxpdHksIGFjY3VyYWN5LCBvciBhcHByb3ByaWF0ZW5lc3Mgb2YgYW55IHN1Y2ggY29udGVudCwgYW5kIHNoYWxsIG5vdCBiZSByZXNwb25zaWJsZSBvciBsaWFibGUsIGRpcmVjdGx5IG9yIGluZGlyZWN0bHksIGZvciBhbnkgZGFtYWdlIG9yIGxvc3MgY2F1c2VkIG9yIGFsbGVnZWQgdG8gYmUgY2F1c2VkIGJ5IG9yIGluIGNvbm5lY3Rpb24gd2l0aCB0aGUgdXNlIG9mIGFueSBzdWNoIHRoaXJkIHBhcnR5IHdlYnNpdGVzIG9yIHNlcnZpY2VzLjwvcD4NCjxwPjxzdHJvbmc+Ny4gSW50ZWxsZWN0dWFsIFByb3BlcnR5PC9zdHJvbmc+LiBZb3UgYWNrbm93bGVkZ2UgYW5kIGFncmVlIHRoYXQgd2hlbiB5b3Ugc3VibWl0IGFuIG9iaXR1YXJ5LCBwb3N0IGNvbW1lbnRzLCBzdWJtaXQgYSB0cmlidXRlIHZpZGVvIG9yIGltYWdlLCBvciBwb3N0IG9yIHN1Ym1pdCBvdGhlciBjb250ZW50ICh0b2dldGhlciwgIkNvbnRlbnQiKSB0byBUcmlidXRlIFN0b3JlIG9yIFNpdGVzLCAmbmJzcDtzdWNoIGNvbnRlbnQgd2lsbCBiZSBzaGFyZWQgd2l0aCBhbmQgc3RvcmVkIGJ5IFRyaWJ1dGUgU3RvcmUgYW5kIGl0cyBhZmZpbGlhdGVzIGFuZCBwYXJ0bmVycywgaW5jbHVkaW5nIGJ1dCBub3QgbGltaXRlZCB0byBUcmlidXRlIEFyY2hpdmUgKHRyaWJ1dGVhcmNoaXZlLmNvbSkgYW5kIG1heSBhbHNvIGJlIHVzZWQgaW4gY29ubmVjdGlvbiB3aXRoIG90aGVyIHByb2R1Y3RzIGFuZCBzZXJ2aWNlcyBwcm92aWRlZCBieSBUcmlidXRlIFN0b3JlIGFuZCBpdHMgYWZmaWxpYXRlcyBhbmQgcGFydG5lcnMgaW4gY29ubmVjdGlvbiB3aXRoIHRoZSBTaXRlcywgaW5jbHVkaW5nIHByb2R1Y3RzIHN1Y2ggYXMgVHJpYnV0ZSBCb29rLiBXaXRoIHJlc3BlY3QgdG8gYW55IGltYWdlcyBvciB2aWRlb3MgdGhhdCB5b3UgcG9zdCBvciBwcm92aWRlIGluIGNvbm5lY3Rpb24gd2l0aCB0aGUgU2l0ZXMgb3Igb3VyIHNlcnZpY2VzLCB5b3UgcmVwcmVzZW50IGFuZCB3YXJyYW50IHRoYXQgeW91IGhhdmUgc2VjdXJlZCB0aGUgcGVybWlzc2lvbiBvZiBhbnkgbGl2aW5nIHBlcnNvbnMgZGVwaWN0ZWQgdGhlcmVpbiB0byAoaSkgcG9zdCB0aGVtLCBhbmQgKGlpKSB0aGUgdXNlIG9mIHN1Y2ggQ29udGVudCBhcyBzZXQgb3V0IGluIHRoZXNlIFRlcm1zLiZuYnNwOyBZb3UgaGVyZWJ5IGdyYW50IHRvIFRyaWJ1dGUgU3RvcmUgYW5kIGl0cyBhZ2VudHMsIGF0dG9ybmV5cywgcmVwcmVzZW50YXRpdmVzLCBwcmVkZWNlc3NvcnMsIHN1Y2Nlc3NvcnMsIGFmZmlsaWF0ZXMsIHBhcmVudHMsIHN1YnNpZGlhcmllcywgbm9taW5lZXMsIGxpY2Vuc2VlcywgZXhlY3V0b3JzLCBhZG1pbmlzdHJhdG9ycywgYXNzaWducywgZnVuZXJhbCBob21lcyBvciBvdGhlciBmdW5lcmFsIHByb2Zlc3Npb25hbHMgdGhhdCBhcmUgb3VyIGNsaWVudHMsIGFuZCB0aG9zZSBhY3Rpbmcgd2l0aCBhdXRob3JpdHkgb2YgdGhlIGZvcmVnb2luZyAoY29sbGVjdGl2ZWx5LCAiVHJpYnV0ZSBQYXJ0aWVzIiksIGEgd29ybGR3aWRlLCBub24tZXhjbHVzaXZlLCBwZXJwZXR1YWwsIGlycmV2b2NhYmxlLCByb3lhbHR5LWZyZWUsIHRyYW5zZmVyYWJsZSwgYW5kIHN1YmxpY2Vuc2FibGUgcmlnaHQgYW5kIGxpY2Vuc2UgdG8gdXNlLCBzaGFyZSwgcmVwcm9kdWNlLCBkaXN0cmlidXRlLCBzZWxsLCBwcmVwYXJlIGRlcml2YXRpdmUgd29ya3Mgb2YsIGV4Y2VycHQsIHB1YmxpY2x5IGRpc3BsYXksIHB1YmxpY2x5IHBlcmZvcm0sIGhvc3QsIGNhY2hlLCByb3V0ZSwgdHJhbnNtaXQsIHN0b3JlLCByZWZvcm1hdCwgZXhjZXJwdCwgZWRpdCwgYXJjaGl2ZSwgaW5kZXgsIGNyZWF0ZSBhbGdvcml0aG1zIGJhc2VkIG9uLCBtb2RpZnksIGFuZC9vciB0cmFuc2NvZGUgc3VjaCBDb250ZW50IGluIGFueSBhbmQgYWxsIGZvcm1hdHMgYW5kIHRocm91Z2ggYW55IGFuZCBhbGwgbWVhbnMgYW5kIGNoYW5uZWxzLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRocm91Z2ggZG93bmxvYWRpbmcgdGVjaG5vbG9naWVzLCBvbiB0aGUgaW50ZXJuZXQsIGFuZCBpbiBwdWJsaWNhdGlvbnMgYW5kIGFkdmVydGlzZW1lbnRzLiAmbmJzcDtZb3UgYWxzbyBoZXJlYnkgaXJyZXZvY2FibHkgd2FpdmUsIGFzIGFnYWluc3QgdGhlIFRyaWJ1dGUgUGFydGllcywgYWxsIG1vcmFsIHJpZ2h0cyBhbmQgcmlnaHRzIG9mIHJlc3RyYWludCBpbiBzdWNoIENvbnRlbnQuJm5ic3A7IFRoZSBsaWNlbnNlLCBjb25zZW50LCBhbmQgcmVsZWFzZSBoZXJlaW4gYXJlIGJpbmRpbmcgdXBvbiB5b3UgYW5kIHlvdXIgaGVpcnMsIGV4ZWN1dG9ycywgYWRtaW5pc3RyYXRvcnMsIHN1Y2Nlc3NvcnMsIGxpY2Vuc2VlcywgYW5kIGFzc2lnbnMuPC9wPg0KPHA+RXhjZXB0IGZvciBDb250ZW50LCBhbGwgdGV4dCwgZ3JhcGhpY3MsIHBob3RvZ3JhcGhzLCB2aWRlb3MsIHVzZXIgaW50ZXJmYWNlcywgdHJhZGVtYXJrcywgbG9nb3MsIHRhZ2xpbmVzLCBhbmltYXRpb25zLCBzb3VuZHMsIG11c2ljIGFuZCBvdGhlciBtYXRlcmlhbHMgY29udGFpbmVkIG9uIG9yIGNvbXByaXNpbmcgdGhlIFNpdGVzLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSBkZXNpZ24sIHN0cnVjdHVyZSwgc2VsZWN0aW9uLCBvcmdhbml6YXRpb24sIGNvbXBpbGF0aW9uLCBkaXNwbGF5LCBhcnJhbmdlbWVudCwgZXhwcmVzc2lvbiwgYW5kICJsb29rIGFuZCBmZWVsIiBvZiB0aGUgU2l0ZXMsIGFuZCB0aGUgc29mdHdhcmUgY29tcHJpc2luZyBhbmQvb3IgZW1ib2R5aW5nIHRoZSBmb3JlZ29pbmcgKGNvbGxlY3RpdmVseSwgdGhlICJUcmlidXRlIFN0b3JlIE1hdGVyaWFscyIpLCBhcmUgb3duZWQsIGNvbnRyb2xsZWQsIG9yIGxpY2Vuc2VkIGJ5IG9yIHRvIFRyaWJ1dGUgU3RvcmUsIGFuZCBhcmUgcHJvdGVjdGVkIHVuZGVyIGFwcGxpY2FibGUgaW50ZWxsZWN0dWFsIHByb3BlcnR5IGxhd3MsIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gY29weXJpZ2h0LCB0cmFkZSBkcmVzcywgdHJhZGVtYXJrLCBhbmQvb3IgcGF0ZW50IGxhd3MuJm5ic3A7IFlvdXIgdXNlIG9mIHRoZSBTaXRlcyBnaXZlcyB5b3Ugbm8gb3duZXJzaGlwIHJpZ2h0cyBpbiB0aGUgVHJpYnV0ZSBTdG9yZSBNYXRlcmlhbHMuJm5ic3A7PC9wPg0KPHA+VHJpYnV0ZSBTdG9yZSwgb3IgdGhpcmQgcGFydGllcyBmcm9tIHdob20gVHJpYnV0ZSBTdG9yZSBoYXMgcGVybWlzc2lvbiwgb3duIHRoZSB0cmFkZW1hcmtzIGFuZCBzZXJ2aWNlIG1hcmtzIHRoYXQgYXJlIHVzZWQgb24gdGhlIFNpdGVzLiAmbmJzcDtBbGwgcmlnaHRzIGFyZSByZXNlcnZlZCBieSBUcmlidXRlIFN0b3JlIGFuZCBzYWlkIHRoaXJkIHBhcnRpZXMsIGFuZCBubyBpbXBsaWVkIHJpZ2h0cyBhcmUgZ3JhbnRlZCB0byB5b3Ugb3IgYW55IHRoaXJkIHBhcnRpZXMuJm5ic3A7IFRoZXNlIGFuZCBvdGhlciBncmFwaGljcywgbG9nb3MsIHNlcnZpY2UgbWFya3MsIHRyYWRlbWFya3MsIGFuZCB0cmFkZSBkcmVzcyBvZiBUcmlidXRlIFN0b3JlIGFuZCBpdHMgbGljZW5zb3JzIG1heSBub3QgYmUgdXNlZCB3aXRob3V0IHByaW9yIHdyaXR0ZW4gY29uc2VudCBvZiBUcmlidXRlIFN0b3JlIG9yIGl0cyBsaWNlbnNvciwgYXMgdGhlIGNhc2UgbWF5IGJlLiZuYnNwOyBXaXRob3V0IGxpbWl0aW5nIHRoZSBmb3JlZ29pbmcsIG5vIFRyaWJ1dGUgU3RvcmUgdHJhZGVtYXJrIG9yIHRyYWRlIGRyZXNzIG1heSBiZSB1c2VkIGluIGNvbm5lY3Rpb24gd2l0aCBhbnkgcHJvZHVjdCBvciBzZXJ2aWNlIHRoYXQgaXMgbm90IFRyaWJ1dGUgU3RvcmUncyBpbiBhbnkgbWFubmVyIHRoYXQgaXMgbGlrZWx5IHRvIGNhdXNlIGNvbmZ1c2lvbiBhbW9uZyB1c2Vycywgb3IgaW4gYW55IG1hbm5lciB0aGF0IGRpc3BhcmFnZXMgb3IgZGlzY3JlZGl0cyBUcmlidXRlIFN0b3JlLiZuYnNwOzwvcD4NCjxwPllvdSBncmFudCBUcmlidXRlIFN0b3JlIGEgcGVycGV0dWFsLCByb3lhbHR5LWZyZWUsIGlycmV2b2NhYmxlLCBzdWItbGljZW5zYWJsZSwgYXNzaWduYWJsZSwgYW5kIHRyYW5zZmVyYWJsZSBsaWNlbnNlIHRvIGFueSBmZWVkYmFjaywgc3VibWlzc2lvbnMsIGlkZWFzLCBjb25jZXB0cywga25vdy1ob3csIG9yIHRlY2huaXF1ZXMgdGhhdCB5b3Ugc3VibWl0IGFib3V0IHRoZSBTaXRlcyBvciBUcmlidXRlIFN0b3JlIE1hdGVyaWFscyBmb3IgYW55IHB1cnBvc2UgKGluY2x1ZGluZywgd2l0aG91dCBsaW1pdGF0aW9uLCBjb21tZXJjaWFsaXphdGlvbikgYW5kIHdpdGhvdXQgY29tcGVuc2F0aW9uIHRvIHlvdS4mbmJzcDs8L3A+DQo8cD48c3Ryb25nPjguPC9zdHJvbmc+IDxzdHJvbmc+VXNlciBDb250ZW50LiA8L3N0cm9uZz5Zb3UgcmVwcmVzZW50IGFuZCB3YXJyYW50IHRoYXQgeW91IG93biBvciBvdGhlcndpc2UgaGF2ZSB0aGUgcmlnaHRzLCBsaWNlbnNlcywgY29uc2VudHMgYW5kIHBlcm1pc3Npb25zIG5lY2Vzc2FyeSB0byBwcm92aWRlIFRyaWJ1dGUgU3RvcmUgdGhlIENvbnRlbnQgeW91IHByb3ZpZGUgaW4gY29ubmVjdGlvbiB3aXRoIHRoZSBTaXRlcy4mbmJzcDsgSWYgeW91IGJlbGlldmUgdGhhdCB5b3VyIENvbnRlbnQgb3IgYW55IG90aGVyIG1hdGVyaWFsIHBvc3RlZCBpbiBjb25uZWN0aW9uIHdpdGggdGhlIFNpdGVzIGhhcyBiZWVuIHVzZWQgaW4gYSB3YXkgdGhhdCBjb25zdGl0dXRlcyBjb3B5cmlnaHQgaW5mcmluZ2VtZW50LCBwbGVhc2Ugbm90aWZ5IHVzIGZvbGxvd2luZyB0aGUgcHJvY2VkdXJlcyBzZXQgZm9ydGggaW4gdGhpcyBTZWN0aW9uLiBXZSByZXNwZWN0IHRoZSBpbnRlbGxlY3R1YWwgcHJvcGVydHkgcmlnaHRzIG9mIG90aGVycyBhbmQgZXhwZWN0IG91ciB1c2VycyB0byBkbyB0aGUgc2FtZS4gSW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBEaWdpdGFsIE1pbGxlbm5pdW0gQ29weXJpZ2h0IEFjdCwgd2Ugd2lsbCByZXNwb25kIHByb21wdGx5IHRvIG5vdGljZXMgb2YgYWxsZWdlZCBpbmZyaW5nZW1lbnQgdGhhdCBhcmUgcmVwb3J0ZWQgdG8gb3VyIGRlc2lnbmF0ZWQgQ29weXJpZ2h0IEFnZW50LCBpZGVudGlmaWVkIGJlbG93LjwvcD4NCjxwPjx1Pk5vdGljZXMgb2YgQWxsZWdlZCBJbmZyaW5nZW1lbnQ8L3U+OjwvcD4NCjxwPklmIHlvdSBhcmUgYSBjb3B5cmlnaHQgb3duZXIsIGF1dGhvcml6ZWQgdG8gYWN0IG9uIGJlaGFsZiBvZiBvbmUsIG9yIGF1dGhvcml6ZWQgdG8gYWN0IHVuZGVyIGFueSBleGNsdXNpdmUgcmlnaHQgdW5kZXIgY29weXJpZ2h0LCBwbGVhc2UgcmVwb3J0IGFsbGVnZWQgY29weXJpZ2h0IGluZnJpbmdlbWVudHMgdGFraW5nIHBsYWNlIG9uIG9yIHRocm91Z2ggb3VyIFNpdGVzIGJ5IHNlbmRpbmcgdXMgYSBub3RpY2UgKCJOb3RpY2UiKSBjb21wbHlpbmcgd2l0aCB0aGUgZm9sbG93aW5nIHJlcXVpcmVtZW50cy48L3A+DQo8b2wgc3R5bGU9Imxpc3Qtc3R5bGUtdHlwZTogdXBwZXItYWxwaGE7Ij4NCjxsaT4NCjxwPklmIHlvdSBhcmUgYSBjb3B5cmlnaHQgb3duZXIsIGF1dGhvcml6ZWQgdG8gYWN0IG9uIGJlaGFsZiBvZiBvbmUsIG9yIGF1dGhvcml6ZWQgdG8gYWN0IHVuZGVyIGFueSBleGNsdXNpdmUgcmlnaHQgdW5kZXIgY29weXJpZ2h0LCBwbGVhc2UgcmVwb3J0IGFsbGVnZWQgY29weXJpZ2h0IGluZnJpbmdlbWVudHMgdGFraW5nIHBsYWNlIG9uIG9yIHRocm91Z2ggb3VyIFNpdGVzIGJ5IHNlbmRpbmcgdXMgYSBub3RpY2UgKCJOb3RpY2UiKSBjb21wbHlpbmcgd2l0aCB0aGUgZm9sbG93aW5nIHJlcXVpcmVtZW50cy48L3A+DQo8L2xpPg0KPGxpPklkZW50aWZ5IHRoZSBtYXRlcmlhbCBvciBsaW5rIHlvdSBjbGFpbSBpcyBpbmZyaW5naW5nIChvciB0aGUgc3ViamVjdCBvZiBpbmZyaW5naW5nIGFjdGl2aXR5KSBhbmQgdGhhdCBhY2Nlc3MgdG8gd2hpY2ggaXMgdG8gYmUgZGlzYWJsZWQsIGluY2x1ZGluZyBhdCBhIG1pbmltdW0sIGlmIGFwcGxpY2FibGUsIHRoZSBVUkwgb2YgdGhlIGxpbmsgc2hvd24gb24gdGhlIFNpdGUgd2hlcmUgc3VjaCBtYXRlcmlhbCBtYXkgYmUgZm91bmQuPC9saT4NCjxsaT5Qcm92aWRlIHlvdXIgbWFpbGluZyBhZGRyZXNzLCB0ZWxlcGhvbmUgbnVtYmVyLCBhbmQsIGlmIGF2YWlsYWJsZSwgZW1haWwgYWRkcmVzcy48L2xpPg0KPGxpPkluY2x1ZGUgYm90aCBvZiB0aGUgZm9sbG93aW5nIHN0YXRlbWVudHMgaW4gdGhlIGJvZHkgb2YgdGhlIE5vdGljZTo8YnIgLz4iSSBoZXJlYnkgc3RhdGUgdGhhdCBJIGhhdmUgYSBnb29kIGZhaXRoIGJlbGllZiB0aGF0IHRoZSBkaXNwdXRlZCB1c2Ugb2YgdGhlIGNvcHlyaWdodGVkIG1hdGVyaWFsIGlzIG5vdCBhdXRob3JpemVkIGJ5IHRoZSBjb3B5cmlnaHQgb3duZXIsIGl0cyBhZ2VudCwgb3IgdGhlIGxhdyAoZS5nLiwgYXMgYSBmYWlyIHVzZSkuIjxiciAvPg0KPHA+IkkgaGVyZWJ5IHN0YXRlIHRoYXQgdGhlIGluZm9ybWF0aW9uIGluIHRoaXMgTm90aWNlIGlzIGFjY3VyYXRlIGFuZCwgdW5kZXIgcGVuYWx0eSBvZiBwZXJqdXJ5LCB0aGF0IEkgYW0gdGhlIG93bmVyLCBvciBhdXRob3JpemVkIHRvIGFjdCBvbiBiZWhhbGYgb2YgdGhlIG93bmVyLCBvZiB0aGUgY29weXJpZ2h0IG9yIG9mIGFuIGV4Y2x1c2l2ZSByaWdodCB1bmRlciB0aGUgY29weXJpZ2h0IHRoYXQgaXMgYWxsZWdlZGx5IGluZnJpbmdlZC4iPC9wPg0KPC9saT4NCjxsaT5Qcm92aWRlIHlvdXIgZnVsbCBsZWdhbCBuYW1lIGFuZCB5b3VyIGVsZWN0cm9uaWMgb3IgcGh5c2ljYWwgc2lnbmF0dXJlLjwvbGk+DQo8L29sPg0KPHA+UGxlYXNlIGRlbGl2ZXIgdGhpcyBOb3RpY2UsIHdpdGggYWxsIGl0ZW1zIGNvbXBsZXRlZCwgdG8gb3VyIGRlc2lnbmF0ZWQgQ29weXJpZ2h0IEFnZW50IGF0IHRoZSBmb2xsb3dpbmcgYWRkcmVzczo8L3A+DQo8cD5Db3B5cmlnaHQgQWdlbnQ8L3A+DQo8cD5jL28gVHJpYnV0ZSBTdG9yZTxiciAvPjI1MDEgUGFybWVudGVyIFN0cmVldCwgU3VpdGUgMzAwQzwvcD4NCjxwPk1pZGRsZXRvbiwgV0kgNTM1NjIgPGJyIC8+UGhvbmU6IDg2Ni0zMDMtMTg4MDxiciAvPkVtYWlsOiA8dT5jb3B5cmlnaHRAdHJpYnV0ZXRlY2guY29tPC91PjwvcD4NCjxwPlRyaWJ1dGUgU3RvcmUgaGFzIGFkb3B0ZWQgYW5kIGltcGxlbWVudHMgYSBwb2xpY3kgdGhhdCBwcm92aWRlcyBmb3IgdGVybWluYXRpb24gaW4gYXBwcm9wcmlhdGUgY2lyY3Vtc3RhbmNlcyBvZiBhY2NvdW50cyBvZiB1c2VycyB3aG8gcmVwZWF0ZWRseSBpbmZyaW5nZSBjb3B5cmlnaHQgb3Igb3RoZXIgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBvZiBUcmlidXRlIFN0b3JlIG9yIG90aGVycy48L3A+DQo8cD48c3Ryb25nPjkuIEluZGVtbmlmaWNhdGlvbi4gPC9zdHJvbmc+WW91IGFncmVlIHRoYXQgeW91IHdpbGwgYmUgcGVyc29uYWxseSByZXNwb25zaWJsZSBmb3IgeW91ciB1c2Ugb2YgdGhlIFNpdGVzLCBhbmQgeW91IGFncmVlIHRvIGRlZmVuZCwgaW5kZW1uaWZ5LCBhbmQgaG9sZCBoYXJtbGVzcyBUcmlidXRlIFN0b3JlLCBpdHMgYWZmaWxpYXRlcywgYW5kIGVhY2ggb2YgdGhlaXIgcmVzcGVjdGl2ZSBkaXJlY3RvcnMsIG9mZmljZXJzLCBlbXBsb3llZXMgYW5kIGFnZW50cyBmcm9tIGFuZCBhZ2FpbnN0IGFueSBhbmQgYWxsIGNsYWltcywgbGlhYmlsaXRpZXMsIGRhbWFnZXMsIGxvc3NlcywgYW5kIGV4cGVuc2VzIChpbmNsdWRpbmcgYXR0b3JuZXlzJyBhbmQgYWNjb3VudGluZyBmZWVzIGFuZCBjb3N0cyksIGFyaXNpbmcgb3V0IG9mIG9yIGluIGFueSB3YXkgY29ubmVjdGVkIHdpdGggKGkpIHlvdXIgYWNjZXNzIHRvLCB1c2Ugb2YsIG9yIGFsbGVnZWQgdXNlIG9mIHRoZSBTaXRlcywgaW5jbHVkaW5nLCB3aXRob3V0IGxpbWl0YXRpb24sIGludm9sdmluZyBhbnkgQ29udGVudCB5b3UgcG9zdCBvciBzdWJtaXQgdG8gdXMgaW4gY29ubmVjdGlvbiB3aXRoIG9yIHRoZSBTaXRlczsgKGlpKSB5b3VyIHZpb2xhdGlvbiBvZiB0aGUgVGVybXMgb3IgYW55IGFwcGxpY2FibGUgbGF3IG9yIHJlZ3VsYXRpb247IChpaWkpIHlvdXIgdmlvbGF0aW9uIG9mIGFueSB0aGlyZCBwYXJ0eSByaWdodCwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiBhbnkgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0LCBwdWJsaWNpdHksIGNvbmZpZGVudGlhbGl0eSwgcHJvcGVydHksIG9yIHByaXZhY3kgcmlnaHQ7Jm5ic3A7PGJyIC8+KGl2KSBhbnkgZGlzcHV0ZXMgb3IgaXNzdWVzIGJldHdlZW4geW91IGFuZCBhbnkgdGhpcmQgcGFydHk7IG9yICh2KSBhY2Nlc3MgdG8sIHVzZSBvZiwgb3IgYWxsZWdlZCB1c2Ugb2YgdGhlIFNpdGVzIGJ5IGFueW9uZSBhY2Nlc3NpbmcgdGhlIFNpdGVzIHVzaW5nIHlvdXIgdXNlciBuYW1lIGFuZCBwYXNzd29yZC4mbmJzcDsgVHJpYnV0ZSBTdG9yZSByZXNlcnZlcyB0aGUgcmlnaHQsIGF0IG91ciBvd24gZXhwZW5zZSwgdG8gYXNzdW1lIHRoZSBleGNsdXNpdmUgZGVmZW5zZSBhbmQgY29udHJvbCBvZiBhbnkgbWF0dGVyIG90aGVyd2lzZSBzdWJqZWN0IHRvIGluZGVtbmlmaWNhdGlvbiBieSB5b3UsIGFuZCBpbiBzdWNoIGNhc2UsIHlvdSBhZ3JlZSB0byBjb29wZXJhdGUgd2l0aCBvdXIgZGVmZW5zZSBvZiBzdWNoIGNsYWltLiBGb3IgdGhlIGF2b2lkYW5jZSBvZiBkb3VidCBhbmQgd2l0aG91dCBsaW1pdGluZyB0aGUgZm9yZWdvaW5nLCB5b3UgYWdyZWUgdG8gaW5kZW1uaWZ5IFRyaWJ1dGUgU3RvcmUgYWdhaW5zdCBhbnkgY2xhaW1zIHRoYXQgQ29udGVudCB5b3Ugc3VibWl0IHRvIFRyaWJ1dGUgU3RvcmUgdmlvbGF0ZXMgdGhlIGludGVsbGVjdHVhbCBwcm9wZXJ0eSBhbmQvb3IgcHJpdmFjeSByaWdodHMgb2YgYW55IHBlcnNvbiBvciB0aGlyZCBwYXJ0eS48L3A+DQo8cD48c3Ryb25nPjEwLjwvc3Ryb25nPiA8c3Ryb25nPlRlcm1pbmF0aW9uLiA8L3N0cm9uZz5JZiB5b3UgdmlvbGF0ZSB0aGVzZSBUZXJtcywgeW91ciBwZXJtaXNzaW9uIHRvIHVzZSB0aGUgU2l0ZXMgd2lsbCBhdXRvbWF0aWNhbGx5IHRlcm1pbmF0ZS4mbmJzcDsgSW4gYWRkaXRpb24sIFRyaWJ1dGUgU3RvcmUgaW4gaXRzIHNvbGUgZGlzY3JldGlvbiBtYXkgc3VzcGVuZCBvciB0ZXJtaW5hdGUgeW91ciB1c2VyIGFjY291bnQgYW5kL29yIHN1c3BlbmQgb3IgdGVybWluYXRlIHNvbWUgb3IgYWxsIG9mIHlvdXIgYWNjZXNzIHRvIHRoZSBTaXRlcyBhdCBhbnkgdGltZSwgd2l0aCBvciB3aXRob3V0IG5vdGljZSB0byB5b3UuJm5ic3A7IFlvdSBtYXkgdGVybWluYXRlIHlvdXIgYWNjb3VudCBhdCBhbnkgdGltZSBieSBjb250YWN0aW5nIFRyaWJ1dGUgU3RvcmUgYXQgPHU+aW5mb0B0cmlidXRlY2VudGVyc3RvcmUuY29tPC91Pi4mbmJzcDsgQWZ0ZXIgeW91ciBhY2NvdW50IGlzIHRlcm1pbmF0ZWQsIGluZm9ybWF0aW9uIGFuZCBjb250ZW50IHByZXZpb3VzbHkgcHJvdmlkZWQgYnkgeW91IHdpbGwgbm8gbG9uZ2VyIGJlIGFjY2Vzc2libGUgdGhyb3VnaCB5b3VyIGFjY291bnQsIGJ1dCBUcmlidXRlIFN0b3JlIG1heSBjb250aW51ZSB0byBzdG9yZSBzdWNoIGluZm9ybWF0aW9uIGFuZCBjb250ZW50IGFuZCBpdCBtYXkgYWxzbyBiZSBzdG9yZWQgYnkgdGhpcmQgcGFydGllcyB0byB3aG9tIGl0IGhhcyBiZWVuIHRyYW5zZmVycmVkIHRocm91Z2ggeW91ciB1c2Ugb2YgdGhlIFNpdGVzLjwvcD4NCjxwPjxzdHJvbmc+MTEuIE1vZGlmaWNhdGlvbiBvZiB0aGUgVGVybXM8L3N0cm9uZz4uIFRyaWJ1dGUgU3RvcmUgcmVzZXJ2ZXMgdGhlIHJpZ2h0IGF0IGFueSB0aW1lIHRvIG1vZGlmeSB0aGVzZSBUZXJtcyBhbmQgdG8gaW1wb3NlIG5ldyBvciBhZGRpdGlvbmFsIHRlcm1zIG9yIGNvbmRpdGlvbnMgb24geW91ciB1c2Ugb2YgdGhlIFNpdGVzLiZuYnNwOyBTdWNoIG1vZGlmaWNhdGlvbnMgYW5kIGFkZGl0aW9uYWwgdGVybXMgYW5kIGNvbmRpdGlvbnMgd2lsbCBiZSBlZmZlY3RpdmUgaW1tZWRpYXRlbHkgYW5kIGluY29ycG9yYXRlZCBpbnRvIHRoZXNlIFRlcm1zIHVwb24gdXBkYXRpbmcgdGhlIHBvc3Rpbmcgb2YgdGhlc2UgVGVybXMuJm5ic3A7IFdlIHdpbGwgbWFrZSByZWFzb25hYmxlIGVmZm9ydHMgdG8gbm90aWZ5IHlvdSBvZiBhbnkgbWF0ZXJpYWwgY2hhbmdlcyB0byB0aGUgVGVybXMsIGluY2x1ZGluZyBieSB1cGRhdGluZyB0aGlzIHBvc3RpbmcuJm5ic3A7IFlvdSBzaG91bGQsIHRoZXJlZm9yZSwgcGVyaW9kaWNhbGx5IHZpc2l0IHRoaXMgcGFnZSB0byByZXZpZXcgdGhlIGN1cnJlbnQgVGVybXMsIHNvIHlvdSBhcmUgYXdhcmUgb2YgYW55IHN1Y2ggcmV2aXNpb25zIHRvIHdoaWNoIHlvdSBhcmUgYm91bmQuIFlvdXIgY29udGludWVkIHVzZSBvZiB0aGUgU2l0ZXMgZm9sbG93aW5nIHJldmlzaW9ucyB0byB0aGVzZSBUZXJtcyB3aWxsIGJlIGRlZW1lZCBhY2NlcHRhbmNlIG9mIGFueSBtb2RpZmljYXRpb25zIHRvIHRoZSBUZXJtcy48L3A+DQo8cD48c3Ryb25nPjEyPC9zdHJvbmc+LiA8c3Ryb25nPkRpc2NsYWltZXJzIG9mIFdhcnJhbnRpZXM8L3N0cm9uZz4uIFRIRSBTSVRFUyBBTkQgUFJPRFVDVFMgQVJFIFBST1ZJREVEICJBUyBJUyIgQU5EIE9OIEFOICJBUyBBVkFJTEFCTEUiIEJBU0lTLCBXSVRIT1VUIFdBUlJBTlRZIE9SIENPTkRJVElPTiBPRiBBTlkgS0lORCwgRUlUSEVSIEVYUFJFU1MgT1IgSU1QTElFRC4gJm5ic3A7QWx0aG91Z2ggVHJpYnV0ZSBTdG9yZSBzZWVrcyB0byBtYWludGFpbiBzYWZlLCBzZWN1cmUsIGFjY3VyYXRlLCBhbmQgd2VsbC1mdW5jdGlvbmluZyBzZXJ2aWNlcywgd2UgY2Fubm90IGd1YXJhbnRlZSB0aGUgY29udGludW91cyBvcGVyYXRpb24gb2Ygb3IgYWNjZXNzIHRvIG91ciBTaXRlcywgYW5kIHRoZXJlIG1heSBhdCB0aW1lcyBiZSBpbmFkdmVydGVudCB0ZWNobmljYWwgb3IgZmFjdHVhbCBlcnJvcnMgb3IgaW5hY2N1cmFjaWVzLiAmbmJzcDtUUklCVVRFIFNUT1JFIFNQRUNJRklDQUxMWSAoQlVUIFdJVEhPVVQgTElNSVRBVElPTikgRElTQ0xBSU1TIChJKSBBTlkgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSwgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UsIFFVQUxJVFkgT0YgSU5GT1JNQVRJT04sIFFVSUVUIEVOSk9ZTUVOVCwgQU5EIFRJVExFL05PTi1JTkZSSU5HRU1FTlQ7IEFORCAoSUkpIEFOWSBXQVJSQU5USUVTIEFSSVNJTkcgT1VUIE9GIENPVVJTRS1PRi1ERUFMSU5HLCBVU0FHRSwgT1IgVFJBREUuJm5ic3A7IFlPVSBBU1NVTUUgQUxMIFJJU0sgRk9SIEFOWS9BTEwgREFNQUdFUyBUSEFUIE1BWSBSRVNVTFQgRlJPTSBZT1VSIFVTRSBPRiBPUiBBQ0NFU1MgVE8gVEhFIFNJVEVTIEFORCBBTlkgU0VSVklDRVMgQU5EIFBST0RVQ1RTIEFWQUlMQUJMRSBUSEVSRUlOLiZuYnNwOyBUUklCVVRFIFNUT1JFIERPRVMgTk9UIFdBUlJBTlQgT1IgR1VBUkFOVEVFIFRIRSBBQ0NVUkFDWSwgQ09NUExFVEVORVNTIE9SIFRJTUVMSU5FU1MgT0YsIEFORCBESVNDTEFJTVMgQUxMIExJQUJJTElUWSBGT1IsIEFOWSBFUlJPUlMgT1IgT1RIRVIgSU5BQ0NVUkFDSUVTIElOIFRIRSBJTkZPUk1BVElPTiwgQ09OVEVOVCwgUkVDT01NRU5EQVRJT05TLCBQUk9EVUNUUywgQU5EIE1BVEVSSUFMUyBNQURFIEFWQUlMQUJMRSBUSFJPVUdIIFRIRSBTSVRFUy4gVFJJQlVURSBTVE9SRSBET0VTIE5PVCBXQVJSQU5UIFRIQVQgRklMRVMgQVZBSUxBQkxFIEZPUiBET1dOTE9BRCBXSUxMIEJFIEZSRUUgT0YgVklSVVNFUywgV09STVMsIFRST0pBTiBIT1JTRVMgT1IgT1RIRVIgREVTVFJVQ1RJVkUgUFJPR1JBTU1JTkcuIFlPVSBBUkUgUkVTUE9OU0lCTEUgRk9SIElNUExFTUVOVElORyBQUk9DRURVUkVTIFNVRkZJQ0lFTlQgVE8gU0FUSVNGWSBZT1VSIE5FRURTIEZPUiBEQVRBIEJBQ0sgVVAgQU5EIFNFQ1VSSVRZLjwvcD4NCjxwPjxzdHJvbmc+MTMuPC9zdHJvbmc+IDxzdHJvbmc+TGltaXRhdGlvbiBvZiBMaWFiaWxpdHkuIDwvc3Ryb25nPklOIE5PIEVWRU5UIFdJTEwgVFJJQlVURSBTVE9SRSBPUiBJVFMgQUZGSUxJQVRFUywgVkVORE9SUywgU1VQUExJRVJTLCBPUiBQQVJUTkVSUyBCRSBMSUFCTEUgVE8gWU9VIEZPUiBBTlkgSU5DSURFTlRBTCwgU1BFQ0lBTCwgQ09OU0VRVUVOVElBTCwgSU5ESVJFQ1QsIEVYRU1QTEFSWSBPUiBQVU5JVElWRSBEQU1BR0VTIChJTkNMVURJTkcsIFdJVEhPVVQgTElNSVRBVElPTiwgVEhPU0UgUkVTVUxUSU5HIEZST00gTE9TVCBQUk9GSVRTLCBMT1NUIERBVEEsIE9SIEJVU0lORVNTIElOVEVSUlVQVElPTiksIFdIRVRIRVIgQkFTRUQgT04gV0FSUkFOVFksIENPTlRSQUNULCBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSksIFNUQVRVVEUsIE9SIEFOWSBPVEhFUiBMRUdBTCBUSEVPUlksIFdIRVRIRVIgT1IgTk9UIFRSSUJVVEUgU1RPUkUgSEFTIEJFRU4gSU5GT1JNRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLjwvcD4NCjxwPjxzdHJvbmc+MTQuPC9zdHJvbmc+IDxzdHJvbmc+SW50ZXJwcmV0YXRpb25zIGFuZCBEaXNwdXRlczwvc3Ryb25nPi4gWU9VIEFORCBUUklCVVRFIFNUT1JFIEFSRSBBR1JFRUlORyBUTyBHSVZFIFVQIEFOWSBSSUdIVFMgVE8gTElUSUdBVEUgQ0xBSU1TIElOIEEgQ09VUlQgT1IgQkVGT1JFIEEgSlVSWSwgT1IgVE8gUEFSVElDSVBBVEUgSU4gQSBDTEFTUyBBQ1RJT04gT1IgUkVQUkVTRU5UQVRJVkUgQUNUSU9OIFdJVEggUkVTUEVDVCBUTyBBIENMQUlNLiZuYnNwOyBPVEhFUiBSSUdIVFMgVEhBVCBZT1UgV09VTEQgSEFWRSBJRiBZT1UgV0VOVCBUTyBDT1VSVCBNQVkgQUxTTyBCRSBVTkFWQUlMQUJMRSBPUiBNQVkgQkUgTElNSVRFRCBJTiBBUkJJVFJBVElPTi48L3A+DQo8b2wgc3R5bGU9Imxpc3Qtc3R5bGUtdHlwZTogdXBwZXItYWxwaGE7Ij4NCjxsaT4NCjxwPkFOWSBDTEFJTSwgRElTUFVURSBPUiBDT05UUk9WRVJTWSAoV0hFVEhFUiBJTiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIFdIRVRIRVIgUFJFLUVYSVNUSU5HLCBQUkVTRU5UIE9SIEZVVFVSRSwgQU5EIElOQ0xVRElORyBTVEFUVVRPUlksIENPTlNVTUVSIFBST1RFQ1RJT04sIENPTU1PTiBMQVcsIElOVEVOVElPTkFMIFRPUlQsIElOSlVOQ1RJVkUgQU5EIEVRVUlUQUJMRSBDTEFJTVMpIEJFVFdFRU4gWU9VIEFORCBVUyBBUklTSU5HIEZST00gT1IgUkVMQVRJTkcgSU4gQU5ZIFdBWSBUTyBUSEVTRSBURVJNUyBPUiBZT1VSIFVTRSBPRiBUSEUgU0lURVMgT1IgU0VSVklDRVMgQVZBSUxBQkxFIFRIRVJFSU4sIElOQ0xVRElORyBBTlkgUFVSQ0hBU0UgT1IgVVNFIE9GIE9VUiBTRVJWSUNFUyBPUiBQUk9EVUNUUywgV0lMTCBCRSBSRVNPTFZFRCBFWENMVVNJVkVMWSBBTkQgRklOQUxMWSBCWSBCSU5ESU5HIEFSQklUUkFUSU9OLjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5JZiB0aGUgbG9jYXRpb24gb2YgeW91ciBwcmltYXJ5IHJlc2lkZW5jZSAob3IgaWYgeW91IGFyZSBhIGJ1c2luZXNzIGVudGl0eSwgeW91ciBkb21pY2lsZSkgaXMgaW4gdGhlIFVuaXRlZCBTdGF0ZXMgb3IgYW55d2hlcmUgZWxzZSBpbiB0aGUgd29ybGQgb3V0c2lkZSBvZiBDYW5hZGEsIGFyYml0cmF0aW9uIHdpbGwgYmUgYWRtaW5pc3RlcmVkIGJ5IHRoZSBBbWVyaWNhbiBBcmJpdHJhdGlvbiBBc3NvY2lhdGlvbiAoIkFBQSIpIGluIGFjY29yZGFuY2Ugd2l0aCBlaXRoZXIgdGhlIENvbnN1bWVyIEFyYml0cmF0aW9uIFJ1bGVzIG9yIHRoZSBDb21tZXJjaWFsIEFyYml0cmF0aW9uIFJ1bGVzIGFzIGFwcGxpY2FibGUgKHRoZSAiQUFBIFJ1bGVzIikgdGhlbiBpbiBlZmZlY3QsIGV4Y2VwdCBhcyBtb2RpZmllZCBieSB0aGlzIFNlY3Rpb24gMTQuJm5ic3A7IChUaGUgQUFBIFJ1bGVzIGFyZSBhdmFpbGFibGUgYXQgYWRyLm9yZyBvciBieSBjYWxsaW5nIHRoZSBBQUEgYXQgMS04MDAtNzc4LTc4NzkuKSBUaGUgRmVkZXJhbCBBcmJpdHJhdGlvbiBBY3QgKCJGQUEiKSB3aWxsIGdvdmVybiB0aGUgaW50ZXJwcmV0YXRpb24gYW5kIGVuZm9yY2VtZW50IG9mIHRoaXMgU2VjdGlvbiAxNDsgcHJvdmlkZWQsIHRoYXQgaWYgdGhlIEZBQSBpcyBpbmFwcGxpY2FibGUgZm9yIGFueSByZWFzb24sIHRoZSBhcHBsaWNhYmxlIGdvdmVybmluZyBsYXcgaWRlbnRpZmllZCBpbiB0aGUgdGFibGUgaW4gU2VjdGlvbiAxNSBzaGFsbCBhcHBseSwgaW5jbHVkaW5nIHdpdGggcmVzcGVjdCB0byBEZWxhd2FyZSBsYXcsIERlbC4gQ29kZSB0aXQuIDEwIHNlY3Rpb24gNTcwMSBldCBzZXEsIHdpdGhvdXQgcmVnYXJkIHRvIGNob2ljZSBvZiBsYXcgcHJpbmNpcGxlcy4gKFRoZSBBQUEgUnVsZXMgYXJlIGF2YWlsYWJsZSBhdCBhZHIub3JnIG9yIGJ5IGNhbGxpbmcgdGhlIEFBQSBhdCAxLTgwMC03NzgtNzg3OS4pIFVubGVzcyB5b3UgYW5kIHdlIG11dHVhbGx5IGFncmVlIG90aGVyd2lzZSwgYW55IGluLXBlcnNvbiBhcmJpdHJhdGlvbiBoZWFyaW5ncyBiZXR3ZWVuIHlvdSBhbmQgdXMgd2lsbCB0YWtlIHBsYWNlIGluIHRoZSBhcHBsaWNhYmxlIGp1cmlzZGljdGlvbiBsaXN0ZWQgaW4gdGhlIHRhYmxlIGluIFNlY3Rpb24gMTUgYmVsb3cuPC9wPg0KPC9saT4NCjxsaT4NCjxwPklmIHRoZSBsb2NhdGlvbiBvZiB5b3VyIHByaW1hcnkgcmVzaWRlbmNlIChvciBpZiB5b3UgYXJlIGEgYnVzaW5lc3MgZW50aXR5LCB5b3VyIGRvbWljaWxlKSBpcyBpbiBDYW5hZGEsIGFyYml0cmF0aW9uIHdpbGwgYmUgYWRtaW5pc3RlcmVkIGJ5IHRoZSBJbnRlcm5hdGlvbmFsIENlbnRyZSBmb3IgRGlzcHV0ZSBSZXNvbHV0aW9uIENhbmFkYSAoIklDRFIgQ2FuYWRhIikgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBDYW5hZGlhbiBBcmJpdHJhdGlvbiBSdWxlcyAodGhlICJJQ0RSIENhbmFkYSBBcmJpdHJhdGlvbiBSdWxlcyIpIHRoZW4gaW4gZWZmZWN0LCBleGNlcHQgYXMgbW9kaWZpZWQgYnkgdGhpcyBTZWN0aW9uLiAoVGhlIElDRFIgQ2FuYWRhIEFyYml0cmF0aW9uIFJ1bGVzIGFyZSBhdmFpbGFibGUgYXQgSUNEUi5vcmcgb3IgYnkgY2FsbGluZyB0aGUgSUNEUiBDYW5hZGEgYXQgMS04NDQtODU5LTA4NDUuKSBUaGUgc2VhdCBvZiBhcmJpdHJhdGlvbiBzaGFsbCBiZSBUb3JvbnRvLCBPbnRhcmlvLiBVbmxlc3MgeW91IGFuZCB3ZSBtdXR1YWxseSBhZ3JlZSBvdGhlcndpc2UsIGFueSBpbi1wZXJzb24gYXJiaXRyYXRpb24gaGVhcmluZ3MgYmV0d2VlbiB5b3UgYW5kIHVzIHdpbGwgdGFrZSBwbGFjZSBpbiB0aGUgYXBwbGljYWJsZSBqdXJpc2RpY3Rpb24gbGlzdGVkIGluIHRoZSB0YWJsZSBpbiBTZWN0aW9uIDE1IGJlbG93LjwvcD4NCjwvbGk+DQo8bGk+DQo8cD5FeGNlcHQgYXMgcHJvdmlkZWQgaGVyZWluLCB0aGUgYXJiaXRyYXRvciB3aWxsIGhhdmUgZXhjbHVzaXZlIGF1dGhvcml0eSB0byByZXNvbHZlIGFueSBkaXNwdXRlIHJlbGF0aW5nIHRvIGFyYml0cmFiaWxpdHkgYW5kL29yIGVuZm9yY2VhYmlsaXR5IG9mIHRoaXMgYXJiaXRyYXRpb24gcHJvdmlzaW9uLCBpbmNsdWRpbmcgYW55IHVuY29uc2Npb25hYmlsaXR5IGNoYWxsZW5nZSBvciBhbnkgb3RoZXIgY2hhbGxlbmdlIHRoYXQgdGhlIGFyYml0cmF0aW9uIHByb3Zpc2lvbiBvciB0aGUgVGVybXMgYXJlIHZvaWQsIHZvaWRhYmxlIG9yIG90aGVyd2lzZSBpbnZhbGlkLiZuYnNwOyBUaGUgYXJiaXRyYXRvciB3aWxsIGJlIGVtcG93ZXJlZCB0byBncmFudCB3aGF0ZXZlciByZWxpZWYgd291bGQgYmUgYXZhaWxhYmxlIGluIGNvdXJ0IHVuZGVyIGxhdyBvciBpbiBlcXVpdHkuJm5ic3A7IEFueSBhd2FyZCBvZiB0aGUgYXJiaXRyYXRvcihzKSB3aWxsIGJlIGZpbmFsIGFuZCBiaW5kaW5nIG9uIGVhY2ggb2YgdGhlIHBhcnRpZXMgYW5kIG1heSBiZSBlbnRlcmVkIGFzIGEganVkZ21lbnQgaW4gYW55IGNvdXJ0IG9mIGNvbXBldGVudCBqdXJpc2RpY3Rpb24uIFlvdSBhbmQgd2UgYWdyZWUgdGhhdCBuZWl0aGVyIHBhcnR5IHNoYWxsIGFwcGVhbCBhbnkgYXdhcmQgb2YgdGhlIGFyYml0cmF0b3IsIGluY2x1ZGluZyBhbnkgYXBwZWFsIG9uIGEgcXVlc3Rpb24gb2YgbGF3LCBxdWVzdGlvbiBvZiBmYWN0IG9yIHF1ZXN0aW9uIG9mIG1peGVkIGZhY3QgYW5kIGxhdy48L3A+DQo8L2xpPg0KPGxpPg0KPHA+V2Ugd2lsbCBiZSByZXNwb25zaWJsZSBmb3IgcGF5aW5nIGFueSBpbmRpdmlkdWFsIGNvbnN1bWVyJ3MgYXJiaXRyYXRpb24vYXJiaXRyYXRvciBmZWVzLiZuYnNwOyBJZiBhbiBpbmRpdmlkdWFsIGNvbnN1bWVyIHByZXZhaWxzIG9uIGFueSBjbGFpbSB0aGF0IGFmZm9yZHMgdGhlIHByZXZhaWxpbmcgcGFydHkgYXR0b3JuZXlzJyBmZWVzLCB0aGUgYXJiaXRyYXRvciBtYXkgYXdhcmQgcmVhc29uYWJsZSBmZWVzIHRvIHlvdSB1bmRlciB0aGUgc3RhbmRhcmRzIGZvciBmZWUgc2hpZnRpbmcgcHJvdmlkZWQgYnkgbGF3LiZuYnNwOyBGb3IgdGhlIGF2b2lkYW5jZSBvZiBkb3VidCwgdGhpcyBTZWN0aW9uIDE0KEUpIHNoYWxsIG9ubHkgYXBwbHkgdG8gaW5kaXZpZHVhbCBjb25zdW1lcnMuPC9wPg0KPC9saT4NCjxsaT4NCjxwPllvdSBhZ3JlZSB0byBhbiBhcmJpdHJhdGlvbiBvbiBhbiBpbmRpdmlkdWFsIGJhc2lzLiZuYnNwOyBJbiBhbnkgZGlzcHV0ZSwgTkVJVEhFUiBZT1UgTk9SIFRSSUJVVEUgU1RPUkUgV0lMTCBCRSBFTlRJVExFRCBUTyBKT0lOIE9SIENPTlNPTElEQVRFIENMQUlNUyBCWSBPUiBBR0FJTlNUIE9USEVSIENVU1RPTUVSUyBJTiBDT1VSVCBPUiBJTiBBUkJJVFJBVElPTiBPUiBPVEhFUldJU0UgUEFSVElDSVBBVEUgSU4gQU5ZIENMQUlNIEFTIEEgQ0xBU1MgUkVQUkVTRU5UQVRJVkUsIENMQVNTIE1FTUJFUiBPUiBJTiBBIFBSSVZBVEUgQVRUT1JORVkgR0VORVJBTCBDQVBBQ0lUWS4mbmJzcDsgVGhlIGFyYml0cmFsIHRyaWJ1bmFsIHNoYWxsIG5vdCBjb25zb2xpZGF0ZSBtb3JlIHRoYW4gb25lIHBlcnNvbidzIGNsYWltcyBhbmQgc2hhbGwgbm90IG90aGVyd2lzZSBwcmVzaWRlIG92ZXIgYW55IGZvcm0gb2YgYSByZXByZXNlbnRhdGl2ZSBvciBjbGFzcyBwcm9jZWVkaW5nLiZuYnNwOyBUaGUgYXJiaXRyYWwgdHJpYnVuYWwgaGFzIG5vIHBvd2VyIHRvIGNvbnNpZGVyIHRoZSBlbmZvcmNlYWJpbGl0eSBvZiB0aGlzIGNsYXNzIGFyYml0cmF0aW9uIHdhaXZlciBhbmQgYW55IGNoYWxsZW5nZSB0byB0aGUgY2xhc3MgYXJiaXRyYXRpb24gd2FpdmVyIG1heSBvbmx5IGJlIHJhaXNlZCBpbiBhIGNvdXJ0IG9mIGNvbXBldGVudCBqdXJpc2RpY3Rpb24gbG9jYXRlZCBpbiB0aGUganVyaXNkaWN0aW9uIHNldCBmb3J0aCBpbiBTZWN0aW9uIDE1IGJlbG93LjwvcD4NCjwvbGk+DQo8bGk+SWYgYW55IHByb3Zpc2lvbiBvZiB0aGlzIFNlY3Rpb24gaXMgZm91bmQgdW5lbmZvcmNlYWJsZSwgdGhlIHVuZW5mb3JjZWFibGUgcHJvdmlzaW9uIHdpbGwgYmUgc2V2ZXJlZCBhbmQgdGhlIHJlbWFpbmluZyBhcmJpdHJhdGlvbiB0ZXJtcyB3aWxsIGJlIGVuZm9yY2VkOyBwcm92aWRlZCwgdGhhdCBpbiB0aGUgZXZlbnQgc3Vic2VjdGlvbiAoRikgaXMgZm91bmQgdG8gYmUgdW5lbmZvcmNlYWJsZSwgYWxsIG9mIHRoaXMgU2VjdGlvbiAxNCBzaGFsbCBiZSBkZWVtZWQgbnVsbCBhbmQgdm9pZCBhbmQgb2Ygbm8gZWZmZWN0LjwvbGk+DQo8L29sPg0KPHA+PHN0cm9uZz4xNS4gQ29udHJhY3RpbmcgRW50aXR5OyBHb3Zlcm5pbmcgTGF3PC9zdHJvbmc+LiBBbGwgcmVmZXJlbmNlcyB0byAiVHJpYnV0ZSBTdG9yZSwiICJ3ZSwiICJ1cyIgb3IgIm91ciIgaW4gdGhlIFRlcm1zIHJlZmVyIHRvIHRoZSBhcHBsaWNhYmxlIGVudGl0eSBzcGVjaWZpZWQgaW4gdGhlIHRhYmxlIGJlbG93LCB3aGljaCBpcyBiYXNlZCBvbiB0aGUgbG9jYXRpb24gb2YgeW91ciBwcmltYXJ5IHJlc2lkZW5jZSAob3IgaWYgeW91IGFyZSBhIGJ1c2luZXNzIGVudGl0eSwgeW91ciBkb21pY2lsZSkgYW5kIHRoZSB0eXBlIG9mIHByb2R1Y3RzIGFuZCBzZXJ2aWNlcyB5b3UgZW5nYWdlIHdpdGggb24gdGhlIFNpdGVzLiBBZGRpdGlvbmFsbHksIHRoZXNlIFRlcm1zIGFyZSBnb3Zlcm5lZCBieSB0aGUgbGF3cyBvZiB0aGUgc3RhdGUgb3IgcHJvdmluY2UgaWRlbnRpZmllZCBpbiB0aGUgdGFibGUgYmVsb3csIGFnYWluIGJhc2VkIG9uIHRoZSBsb2NhdGlvbiBvZiB5b3VyIHByaW1hcnkgcmVzaWRlbmNlIChvciBkb21pY2lsZSwgYXMgYXBwbGljYWJsZSksIGFuZCB3aXRob3V0IHJlZ2FyZCB0byBjb25mbGljdCBvZiBsYXcgcHJpbmNpcGxlcy4mbmJzcDsgVG8gdGhlIGV4dGVudCB0aGF0IGFueSBsYXdzdWl0IG9yIGNvdXJ0IHByb2NlZWRpbmcgaXMgcGVybWl0dGVkIGhlcmV1bmRlciwgeW91IGFuZCBUcmlidXRlIFN0b3JlIGFncmVlIHRvIHN1Ym1pdCB0byB0aGUgZXhjbHVzaXZlIHBlcnNvbmFsIGp1cmlzZGljdGlvbiBvZiB0aGUgY291cnRzIGxvY2F0ZWQgaW4gYW5kIGZvciB0aGUgIkV4Y2x1c2l2ZSBKdXJpc2RpY3Rpb24iIGlkZW50aWZpZWQgaW4gdGhlIHRhYmxlIGJlbG93LCBmb3IgdGhlIHB1cnBvc2Ugb2YgbGl0aWdhdGluZyBhbGwgc3VjaCBkaXNwdXRlcy4mbmJzcDsgQW55IGNhdXNlIG9mIGFjdGlvbiBvciBjbGFpbSB3aXRoIHJlc3BlY3QgdG8gdGhlIFNpdGVzIG9yIG91ciBQcm9kdWN0cyBvciBzZXJ2aWNlcyBtdXN0IGJlIGNvbW1lbmNlZCB3aXRoaW4gdHdvICgyKSB5ZWFycyBhZnRlciB0aGUgYWN0aW9uIG9yIGNsYWltIGFyaXNlcyBvciBpcyBkaXNjb3ZlcmVkLjwvcD4NCjx0YWJsZSBzdHlsZT0iYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgd2lkdGg6IDEwMCU7IG1hcmdpbi1sZWZ0OiBhdXRvOyBtYXJnaW4tcmlnaHQ6IGF1dG87IiBib3JkZXI9IjEiIGNlbGxwYWRkaW5nPSI1cHgiPg0KPHRib2R5Pg0KPHRyPg0KPHRkIHN0eWxlPSJwYWRkaW5nOiA1cHg7IiB3aWR0aD0iMTE2Ij4NCjxwIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij48c3Ryb25nPllvdXIgUHJpbWFyeSBSZXNpZGVuY2Ugb3IgRG9taWNpbGU8L3N0cm9uZz48L3A+DQo8L3RkPg0KPHRkIHN0eWxlPSJwYWRkaW5nOiA1cHg7IiB3aWR0aD0iOTciPg0KPHAgc3R5bGU9InRleHQtYWxpZ246IGNlbnRlcjsiPjxzdHJvbmc+UHJvZHVjdC9TZXJ2aWNlIFR5cGU8L3N0cm9uZz48L3A+DQo8L3RkPg0KPHRkIHN0eWxlPSJwYWRkaW5nOiA1cHg7IiB3aWR0aD0iMTMzIj4NCjxwIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij48c3Ryb25nPkFwcGxpY2FibGUgQ29udHJhY3RpbmcgRW50aXR5PC9zdHJvbmc+PC9wPg0KPC90ZD4NCjx0ZCBzdHlsZT0icGFkZGluZzogNXB4OyIgd2lkdGg9Ijk5Ij4NCjxwIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij48c3Ryb25nPkdvdmVybmluZyBMYXc8L3N0cm9uZz48L3A+DQo8L3RkPg0KPHRkIHN0eWxlPSJwYWRkaW5nOiA1cHg7IiB3aWR0aD0iMTMzIj4NCjxwIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij48c3Ryb25nPkV4Y2x1c2l2ZSBKdXJpc2RpY3Rpb248L3N0cm9uZz48L3A+DQo8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZCBzdHlsZT0icGFkZGluZzogNXB4OyIgd2lkdGg9IjExNiI+DQo8cD5DYW5hZGE8L3A+DQo8L3RkPg0KPHRkIHN0eWxlPSJwYWRkaW5nOiA1cHg7IiB3aWR0aD0iOTciPg0KPHA+QWxsIHByb2R1Y3RzIGFuZCBzZXJ2aWNlczwvcD4NCjwvdGQ+DQo8dGQgc3R5bGU9InBhZGRpbmc6IDVweDsiIHdpZHRoPSIxMzMiPg0KPHA+VHJpYnV0ZSBUZWNobm9sb2d5IENhbmFkYSwgVUxDLCBhIEJyaXRpc2ggQ29sdW1iaWEgdW5saW1pdGVkIGxpYWJpbGl0eSBjb21wYW55PC9wPg0KPC90ZD4NCjx0ZCBzdHlsZT0icGFkZGluZzogNXB4OyIgd2lkdGg9Ijk5Ij4NCjxwPk9udGFyaW88L3A+DQo8L3RkPg0KPHRkIHN0eWxlPSJwYWRkaW5nOiA1cHg7IiB3aWR0aD0iMTMzIj4NCjxwPlRvcm9udG8sIE9udGFyaW88L3A+DQo8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZCBzdHlsZT0icGFkZGluZzogNXB4OyIgd2lkdGg9IjExNiI+DQo8cD5Vbml0ZWQgU3RhdGVzIGFuZCB0aGUgcmVzdCBvZiB0aGUgd29ybGQgb3V0c2lkZSBDYW5hZGE8L3A+DQo8L3RkPg0KPHRkIHN0eWxlPSJwYWRkaW5nOiA1cHg7IiB3aWR0aD0iOTciPg0KPHA+QWxsIGZsb3dlciBhbmQgbWVtb3JpYWwgdHJlZSBwcm9kdWN0cyBhbmQgcmVsYXRlZCBzZXJ2aWNlczwvcD4NCjwvdGQ+DQo8dGQgc3R5bGU9InBhZGRpbmc6IDVweDsiIHdpZHRoPSIxMzMiPg0KPHA+VHJpYnV0ZSBTdG9yZSBVUywgTExDLCBhIERlbGF3YXJlIGxpbWl0ZWQgbGlhYmlsaXR5IGNvbXBhbnk8L3A+DQo8L3RkPg0KPHRkIHN0eWxlPSJwYWRkaW5nOiA1cHg7IiB3aWR0aD0iOTkiPg0KPHA+RGVsYXdhcmU8L3A+DQo8L3RkPg0KPHRkIHN0eWxlPSJwYWRkaW5nOiA1cHg7IiB3aWR0aD0iMTMzIj4NCjxwPk1hZGlzb24sIFdpc2NvbnNpbjwvcD4NCjwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkIHN0eWxlPSJwYWRkaW5nOiA1cHg7IiB3aWR0aD0iMTE2Ij4NCjxwPlVuaXRlZCBTdGF0ZXMgYW5kIHRoZSByZXN0IG9mIHRoZSB3b3JsZCBvdXRzaWRlIENhbmFkYTwvcD4NCjwvdGQ+DQo8dGQgc3R5bGU9InBhZGRpbmc6IDVweDsiIHdpZHRoPSI5NyI+DQo8cD5BbGwgb3RoZXIgcHJvZHVjdHMgYW5kIHNlcnZpY2VzPC9wPg0KPC90ZD4NCjx0ZCBzdHlsZT0icGFkZGluZzogNXB4OyIgd2lkdGg9IjEzMyI+DQo8cD5UcmlidXRlIFRlY2hub2xvZ3kgVVMsIExMQywgYSBEZWxhd2FyZSBsaW1pdGVkIGxpYWJpbGl0eSBjb21wYW55PC9wPg0KPC90ZD4NCjx0ZCBzdHlsZT0icGFkZGluZzogNXB4OyIgd2lkdGg9Ijk5Ij4NCjxwPkRlbGF3YXJlPC9wPg0KPC90ZD4NCjx0ZCBzdHlsZT0icGFkZGluZzogNXB4OyIgd2lkdGg9IjEzMyI+DQo8cD5NYWRpc29uLCBXaXNjb25zaW48L3A+DQo8L3RkPg0KPC90cj4NCjwvdGJvZHk+DQo8L3RhYmxlPg0KPHA+PHN0cm9uZz48YnIgLz4xNi48L3N0cm9uZz4gPHN0cm9uZz5Nb2RpZmljYXRpb24gb2YgdGhlIFNpdGVzPC9zdHJvbmc+LiBUcmlidXRlIFN0b3JlIHJlc2VydmVzIHRoZSByaWdodCB0byBtb2RpZnkgb3IgZGlzY29udGludWUsIHRlbXBvcmFyaWx5IG9yIHBlcm1hbmVudGx5LCBzb21lIG9yIGFsbCBvZiB0aGUgU2l0ZXMgYXQgYW55IHRpbWUgd2l0aG91dCBhbnkgbm90aWNlIG9yIGZ1cnRoZXIgb2JsaWdhdGlvbiB0byB5b3UuJm5ic3A7IFlvdSBhZ3JlZSB0aGF0IFRyaWJ1dGUgU3RvcmUgd2lsbCBub3QgYmUgbGlhYmxlIHRvIHlvdSBvciB0byBhbnkgdGhpcmQgcGFydHkgZm9yIGFueSBtb2RpZmljYXRpb24sIHN1c3BlbnNpb24sIG9yIGRpc2NvbnRpbnVhbmNlIG9mIGFueSBvZiB0aGUgU2l0ZXMuPC9wPg0KPHA+PHN0cm9uZz4xNy4mbmJzcDtHZW5lcmFsPC9zdHJvbmc+LjwvcD4NCjxvbCBzdHlsZT0ibGlzdC1zdHlsZS10eXBlOiB1cHBlci1hbHBoYTsiPg0KPGxpPg0KPHA+PHN0cm9uZz5FbnRpcmUgQWdyZWVtZW50Ljwvc3Ryb25nPiBVbmxlc3Mgb3RoZXJ3aXNlIGV4cHJlc3NseSBzdGF0ZWQgaGVyZWluIG9yIGFub3RoZXIgd3JpdHRlbiBhZ3JlZW1lbnQgYmV0d2VlbiB5b3UgYW5kIFRyaWJ1dGUgU3RvcmUsIHRoZXNlIFRlcm1zIGNvbnN0aXR1dGUgdGhlIGVudGlyZSBhbmQgZXhjbHVzaXZlIHVuZGVyc3RhbmRpbmcgYW5kIGFncmVlbWVudCBiZXR3ZWVuIHlvdSBhbmQgVHJpYnV0ZSBTdG9yZSByZWdhcmRpbmcgeW91ciB1c2Ugb2YgYW5kIGFjY2VzcyB0byB0aGUgU2l0ZXMsIGFuZCBleGNlcHQgYXMgZXhwcmVzc2x5IHBlcm1pdHRlZCBhYm92ZSBtYXkgb25seSBiZSBhbWVuZGVkIGJ5IGEgd3JpdHRlbiBhZ3JlZW1lbnQgc2lnbmVkIGJ5IGF1dGhvcml6ZWQgcmVwcmVzZW50YXRpdmVzIG9mIHRoZSBwYXJ0aWVzLjwvcD4NCjwvbGk+DQo8bGk+DQo8cD48c3Ryb25nPk5vIFdhaXZlcjwvc3Ryb25nPi4mbmJzcDsgVGhlIGZhaWx1cmUgdG8gcmVxdWlyZSBwZXJmb3JtYW5jZSBvZiBhbnkgcHJvdmlzaW9uIHNoYWxsIG5vdCBhZmZlY3Qgb3VyIHJpZ2h0IHRvIHJlcXVpcmUgcGVyZm9ybWFuY2UgYXQgYW55IHRpbWUgdGhlcmVhZnRlciwgbm9yIHNoYWxsIGEgd2FpdmVyIG9mIGFueSBicmVhY2ggb3IgZGVmYXVsdCBvZiB0aGUgVGVybXMgY29uc3RpdHV0ZSBhIHdhaXZlciBvZiBhbnkgc3Vic2VxdWVudCBicmVhY2ggb3IgZGVmYXVsdCBvciBhIHdhaXZlciBvZiB0aGUgcHJvdmlzaW9uIGl0c2VsZi48L3A+DQo8L2xpPg0KPGxpPg0KPHA+PHN0cm9uZz5QYXJhZ3JhcGggSGVhZGVyczwvc3Ryb25nPi4gVXNlIG9mIHBhcmFncmFwaCBoZWFkZXJzIGluIHRoZSBUZXJtcyBpcyBmb3IgY29udmVuaWVuY2Ugb25seSBhbmQgc2hhbGwgbm90IGhhdmUgYW55IGltcGFjdCBvbiB0aGUgaW50ZXJwcmV0YXRpb24gb2YgcGFydGljdWxhciBwcm92aXNpb25zLjwvcD4NCjwvbGk+DQo8bGk+DQo8cD48c3Ryb25nPlNldmVyYWJpbGl0eTwvc3Ryb25nPi4gSW4gdGhlIGV2ZW50IHRoYXQgYW55IHBhcnQgb2YgdGhlIFRlcm1zIGlzIGhlbGQgdG8gYmUgaW52YWxpZCBvciB1bmVuZm9yY2VhYmxlLCB0aGUgdW5lbmZvcmNlYWJsZSBwYXJ0IHNoYWxsIGJlIGdpdmVuIGVmZmVjdCB0byB0aGUgZ3JlYXRlc3QgZXh0ZW50IHBvc3NpYmxlIGFuZCB0aGUgcmVtYWluaW5nIHBhcnRzIHdpbGwgcmVtYWluIGluIGZ1bGwgZm9yY2UgYW5kIGVmZmVjdC48L3A+DQo8L2xpPg0KPC9vbD4NCjxwPjxzdHJvbmc+MTguIE5vdGljZSB0byBDYWxpZm9ybmlhIFJlc2lkZW50cy48L3N0cm9uZz4mbmJzcDsgVW5kZXIgQ2FsaWZvcm5pYSBDaXZpbCBDb2RlIFNlY3Rpb24gMTc4OS4zLCB5b3UgbWF5IGNvbnRhY3QgdGhlIENvbXBsYWludCBBc3Npc3RhbmNlIFVuaXQgb2YgdGhlIERpdmlzaW9uIG9mIENvbnN1bWVyIFNlcnZpY2VzIG9mIHRoZSBDYWxpZm9ybmlhIERlcGFydG1lbnQgb2YgQ29uc3VtZXIgQWZmYWlycyBpbiB3cml0aW5nIGF0IDE2MjUgTi4gTWFya2V0IEJsdmQuLCBTdWl0ZSBOLTExMiwgU2FjcmFtZW50bywgQ2FsaWZvcm5pYSA5NTgzNCwgb3IgYnkgdGVsZXBob25lIGF0ICg4MDApIDk1Mi01MjEwIGluIG9yZGVyIHRvIHJlc29sdmUgYSBjb21wbGFpbnQgcmVnYXJkaW5nIHRoZSBzZXJ2aWNlIG9yIHRvIHJlY2VpdmUgZnVydGhlciBpbmZvcm1hdGlvbiByZWdhcmRpbmcgdXNlIG9mIHRoZSBzZXJ2aWNlLiZuYnNwOzwvcD4NCjwvZGl2Pg0KICAgICAgICA8L2Rpdj4NCiAgICA8L2Rpdj4NCg0KPC9kaXY+IA==, Contact our Tribute Store Advisors at 1-866-834-4420, Plant a memorial tree in honor of Kellie Anne Ventricelli.
How Does Diet Affect Type 2 Diabetes,
Articles K