He"d do any thing I asked him ('cause I'm a reasonable person:-)). And he with you. WILLIAM PRESTON OBITUARY ADRIAN - William E. "Bill" Preston, age 98, of Adrian passed away on Friday, Dec. 4, 2020, at Charlotte Stephenson Manor under the care of Hospice of Lenawee. Bill was born on September 23, 1932 in Louisville, Kentucky to Fred Gentry Tucker and Alice Gertrude Tucker, the third of five Coach Bill Blair died peacefully at the Fairfax Hospital on March 9, 2022. He was. passed away May 22, 2021. Would you like to offer William Preston Woolleys loved ones a condolence message? [CDATA[ Bill Preston was our family physician for over 30 years. For some people, the best send-off is one that they would have loved to attendthemselves: a big party. We have seen him in a while but always loved him! He achieved his master's from Purdue University. Bobbi & Ronnie. OBITUARY: William Preston Leake - Williamson Source He could always make me laugh. Obituary William Preston Powers Sr., 81, of Westerly, WV, passed away on Wednesday, December 28, 2022, at The Cottages at Danny Kaye Assisted Living. His family remembers him as a man with a charming and loving personality. I have much gratitude for knowing him! Receive a notification when services are updated. Information and advice to help you cope with the death of someone important to you. IN THE CARE OF. My wife preceded him in death a year ago. William D. 'Bill' Preston | Huntington County Tab Their precious son would be named Bill Preston Cooper, age 77, of San Jose, California passed away on Monday, October 18, 2021. He was born on December 5, 1951 to the late William H. and Virginia M.. The saying "He never met a stranger" would perfectly describe how much of a caring and friendly person he was. William Preston Woolley Obituary (1933 - 2022) - Echovita Funeral Service will be held on December 21, 2018 at 11:00 am at Forest Park Lawndale Funeral Home, 6900 . From June 1942 through December 1945, Bill was stationed in Australia, New Guinea and the Philippine Islands.On Oct. 7, 1946, Bill married Mae Bohlke, and they shared 34 years together before her death on Oct. 24, 1980.Bill was a tool and die maker for 30 years, retiring in 1984 from Bohn Aluminum in Adrian. Originally Published: March 2, 2023 2:34 p.m. William "Bill" Ralph Watson, 80, of Kingman, Arizona passed away Feb. 17, 2023 due to complications resulting from a fall at his residence in the . ALL RIGHTS RESERVED. William A. Preston Obituary - The Advocate He was such a loving and loyal person, especially to his friends. William Preston Obituary - Houston, TX - Dignity Memorial Dr. William Preston died June 4, 2019, of ALS. They're not a map to follow, but simply a description of what people commonly feel. Bill was born May 15, 1935 in Holmes County to the late William Stephen Preston and Eileen Ruth Craft. He then attended the University of Lethbridge for three years and graduated from the University of Alberta in Edmonton in 1975 earning an MD. It's surprising how much a musical selection can affect mourning. It was his office that informed me of my postive pregnancy test 4 months after I gave birth to #4 (which turned out to be twins!). He was 95. Memorial contributions may be made to Hospice of Lenawee.Following the governor's executive order, all attendees are required to wear a proper face covering, with the exception of those under the age of 5 years old or those who cannot medically tolerate. He was preceded in death by his father William Preston, son David, and his stepfather Ira Bourne. Your entry has exceeded the maximum character limit. Please take care of yourself. Once you find the obituary you are looking for, you can get important information about upcoming services, share a favorite photo or memory, and . A Deseret Digital Media Company. On Saturday, December 4, 2021, Bill completed his earthly duties, passing away at the age of 53. Preston, William G. BALLSTON SPA - William G. Preston, 82, passed away peacefully Monday, January 9, 2023, with his family by his side. Do Not Sell or Share My Personal Information. William Preston Obituary - Frisco, TX Wright Funeral Service & Crematory is handling arrangements. Even though Bill has passed and is now at rest, he will always and forever be loved by his numerous family members, loved ones and countless friends that he leaves behind. It is with deep sorrow that we announce the death of William Preston Smith Jr. of Columbia, South Carolina, born in Florence, South Carolina, who passed away on January 18, 2023, at the age of 89, leaving to mourn family and friends. After a rotating internship, Dr. Preston began practicing Family Medicine in Medicine Hat, Alberta. William Dollinger Preston, II, M.D. Bill grew up in Raymond, Alberta, Canada, and graduated from high school in 1968. Their precious son would be named William Erik Preston, affectionately known as Bill. Ways to honor William Preston's life and legacy. Our kids grew up with and went to school with the Preston kids and with those of John Allen. He will be missed by all who knew him. Bill also made the introduction to Bill Cain that changed & made my life! In the 21st century, it's not just urns and gravestones anymore. Make sure relatives of William Preston Smith Jr. know they have sympathy messages here. "In Memory Of A Beautiful Life" Bill was born on November. If youre in charge of handling the affairs for a recently deceased loved one, this guide offers a helpful checklist. He was born on September 29, 1941, to the late William Preston and Edna (Moore) Ellis in Memphis, TN. He was always generous with his time and talents, and he genuinely loved the people he served. William "Bill" Preston Sutton born Sept 6, 1956, left us on November 2, 2022. A unique and lasting tribute for a loved one. Grief researchers say holding that missing funeral service, even a year or more later, can still help us heal. No services are scheduled at this time. WILLIAM PRESTON OBITUARY. Select boxes below to reduce the number of results. January 18, 2023 He was born in Kansas City, Missouri on September 7, 1931 and lived here all of his life. Stay up-to-date on event information as well as memories shared on William A. Prestons Tribute Wall. William Preston Woolley Obituary. Preston, William L. "Bill" William L. "Bill" Preston, 57, passed away unexpectedly Friday morning at Allegiance Health Care Hospital in Jackson, Michigan. He was born in Seymour, MO. It's surprising how much a musical selection can affect mourning. $( '.header-top-line a:contains(" (740) 522-1010")' ).addClass("(740) 522-1010"); The Dignity Memorial brand name is used to identify a network of licensed funeral, cremation and cemetery providers that include affiliates of Service Corporation International, 1929 Allen Parkway, Houston, Texas. And then of course, screams after that! Unless you are experienced as an estate executor, you probably should hire an attorney. For those unable to be present, a livestreaming of the service will be accessible from Bill's tribute wall on www.WagleyFuneralHome.com, where a link to view the recording will be available for 90 days.Online memories and condolences may be shared at www.WagleyFuneralHomes.com. William Duane "Bill" Preston, 77, of Warren, IN, and formerly of rural Wabash, IN, died Jan. 23, 2019, at Heritage Pointe in Warren. This past Tuesday morning of June 21, 2022, William P. Campbell Jr., loving husband and father of two children, passed away at the age of 77. He was born in Creston, IA on April 10, 1939. William Raymond Preston, age 80, died peacefully on October 6, 2015 at Ebeid Hospice with his loving family by his side. He often said, Anything worth doing is worth doing twice, and he wanted to get things finished quickly and efficiently. David Kessler's top 4 tips for dealing with holiday grief. Even though he liked to joke around, he was the type of person who would do anything for anyone. Visitation will be held on December 21, 2018 at 10:00 am at Forest Park Lawndale Funeral Home, 6900 Lawndale St, Houston, Texas. Bill was born on September 30, 1944 in Somers Point, New Charles William Preston was born on July 5, 1940, in Cecil MD, to Marcelina P. Preston, and Charles J. Preston. PGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyBmb250LXNpemU6IDI1cHg7Ij5Qcml2YWN5IE5vdGljZTwvaDE+DQo8cCBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgbWFyZ2luLWJvdHRvbTogMTVweDsiPjxlbT5MYXN0IHVwZGF0ZWQ6IFNlcHRlbWJlciAxNCwgMjAyMDwvZW0+PGJyIC8+PGJyIC8+U1JTIENvbXB1dGluZyBTb2x1dGlvbnMsIExMQyAoIlNSUywiICJ3ZSwiICJ1cywiICJvdXIiKSBpcyBjb21taXR0ZWQgdG8gcHJvdGVjdGluZyB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uLiBUaGlzIFByaXZhY3kgTm90aWNlIGRlc2NyaWJlcyB0aGUgcGVyc29uYWwgaW5mb3JtYXRpb24gdGhhdCB3ZSBjb2xsZWN0IGFib3V0IHlvdSwgaG93IHdlIHVzZSBhbmQgZGlzY2xvc2UgdGhpcyBpbmZvcm1hdGlvbiwgYW5kIHRoZSBzdGVwcyB3ZSB0YWtlIHRvIHByb3RlY3QgdGhpcyBpbmZvcm1hdGlvbi4gRm9yIHB1cnBvc2VzIG9mIHRoaXMgUHJpdmFjeSBOb3RpY2UsICJwZXJzb25hbCBpbmZvcm1hdGlvbiIgbWVhbnMgYW55IGluZm9ybWF0aW9uIHRoYXQgcmVsYXRlcyB0byB5b3UgYXMgYW4gaW5kaXZpZHVhbCBhbmQgY291bGQgcmVhc29uYWJseSBiZSB1c2VkIHRvIGlkZW50aWZ5IHlvdS4gVGhpcyBQcml2YWN5IE5vdGljZSBhcHBsaWVzIHRvIG91ciBjb2xsZWN0aW9uIGFuZCB1c2Ugb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gdGhyb3VnaCB0aGlzIHdlYnNpdGUgYW5kIGFueSByZWxhdGVkIHdlYnNpdGVzLCBhcHBsaWNhdGlvbnMsIHRvb2xzLCBvciBwbGF0Zm9ybXMgKHRoZSAiU2VydmljZXMiKSwgYXMgd2VsbCBhcyB0aHJvdWdoIGFueSBvdGhlciBtZWFucyB3aGVyZSBhIGxpbmsgb3IgcmVmZXJlbmNlIHRvIHRoaXMgUHJpdmFjeSBOb3RpY2UgaXMgcHJvdmlkZWQgYXQgdGhlIHRpbWUgb2YgY29sbGVjdGlvbi48L3A+DQo8aDIgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IGZvbnQtc2l6ZTogMjBweDsgcGFkZGluZy10b3A6IDQ1cHg7Ij5PdXIgU2VydmljZXM8L2gyPg0KPHAgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IG1hcmdpbi1ib3R0b206IDE1cHg7Ij48YnIgLz5TUlMgaXMgYSBwcm92aWRlciBvZiBzb2Z0d2FyZSBtYW5hZ2VtZW50IHNlcnZpY2VzLCBpbmNsdWRpbmcgd2Vic2l0ZSwgcGF5bWVudCBwcm9jZXNzaW5nLCBpbnN1cmFuY2UgYW5kIGVjb21tZXJjZSBzZXJ2aWNlcywgdG8gZnVuZXJhbCwgY2VtZXRlcnkgYW5kIGNyZW1hdG9yeSBjb3Jwb3JhdGlvbnMgKG91ciAiQ2xpZW50cyIpLiBJbiBjb25uZWN0aW9uIHdpdGggdGhlIHByb3Zpc2lvbiBvZiB0aGVzZSBzZXJ2aWNlcywgU1JTIGNvbGxlY3RzIGFuZCBzdG9yZXMgcGVyc29uYWwgaW5mb3JtYXRpb24gcmVnYXJkaW5nIGluZGl2aWR1YWxzIHdobyB2aXNpdCBhbmQgdXRpbGl6ZSBjZXJ0YWluIGZ1bmN0aW9ucyBvciBmZWF0dXJlcyBvZiBvdXIgQ2xpZW50cycgd2Vic2l0ZXMgKCJFbmQgVXNlcnMiKS4gVGhpcyBQcml2YWN5IE5vdGljZSBhcHBsaWVzIHRvIFNSUydzIGNvbGxlY3Rpb24gYW5kIHVzZSBvZiBDbGllbnQgYW5kIEVuZCBVc2VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGJ1dCBub3QgdG8gb3VyIENsaWVudHMgdXNlIG9mIHN1Y2ggcGVyc29uYWwgaW5mb3JtYXRpb24uVGhpcyBQcml2YWN5IE5vdGljZSBhbHNvIGFwcGxpZXMgdG8gb3RoZXIgcGVyc29uYWwgaW5mb3JtYXRpb24gY29sbGVjdGVkIGRpcmVjdGx5IGJ5IFNSUywgaW5jbHVkaW5nIHRocm91Z2ggdXNlIG9mIG91ciB3ZWJzaXRlIG9yIG90aGVyd2lzZSBpbiBjb25uZWN0aW9uIHdpdGggdGhlIFNlcnZpY2VzLjwvcD4NCjxoMiBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgZm9udC1zaXplOiAyMHB4OyBwYWRkaW5nLXRvcDogNDVweDsiPlBlcnNvbmFsIEluZm9ybWF0aW9uIFdlIENvbGxlY3Q8L2gyPg0KPHAgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IG1hcmdpbi1ib3R0b206IDE1cHg7Ij48YnIgLz5XaGVuIHlvdSBhY2Nlc3Mgb3IgdXNlIHRoZSBTZXJ2aWNlcyBvciBvdGhlcndpc2UgaW50ZXJhY3Qgd2l0aCB1cywgd2hldGhlciBhcyBhIENsaWVudCwgRW5kIFVzZXIsIG9yIG90aGVyIGluZGl2aWR1YWwsIHdlIG1heSBjb2xsZWN0IGNlcnRhaW4gY2F0ZWdvcmllcyBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbiBhYm91dCB5b3UgZnJvbSBhIHZhcmlldHkgb2Ygc291cmNlcy48YnIgLz48YnIgLz5DYXRlZ29yaWVzIG9mIHBlcnNvbmFsIGluZm9ybWF0aW9uIHRoYXQgd2UgbWF5IGNvbGxlY3QgZnJvbSB5b3UgZGlyZWN0bHkgaW5jbHVkZTo8L3A+DQo8dWwgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IHBhZGRpbmctbGVmdDogMzBweDsiPg0KPGxpIHR5cGU9ImNpcmNsZSI+Q29udGFjdCBpbmZvcm1hdGlvbiAoZm9yIGV4YW1wbGUsIG5hbWUsIHBob25lIG51bWJlciwgbWFpbGluZyBhZGRyZXNzLCBlbWFpbCBhZGRyZXNzKTwvbGk+DQo8bGkgc3R5bGU9Im1hcmdpbi10b3A6IDE1cHg7IiB0eXBlPSJjaXJjbGUiPlBheW1lbnQtcmVsYXRlZCBkZXRhaWxzIChmb3IgZXhhbXBsZSwgYmFua2luZyBpbmZvcm1hdGlvbiwgYmlsbGluZyBhZGRyZXNzIGFuZCBvdGhlciBjcmVkaXQgY2FyZCBkZXRhaWxzKTwvbGk+DQo8bGkgc3R5bGU9Im1hcmdpbi10b3A6IDE1cHg7IiB0eXBlPSJjaXJjbGUiPkNvbW11bmljYXRpb25zIChmb3IgZXhhbXBsZSwgc3VibWl0dGVkIHF1ZXN0aW9ucyBvciBvdGhlciBwb3N0cyBhbmQgbWFya2V0aW5nIHByZWZlcmVuY2VzKTwvbGk+DQo8bGkgc3R5bGU9Im1hcmdpbi10b3A6IDE1cHg7IiB0eXBlPSJjaXJjbGUiPlJlY3J1aXRtZW50IGRhdGEgKGZvciBleGFtcGxlLCByZXN1bWVzIGFuZCBvdGhlciBkZXRhaWxzIHJlZ2FyZGluZyBhbiBhcHBsaWNhbnQncyBxdWFsaWZpY2F0aW9ucyk8L2xpPg0KPC91bD4NCjxwIHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyBtYXJnaW46IDVweCAwIDE1cHggMDsiPjxiciAvPkNhdGVnb3JpZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gdGhhdCB3ZSBtYXkgY29sbGVjdCBhdXRvbWF0aWNhbGx5IHdoZW4geW91IHVzZSB0aGUgU2VydmljZXMgaW5jbHVkZTo8L3A+DQo8dWwgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IHBhZGRpbmctbGVmdDogMzBweDsiPg0KPGxpIHR5cGU9ImNpcmNsZSI+VGVjaG5pY2FsIGluZm9ybWF0aW9uIChmb3IgZXhhbXBsZSwgYnJvd3NlciB0eXBlLCBJUCBhZGRyZXNzLCBjb29raWVzLCBhbmQgb3BlcmF0aW5nIHN5c3RlbSk8L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iY2lyY2xlIj5Vc2FnZSBpbmZvcm1hdGlvbiAoZm9yIGV4YW1wbGUsIHBhZ2VzIHZpc2l0ZWQsIHNlYXJjaCB0ZXJtcyBlbnRlcmVkLCBhbmQgZnJlcXVlbmN5IG9mIHZpc2l0cyk8L2xpPg0KPC91bD4NCjxwIHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyBtYXJnaW46IDVweCAwIDE1cHggMDsiPjxiciAvPkNhdGVnb3JpZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gdGhhdCB3ZSBtYXkgY29sbGVjdCBmcm9tIG90aGVyIHNvdXJjZXMsIGluY2x1ZGluZyBmcm9tIG91ciBDbGllbnRzIGluIGNvbm5lY3Rpb24gd2l0aCB0aGVpciB1c2Ugb2YgdGhlIFNlcnZpY2VzLCBpbmNsdWRlOjwvcD4NCjx1bCBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgcGFkZGluZy1sZWZ0OiAzMHB4OyI+DQo8bGkgdHlwZT0iY2lyY2xlIj5FbmQgVXNlciBjb250YWN0IGluZm9ybWF0aW9uIChmb3IgZXhhbXBsZSwgbmFtZSwgcGhvbmUgbnVtYmVyLCBtYWlsaW5nIGFkZHJlc3MsIGVtYWlsIGFkZHJlc3MpPC9saT4NCjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogMTVweDsiIHR5cGU9ImNpcmNsZSI+RW5kIFVzZXIgYWNjb3VudCBpbmZvcm1hdGlvbiAoZm9yIGV4YW1wbGUsIHVzZXJuYW1lIGFuZCBwYXNzd29yZCBhbmQgdHJhbnNhY3Rpb24gaGlzdG9yeSk8L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iY2lyY2xlIj5FbmQgVXNlciBwYXltZW50LXJlbGF0ZWQgZGV0YWlscyAoZm9yIGV4YW1wbGUsIGJpbGxpbmcgYWRkcmVzcyBhbmQgb3RoZXIgY3JlZGl0IGNhcmQgZGV0YWlscyk8L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iY2lyY2xlIj5FbmQgVXNlciBmdW5lcmFsIGNvbnRyaWJ1dGlvbnMsIGluY2x1ZGluZyB0cmlidXRlIHZpZGVvIGRhdGEsIGRhdGEgZW50ZXJlZCBpbiBmdW5lcmFsIHJlZ2lzdGVyIGJvb2tzLCBvYml0dWFyaWVzIGFuZCBwb3N0cyBhbmQgY29tbWVudHM8L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iY2lyY2xlIj5FbmQgVXNlciBmdW5lcmFsIGFkbWluaXN0cmF0aW9uIGRhdGEsIGluY2x1ZGluZyBwZXJzb25hbCBkZXRhaWxzIHJlZ2FyZGluZyB0aGUgZGVjZWFzZWQgc3VjaCBhcyBTb2NpYWwgU2VjdXJpdHkgTnVtYmVycyBhbmQgU29jaWFsIEluc3VyYW5jZSBOdW1iZXJzLCBsaWZlIGluc3VyYW5jZSBjbGFpbSBmb3JtcyBhbmQgYWZmaWRhdml0cyB0byBlbnN1cmUgZGlzcGVyc2FsIG9mIGZ1bmRzIHRvIGNvdmVyIGZ1bmVyYWwgY29zdHMgYW5kIG90aGVyIG1lZGljYWwgY29zdHMgb3IgbGl2aW5nIGV4cGVuc2VzLCBhbmQgZGF0YSByZXF1aXJlZCB0byBmaWxlIGRlYXRoIGNlcnRpZmljYXRlcyBhbmQgb2J0YWluIGJ1cmlhbCBwZXJtaXRzPC9saT4NCjwvdWw+DQo8aDIgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IGZvbnQtc2l6ZTogMjBweDsgcGFkZGluZy10b3A6IDQ1cHg7Ij5Ib3cgV2UgVXNlIFlvdXIgUGVyc29uYWwgSW5mb3JtYXRpb248L2gyPg0KPHAgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IG1hcmdpbi1ib3R0b206IDE1cHg7Ij48YnIgLz5XZSBtYXkgdXNlIHRoZSBwZXJzb25hbCBpbmZvcm1hdGlvbiB3ZSBjb2xsZWN0IGZvciB0aGUgZm9sbG93aW5nIHB1cnBvc2VzOjwvcD4NCjx1bCBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgcGFkZGluZy1sZWZ0OiAzMHB4OyI+DQo8bGkgdHlwZT0iY2lyY2xlIj48c3Ryb25nPlByb3ZpZGUgYW5kIGltcHJvdmUgdGhlIFNlcnZpY2VzLiA8L3N0cm9uZz5XZSBtYXkgdXNlIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gdG8gcHJvdmlkZSBhbmQgaW1wcm92ZSB0aGUgU2VydmljZXMsIGluY2x1ZGluZyB0byBmdWxmaWxsIHlvdXIgb3JkZXJzIGFuZCByZXF1ZXN0cyBhbmQgdG8gcG9zdCB5b3VyIGNvbW1lbnRzIGFuZCBvdGhlciBmdW5lcmFsIGNvbnRyaWJ1dGlvbnMuIFdlIG1heSBhbHNvIHVzZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGZvciB0aGUgYWRtaW5pc3RyYXRpb24gb2Ygb3VyIGJ1c2luZXNzLCBmb3IgYnVzaW5lc3MgZGV2ZWxvcG1lbnQgcHVycG9zZXMsIGFuZCB0byBmdWxmaWxsIG91ciBjb250cmFjdHVhbCBvYmxpZ2F0aW9ucy48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iY2lyY2xlIj48c3Ryb25nPlJpc2sgbWl0aWdhdGlvbiBhbmQgc2VjdXJpdHkuIDwvc3Ryb25nPldlIG1heSB1c2UgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBmb3IgcmlzayBtaXRpZ2F0aW9uIGFuZCBzZWN1cml0eSBwdXJwb3NlcywgaW5jbHVkaW5nIHRvIG1haW50YWluIHRoZSBwcml2YWN5IGFuZCBzZWN1cml0eSBvZiBvdXIgZGF0YSwgdG8gY29uZHVjdCBpbnRlcm5hbCBhdWRpdHMgb3IgaW52ZXN0aWdhdGlvbnMsIGZvciBkYXRhIHNlY3VyaXR5IHRlc3RpbmcgYW5kIGJ1c2luZXNzIGNvbnRpbnVpdHkgcGxhbm5pbmcgcHVycG9zZXMsIGFuZCB0byBlbnN1cmUgdGhlIHNhZmV0eSBhbmQgc2VjdXJpdHkgb2Ygb3VyIENsaWVudHMsIHN0YWZmIGFuZCBhc3NldHMuPC9saT4NCjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogMTVweDsiIHR5cGU9ImNpcmNsZSI+PHN0cm9uZz5Db21tdW5pY2F0aW9uIGFuZCBtYXJrZXRpbmcuIDwvc3Ryb25nPiBXaXRoIHJlc3BlY3QgdG8gQ2xpZW50cyBhbmQgb3RoZXIgaW5kaXZpZHVhbHMgdGhhdCBzdWJtaXQgaW5mb3JtYXRpb24gZGlyZWN0bHkgdG8gU1JTLCB3ZSBtYXkgdXNlIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gdG8gY29tbXVuaWNhdGUgd2l0aCB5b3UgYWJvdXQgdGhlIFNlcnZpY2VzLCByZXNwb25kIHRvIHlvdXIgcXVlc3Rpb25zLCBvciBvZmZlciB5b3UgYWRkaXRpb25hbCBwcm9kdWN0cyBvciBzZXJ2aWNlcy48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iY2lyY2xlIj48c3Ryb25nPkNvbXBseSB3aXRoIHRoZSBsYXcgYW5kIGV4ZXJjaXNlIG91ciByaWdodHMuIDwvc3Ryb25nPldlIG1heSB1c2UgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBhcyByZWFzb25hYmx5IG5lY2Vzc2FyeSB0byBhc3Nlc3MgYW5kIGVuc3VyZSBjb21wbGlhbmNlIHdpdGggYXBwbGljYWJsZSBsYXdzLCBsZWdhbCByZXF1aXJlbWVudHMsIGFuZCBjb21wYW55IHBvbGljaWVzOyB0byBwcm90ZWN0IG91ciBhc3NldHMgb3IgdG8gaW52ZXN0aWdhdGUgb3IgZGVmZW5kIGFnYWluc3QgYW55IGNsYWltcyBvZiBpbGxlZ2FsaXR5IG9yIHdyb25nZG9pbmcgKGluY2x1ZGluZyB0byBvYnRhaW4gbGVnYWwgYWR2aWNlIG9yIHRvIGVzdGFibGlzaCwgZXhlcmNpc2Ugb3IgZGVmZW5kIGxlZ2FsIHJpZ2h0cyk7IGFuZCBpbiByZXNwb25zZSB0byBhIGNvdXJ0IG9yZGVyIG9yIGp1ZGljaWFsIG9yIG90aGVyIGdvdmVybm1lbnQgc3VicG9lbmEgb3Igd2FycmFudC48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iY2lyY2xlIj48c3Ryb25nPkNvcnBvcmF0ZSB0cmFuc2FjdGlvbi4gPC9zdHJvbmc+V2UgbWF5IHVzZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGluIHRoZSBldmVudCB3ZSB1bmRlcnRha2Ugb3IgYXJlIGludm9sdmVkIGluIG9yIGNvbnRlbXBsYXRpbmcgYW55IG1lcmdlciwgYWNxdWlzaXRpb24sIHJlb3JnYW5pemF0aW9uLCBzYWxlIG9mIGFzc2V0cywgYmFua3J1cHRjeSwgb3IgaW5zb2x2ZW5jeSBldmVudC48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iY2lyY2xlIj48c3Ryb25nPlJlY3J1aXRtZW50IGFuZCBoaXJpbmcuIDwvc3Ryb25nPldlIG1heSB1c2UgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiB0byBldmFsdWF0ZSB5b3VyIGNhbmRpZGFjeSB3aGVuIHlvdSBhcHBseSBmb3IgYSBqb2Igd2l0aCB1cy48L2xpPg0KPC91bD4NCjxwIHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyBtYXJnaW4tYm90dG9tOiAxNXB4OyI+PGJyIC8+V2UgbWF5IGFsc28gYWdncmVnYXRlLCBhbm9ueW1pemUsIG9yIG90aGVyd2lzZSBkZS1pZGVudGlmeSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGFuZCB1c2UgaXQgZm9yIGFueSBwdXJwb3NlIHBlcm1pdHRlZCBieSBhcHBsaWNhYmxlIGxhdy48L3A+DQo8aDIgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IGZvbnQtc2l6ZTogMjBweDsgcGFkZGluZy10b3A6IDQ1cHg7Ij5Vc2Ugb2YgQ29va2llczwvaDI+DQo8cCBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgbWFyZ2luLWJvdHRvbTogMTVweDsiPjxiciAvPldoZW4geW91IHVzZSB0aGUgU2VydmljZXMsIHdlIG1heSBzZW5kIG9uZSBvciBtb3JlIGNvb2tpZXMgKHdoaWNoIGFyZSBzbWFsbCB0ZXh0IGZpbGVzIGNvbnRhaW5pbmcgYSBzdHJpbmcgb2YgYWxwaGFudW1lcmljIGNoYXJhY3RlcnMpIHRvIHlvdXIgY29tcHV0ZXIgb3IgbW9iaWxlIGRldmljZSwgdG8gaGVscCBhbmFseXplIG91ciB3ZWIgcGFnZSBmbG93LCBjdXN0b21pemUgb3VyIGNvbnRlbnQsIG1lYXN1cmUgcHJvbW90aW9uYWwgZWZmZWN0aXZlbmVzcywgYW5kIHByb21vdGUgdHJ1c3QgYW5kIHNhZmV0eS4gWW91IGFyZSBhbHdheXMgZnJlZSB0byBkZWNsaW5lIG91ciBjb29raWVzIGlmIHlvdXIgYnJvd3NlciBwZXJtaXRzLCBhbHRob3VnaCBkb2luZyBzbyBtYXkgaW50ZXJmZXJlIHdpdGggeW91ciBhYmlsaXR5IHRvIHVzZSB0aGUgU2VydmljZXMgb3IgY2VydGFpbiBmZWF0dXJlcyBvZiB0aGUgU2VydmljZXMuIFdlIG1heSBhbHNvIHVzZSBHb29nbGUgQW5hbHl0aWNzIG9yIGEgc2ltaWxhciBzZXJ2aWNlIHRoYXQgdXNlcyBjb29raWVzIHRvIGhlbHAgdXMgYW5hbHl6ZSBob3cgdXNlcnMgdXNlIHRoZSBTZXJ2aWNlcy48YnIgLz48YnIgLz5XZSBhbHNvIGFsbG93IGNlcnRhaW4gdGhpcmQgcGFydGllcyBzdWNoIGFzIGFkdmVydGlzaW5nIG5ldHdvcmtzLCBhbmFseXRpY3MgcHJvdmlkZXJzLCBhbmQgd2lkZ2V0IHByb3ZpZGVycyB0byBwbGFjZSBjb29raWVzIGluIG9yZGVyIHRvIGNvbGxlY3QgaW5mb3JtYXRpb24gYWJvdXQgeW91ciBvbmxpbmUgYWN0aXZpdGllcyBvdmVyIHRpbWUgYW5kIGFjcm9zcyBkaWZmZXJlbnQgd2Vic2l0ZXMgd2hlbiB5b3UgYWNjZXNzIG9yIHVzZSB0aGUgU2VydmljZXMuIEN1cnJlbnRseSwgdmFyaW91cyBicm93c2VycyBvZmZlciBhICJEbyBOb3QgVHJhY2siIG9wdGlvbiwgYnV0IHRoZXJlIGlzIG5vIHN0YW5kYXJkIGZvciBob3cgIkRvIE5vdCBUcmFjayIgc2hvdWxkIHdvcmsgb24gY29tbWVyY2lhbCB3ZWJzaXRlcy4gRHVlIHRvIHRoZSBsYWNrIG9mIHN1Y2ggc3RhbmRhcmRzLCB0aGlzIHdlYnNpdGUgZG9lcyBub3QgcmVzcG9uZCB0byAiRG8gTm90IFRyYWNrIiBjb25zdW1lciBicm93c2VyIHNldHRpbmdzLjwvcD4NCjxoMiBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgZm9udC1zaXplOiAyMHB4OyBwYWRkaW5nLXRvcDogNDVweDsiPkhvdyBhbmQgV2hlbiBXZSBEaXNjbG9zZSBZb3VyIFBlcnNvbmFsIEluZm9ybWF0aW9uPC9oMj4NCjxwIHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyBtYXJnaW4tYm90dG9tOiAxNXB4OyI+PGJyIC8+V2UgbWF5IGRpc2Nsb3NlIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gdG8gdGhlIGZvbGxvd2luZyBjYXRlZ29yaWVzIG9mIHJlY2lwaWVudHMsIHRvIGJlIHVzZWQgb25seSBmb3IgbGVnaXRpbWF0ZSBwdXJwb3NlcyBpbiBrZWVwaW5nIHdpdGggdGhpcyBQcml2YWN5IE5vdGljZTo8L3A+DQo8dWwgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IHBhZGRpbmctbGVmdDogMzBweDsiPg0KPGxpIHR5cGU9ImNpcmNsZSI+PHN0cm9uZz5Hcm91cCBjb21wYW5pZXMgYW5kIGFmZmlsaWF0ZXM8L3N0cm9uZz4uIFdlIG1heSBkaXNjbG9zZSwgc2hhcmUsIG9yIHRyYW5zZmVyIHlvdXIgaW5mb3JtYXRpb24gdG8gYW55IGJ1c2luZXNzIGVudGl0eSB0aGF0IGlzIHBhcnQgb2Ygb3VyIGNvcnBvcmF0ZSBmYW1pbHkuPC9saT4NCjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogMTVweDsiIHR5cGU9ImNpcmNsZSI+PHN0cm9uZz5DbGllbnRzPC9zdHJvbmc+LiBJZiB5b3Ugc3VibWl0IGRhdGEgdG8gdXMgdGhyb3VnaCB5b3VyIHVzZSBvZiBvbmUgb2Ygb3VyIENsaWVudCdzIHNlcnZpY2VzLCB3ZSBtYXkgc2hhcmUgeW91ciBpbmZvcm1hdGlvbiB3aXRoIHRoYXQgcmVzcGVjdGl2ZSBDbGllbnQgaW4gY29ubmVjdGlvbiB3aXRoIHRoYXQgQ2xpZW50J3MgcHJvdmlzaW9uIG9mIHNlcnZpY2VzIHRvIHlvdS48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iY2lyY2xlIj48c3Ryb25nPlNlcnZpY2UgcHJvdmlkZXJzIGFuZCBwcm9mZXNzaW9uYWwgYWR2aXNvcnM8L3N0cm9uZz4uIFdlIG1heSBkaXNjbG9zZSB5b3VyIGluZm9ybWF0aW9uIHRvIHRoaXJkIHBhcnR5IHZlbmRvcnMgd2hvIHByb3ZpZGUgc2VydmljZXMgaW4gc3VwcG9ydCBvZiBvdXIgYnVzaW5lc3Mgb3BlcmF0aW9ucywgc3VjaCBhcyB3ZWJzaXRlIGRldmVsb3BtZW50IGFuZCBob3N0aW5nLCBwYXltZW50IHByb2Nlc3NpbmcsIG1hcmtldGluZyBtYW5hZ2VtZW50LCByZWNydWl0bWVudCBhbmQgaGlyaW5nLCBzZXJ2aWNlIG9wdGltaXphdGlvbiwgdmVuZG9ycyB0aGF0IGZ1bGZpbGwgb3JkZXJzIGZvciBmdW5lcmFsLXJlbGF0ZWQgaXRlbXMgc3VjaCBhcyBmbG93ZXJzLCBhbmQgZGF0YSBhbmFseXRpY3MuIFdlIG1heSBhbHNvIGRpc2Nsb3NlIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gdG8gb3VyIHByb2Zlc3Npb25hbCBhZHZpc29ycyBzdWNoIGFzIG91ciBhdHRvcm5leXMsIGFjY291bnRhbnRzLCBhbmQgaW5zdXJhbmNlIHByb3ZpZGVycy48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iY2lyY2xlIj48c3Ryb25nPlBhcnRpZXMgaW52b2x2ZWQgaW4gYSBjb3Jwb3JhdGUgdHJhbnNhY3Rpb248L3N0cm9uZz4uIFdlIG1heSBkaXNjbG9zZSB5b3VyIGluZm9ybWF0aW9uIHRvIHJlbGV2YW50IHRoaXJkIHBhcnRpZXMgaW4gdGhlIGV2ZW50IG9mIGEgZGl2ZXN0aXR1cmUsIG1lcmdlciwgY29uc29saWRhdGlvbiwgb3IgYXNzZXQgc2FsZSwgb3IgaW4gdGhlIHVubGlrZWx5IGV2ZW50IG9mIGEgYmFua3J1cHRjeS48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iY2lyY2xlIj48c3Ryb25nPkxhdyBlbmZvcmNlbWVudCBvciBvdGhlciBnb3Zlcm5tZW50YWwgZW50aXRpZXM8L3N0cm9uZz4uIFdlIG1heSBkaXNjbG9zZSB5b3VyIGluZm9ybWF0aW9uIGlmIHJlcXVpcmVkIHRvIGRvIHNvIGJ5IGxhdyBvciBpZiB3ZSBiZWxpZXZlIGluIGdvb2QgZmFpdGggdGhhdCBzdWNoIGFjdGlvbiBpcyBuZWNlc3NhcnkgdG8gY29tcGx5IHdpdGggdGhlIGxhdywgcHJldmVudCB1bmxhd2Z1bCBhY3Rpdml0eSwgZGVmZW5kIG91ciByaWdodHMsIG9yIG1haW50YWluIHNlY3VyaXR5LjwvbGk+DQo8bGkgc3R5bGU9Im1hcmdpbi10b3A6IDE1cHg7IiB0eXBlPSJjaXJjbGUiPjxzdHJvbmc+T3RoZXIgdGhpcmQgcGFydGllcyB3aXRoIHlvdXIgY29uc2VudDwvc3Ryb25nPi4gV2UgbWF5IGRpc2Nsb3NlIHlvdXIgaW5mb3JtYXRpb24gdG8gYW55IG90aGVyIHRoaXJkIHBhcnR5IHdoZXJlIHlvdSBoYXZlIHByb3ZpZGVkIGNvbnNlbnQgdG8gc3VjaCBkaXNjbG9zdXJlLjwvbGk+DQo8L3VsPg0KPGgyIHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyBmb250LXNpemU6IDIwcHg7IHBhZGRpbmctdG9wOiA0NXB4OyI+U2VjdXJpdHksIFJldGVudGlvbiAmYW1wOyBUcmFuc2ZlciBvZiBQZXJzb25hbCBJbmZvcm1hdGlvbjwvaDI+DQo8cCBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgbWFyZ2luLWJvdHRvbTogMTVweDsiPjxiciAvPldlIGhhdmUgaW1wbGVtZW50ZWQgYW5kIG1haW50YWluIGNvbW1lcmNpYWxseSByZWFzb25hYmxlIGFuZCBhcHByb3ByaWF0ZSB0ZWNobmljYWwgYW5kIG9yZ2FuaXphdGlvbmFsIG1lYXN1cmVzIGRlc2lnbmVkIHRvIHByb3RlY3QgdGhlIGNvbmZpZGVudGlhbGl0eSwgaW50ZWdyaXR5LCBhbmQgc2VjdXJpdHkgb2YgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbi4gUGxlYXNlIG5vdGUsIGhvd2V2ZXIsIHRoYXQgbm8gc2VjdXJpdHkgbWVhc3VyZXMgYXJlIHBlcmZlY3Qgb3IgaW1wZW5ldHJhYmxlLiBXZSB0aGVyZWZvcmUgY2Fubm90IGd1YXJhbnR5IGFuZCBkbyBub3Qgd2FycmFudCB0aGUgYWJzb2x1dGUgc2VjdXJpdHkgb2YgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbi4gV2UgcmV0YWluIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gZm9yIG5vIGxvbmdlciB0aGFuIHJlYXNvbmFibHkgbmVjZXNzYXJ5IHRvIGZ1bGZpbGwgdGhlIHB1cnBvc2VzIGZvciB3aGljaCB3ZSBjb2xsZWN0ZWQgaXQgb3IgdG8gY29tcGx5IHdpdGggdGhlIGxhdywgcHJldmVudCBmcmF1ZCwgZmFjaWxpdGF0ZSBhbiBpbnZlc3RpZ2F0aW9uLCBkZWZlbmQgYWdhaW5zdCBsZWdhbCBjbGFpbXMsIG9yIGV4ZXJjaXNlIG91ciBsZWdhbCByaWdodHMuPGJyIC8+PGJyIC8+RGVwZW5kaW5nIG9uIHlvdXIgbG9jYXRpb24sIHRoZSBwZXJzb25hbCBpbmZvcm1hdGlvbiB3ZSBjb2xsZWN0IGFib3V0IHlvdSBtYXkgYmUgdHJhbnNmZXJyZWQgdG8gYSBqdXJpc2RpY3Rpb24gdGhhdCBkb2VzIG5vdCBwcm92aWRlIHRoZSBzYW1lIGxldmVsIG9mIHByb3RlY3Rpb24gb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gYXMgdGhlIGp1cmlzZGljdGlvbiBpbiB3aGljaCB5b3UgcmVzaWRlLiBBbW9uZyBvdGhlciBwbGFjZXMsIHBlcnNvbmFsIGluZm9ybWF0aW9uIG1heSBiZSB0cmFuc2ZlcnJlZCB0bywgYW5kIHN0b3JlZCBpbiwgQXVzdHJhbGlhLCBDYW5hZGEgYW5kIHRoZSBVbml0ZWQgU3RhdGVzLjwvcD4NCjxoMiBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgZm9udC1zaXplOiAyMHB4OyBwYWRkaW5nLXRvcDogNDVweDsiPllvdXIgQ2hvaWNlcyAmYW1wOyBSaWdodHM8L2gyPg0KPHAgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IG1hcmdpbi1ib3R0b206IDE1cHg7Ij48YnIgLz5Zb3UgbWF5IGRlY2xpbmUgdG8gc2hhcmUgY2VydGFpbiBpbmZvcm1hdGlvbiB3aXRoIHVzLCBpbiB3aGljaCBjYXNlIHdlIG1heSBub3QgYmUgYWJsZSB0byBwcm92aWRlIHRvIHlvdSBzb21lIG9mIHRoZSBmZWF0dXJlcyBhbmQgZnVuY3Rpb25hbGl0eSBvZiB0aGUgU2VydmljZXMuIElmIHlvdSBoYXZlIHJlZ2lzdGVyZWQgZm9yIGFuIGFjY291bnQgaW4gY29ubmVjdGlvbiB3aXRoIHRoZSBTZXJ2aWNlcywgeW91IG1heSB1cGRhdGUsIGNvcnJlY3QsIG9yIGRlbGV0ZSB5b3VyIHByb2ZpbGUgaW5mb3JtYXRpb24gYW5kIHByZWZlcmVuY2VzIGF0IGFueSB0aW1lIGJ5IGFjY2Vzc2luZyB5b3VyIGFjY291bnQgcHJlZmVyZW5jZXMgcGFnZSB0aHJvdWdoIHRoZSBTZXJ2aWNlcy4gSWYgeW91IGRvIG5vdCB3aXNoIHRvIHJlY2VpdmUgbWFya2V0aW5nIGNvbW11bmljYXRpb25zIGZyb20gdXMsIHlvdSBjYW4gb3B0LW91dCBieSB1c2luZyB0aGUgdW5zdWJzY3JpYmUgcHJvY2VzcyBwcm92aWRlZCBvciBkZXNjcmliZWQgaW4gYW55IHN1Y2ggY29tbXVuaWNhdGlvbiwgYnV0IHlvdSBtYXkgc3RpbGwgcmVjZWl2ZSB0cmFuc2FjdGlvbmFsIG9yIGFkbWluaXN0cmF0aXZlIGNvbW11bmljYXRpb25zIGZyb20gdXMuIEFsdGhvdWdoIHlvdXIgY2hhbmdlcyBhcmUgcmVmbGVjdGVkIHByb21wdGx5IGluIGFjdGl2ZSB1c2VyIGRhdGFiYXNlcywgd2UgbWF5IHJldGFpbiBhbGwgaW5mb3JtYXRpb24geW91IHN1Ym1pdCBmb3IgYSB2YXJpZXR5IG9mIHB1cnBvc2VzLCBpbmNsdWRpbmcgYmFja3VwcyBhbmQgYXJjaGl2aW5nLCBwcmV2ZW50aW9uIG9mIGZyYXVkIGFuZCBhYnVzZSwgYW5kIGFuYWx5dGljcy48YnIgLz48YnIgLz5EZXBlbmRpbmcgb24geW91ciBsb2NhdGlvbiBhbmQgc3ViamVjdCB0byBsb2NhbCBsYXcsIHlvdSBtYXkgaGF2ZSBjZXJ0YWluIHJpZ2h0cyB3aXRoIHJlc3BlY3QgdG8geW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbi4gVGhlc2UgbWF5IGluY2x1ZGUgdGhlIHJpZ2h0IHRvIGFjY2VzcyBhbmQgY29ycmVjdCB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uLjxiciAvPjxiciAvPlRvIG1ha2UgYSByZXF1ZXN0IHJlbGF0ZWQgdG8geW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBvciBvdGhlcndpc2UgZXhlcmNpc2UgYW55IHJpZ2h0cyB5b3UgbWF5IGhhdmUgdW5kZXIgYXBwbGljYWJsZSBsYXcsIHlvdSBtYXkgY29udGFjdCB1cyB1c2luZyB0aGUgY29udGFjdCBpbmZvcm1hdGlvbiBwcm92aWRlZCBiZWxvdy4gSW4gb3JkZXIgdG8gZnVsZmlsbCB5b3VyIHJlcXVlc3QsIHdlIG1heSByZXF1aXJlIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gZnJvbSB5b3UuIFdlIHdpbGwgcmVzcG9uZCB0byByZXF1ZXN0cywgYXMgYXBwbGljYWJsZSwgd2l0aGluIHRoZSByZWxldmFudCB0aW1lIHBlcmlvZHMgZXN0YWJsaXNoZWQgYnkgYXBwbGljYWJsZSBsYXcuIFdlIGFyZSBjb21taXR0ZWQgdG8gZmluZGluZyBhIGZhaXIgYW5kIHJlYXNvbmFibGUgcmVzb2x1dGlvbiB0byBhbnkgcmVxdWVzdCwgY29uY2Vybiwgb3IgY29tcGxhaW50IHlvdSBicmluZyB0byBvdXIgYXR0ZW50aW9uLiBIb3dldmVyLCBpZiB5b3UgYXJlIHVuc2F0aXNmaWVkIHdpdGggb3VyIHJlc3BvbnNlIHRvIHlvdXIgcmVxdWVzdCwgeW91IG1heSBoYXZlIHRoZSByaWdodCB0byBsb2RnZSBhIGNvbXBsYWludCB3aXRoIGFwcGxpY2FibGUgZ292ZXJubWVudGFsIGF1dGhvcml0aWVzLCBzdWJqZWN0IHRvIGxvY2FsIGxhdy48L3A+DQo8aDIgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IGZvbnQtc2l6ZTogMjBweDsgcGFkZGluZy10b3A6IDQ1cHg7Ij5DaGlsZHJlbidzIFByaXZhY3k8L2gyPg0KPHAgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IG1hcmdpbi1ib3R0b206IDE1cHg7Ij48YnIgLz5XZSBkbyBub3Qga25vd2luZ2x5IGNvbGxlY3Qgb3IgbWFpbnRhaW4gaW5mb3JtYXRpb24gZnJvbSBwZXJzb25zIHVuZGVyIDEzIHllYXJzIG9mIGFnZSAoImNoaWxkcmVuIiksIGFuZCBubyBwYXJ0IG9mIHRoZSBTZXJ2aWNlcyBpcyBkaXJlY3RlZCB0byBjaGlsZHJlbi4gSWYgeW91IGFyZSB1bmRlciAxMyB5ZWFycyBvZiBhZ2UsIHRoZW4gcGxlYXNlIGRvIG5vdCB1c2Ugb3IgYWNjZXNzIHRoZSBTZXJ2aWNlcyBhdCBhbnkgdGltZSBvciBpbiBhbnkgbWFubmVyLiBJZiB3ZSBsZWFybiB0aGF0IGluZm9ybWF0aW9uIGhhcyBiZWVuIGNvbGxlY3RlZCB0aHJvdWdoIHRoZSBTZXJ2aWNlcyBmcm9tIGNoaWxkcmVuIGFuZCB3aXRob3V0IHZlcmlmaWFibGUgcGFyZW50YWwgY29uc2VudCwgdGhlbiB3ZSB3aWxsIHRha2UgdGhlIGFwcHJvcHJpYXRlIHN0ZXBzIHRvIGRlbGV0ZSB0aGlzIGluZm9ybWF0aW9uLiBJZiB5b3UgYXJlIGEgcGFyZW50IG9yIGd1YXJkaWFuIGFuZCBkaXNjb3ZlciB0aGF0IHlvdXIgY2hpbGQgaGFzIHByb3ZpZGVkIHVzIHdpdGggcGVyc29uYWwgaW5mb3JtYXRpb24gd2l0aG91dCB5b3VyIGNvbnNlbnQsIHBsZWFzZSBjb250YWN0IHVzIHVzaW5nIHRoZSBjb250YWN0IGluZm9ybWF0aW9uIGJlbG93IHRvIHJlcXVlc3QgdGhhdCB3ZSBkZWxldGUgdGhlIGluZm9ybWF0aW9uIGZyb20gb3VyIHN5c3RlbXMuPC9wPg0KPGgyIHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyBmb250LXNpemU6IDIwcHg7IHBhZGRpbmctdG9wOiA0NXB4OyI+Q2FsaWZvcm5pYSBSZXNpZGVudHM8L2gyPg0KPHAgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IG1hcmdpbi1ib3R0b206IDE1cHg7Ij48YnIgLz5TdXBwbGVtZW50YWwgdG8gdGhlIGFib3ZlLCB0aGUgZm9sbG93aW5nIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gcGVydGFpbnMgdG8gQ2FsaWZvcm5pYSByZXNpZGVudHMgb25seTo8YnIgLz48YnIgLz48c3BhbiBzdHlsZT0idGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7Ij48c3Ryb25nPkNvbGxlY3Rpb24gYW5kIFVzZSBvZiBQZXJzb25hbCBJbmZvcm1hdGlvbiA8L3N0cm9uZz48L3NwYW4+PC9wPg0KPHVsIHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyBwYWRkaW5nLWxlZnQ6IDMwcHg7Ij4NCjxsaSB0eXBlPSJjaXJjbGUiPkNhdGVnb3JpZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gY29sbGVjdGVkIGFib3V0IENhbGlmb3JuaWEgcmVzaWRlbnRzIGluIHRoZSBwYXN0IHR3ZWx2ZSBtb250aHMgaW5jbHVkZSBpZGVudGlmaWVycywgb3RoZXIgaWRlbnRpZnlpbmcgaW5mb3JtYXRpb24sIGNoYXJhY3RlcmlzdGljcyBvZiBwcm90ZWN0ZWQgY2xhc3MsIGNvbW1lcmNpYWwgaW5mb3JtYXRpb24sIEludGVybmV0IG9yIG90aGVyIGVsZWN0cm9uaWMgbmV0d29yayBhY3Rpdml0eSBpbmZvcm1hdGlvbiwgcHJvZmVzc2lvbmFsIG9yIGVtcGxveW1lbnQtcmVsYXRlZCBpbmZvcm1hdGlvbiwgZWR1Y2F0aW9uIGluZm9ybWF0aW9uLCBhbmQgaW5mZXJlbmNlcyBkcmF3biBmcm9tIHN1Y2ggaW5mb3JtYXRpb24uIEZvciBleGFtcGxlcyBvZiBzcGVjaWZpYyBwaWVjZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gY29sbGVjdGVkLCBwbGVhc2Ugc2VlIHRoZSAiUGVyc29uYWwgSW5mb3JtYXRpb24gV2UgQ29sbGVjdCIgc2VjdGlvbiBhYm92ZS48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iY2lyY2xlIj5DYXRlZ29yaWVzIG9mIHBlcnNvbmFsIGluZm9ybWF0aW9uIGRpc2Nsb3NlZCBmb3IgYSBidXNpbmVzcyBwdXJwb3NlIGFib3V0IENhbGlmb3JuaWEgcmVzaWRlbnRzIGluIHRoZSBwYXN0IHR3ZWx2ZSBtb250aHMgaW5jbHVkZSBpZGVudGlmaWVycywgb3RoZXIgaWRlbnRpZnlpbmcgaW5mb3JtYXRpb24sIGNoYXJhY3RlcmlzdGljcyBvZiBwcm90ZWN0ZWQgY2xhc3MsIGNvbW1lcmNpYWwgaW5mb3JtYXRpb24sIEludGVybmV0IG9yIG90aGVyIGVsZWN0cm9uaWMgbmV0d29yayBhY3Rpdml0eSBpbmZvcm1hdGlvbiwgcHJvZmVzc2lvbmFsIG9yIGVtcGxveW1lbnQtcmVsYXRlZCBpbmZvcm1hdGlvbiwgYW5kIGVkdWNhdGlvbiBpbmZvcm1hdGlvbi48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iY2lyY2xlIj5XZSBkbyBub3Qgc2VsbCBwZXJzb25hbCBpbmZvcm1hdGlvbiwgbm9yIGRvIHdlIHNoYXJlIHBlcnNvbmFsIGluZm9ybWF0aW9uIHdpdGggdGhpcmQgcGFydGllcyBmb3IgdGhvc2UgdGhpcmQgcGFydGllcycgb3duIGRpcmVjdCBtYXJrZXRpbmcgcHVycG9zZXMuPC9saT4NCjwvdWw+DQo8cCBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgbWFyZ2luLWJvdHRvbTogMTVweDsiPjxiciAvPjxzcGFuIHN0eWxlPSJ0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsiPjxzdHJvbmc+WW91ciBDYWxpZm9ybmlhIFByaXZhY3kgUmlnaHRzIDwvc3Ryb25nPjwvc3Bhbj48YnIgLz5BcyBhIENhbGlmb3JuaWEgcmVzaWRlbnQsIHlvdSBoYXZlIHRoZSBmb2xsb3dpbmcgcmlnaHRzIHdpdGggcmVzcGVjdCB0byB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uOjwvcD4NCjx1bCBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgcGFkZGluZy1sZWZ0OiAzMHB4OyI+DQo8bGkgdHlwZT0iY2lyY2xlIj5Zb3UgaGF2ZSB0aGUgcmlnaHQgdG8gcmVxdWVzdCB0byBrbm93IGFib3V0IHBlcnNvbmFsIGluZm9ybWF0aW9uIGNvbGxlY3RlZCwgZGlzY2xvc2VkLCBvciBzb2xkLjwvbGk+DQo8bGkgc3R5bGU9Im1hcmdpbi10b3A6IDE1cHg7IiB0eXBlPSJjaXJjbGUiPllvdSBoYXZlIHRoZSByaWdodCB0byByZXF1ZXN0IHRoZSBkZWxldGlvbiBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbi48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iY2lyY2xlIj5Zb3UgaGF2ZSB0aGUgcmlnaHQgdG8gb3B0LW91dCBvZiB0aGUgc2FsZSBvZiB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGF0IGFueSB0aW1lLiBOb3RlIHRoYXQgd2UgZG8gbm90IGN1cnJlbnRseSBzZWxsIHBlcnNvbmFsIGluZm9ybWF0aW9uLjwvbGk+DQo8L3VsPg0KPHAgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IG1hcmdpbi1ib3R0b206IDE1cHg7Ij48YnIgLz5GaW5hbGx5LCB5b3UgaGF2ZSB0aGUgcmlnaHQgdG8gbm90IGJlIGRpc2NyaW1pbmF0ZWQgYWdhaW5zdCBhcyBhIHJlc3VsdCBvZiBleGVyY2lzaW5nIHlvdXIgcHJpdmFjeSByaWdodHMuQWNjb3JkaW5nbHksIHVubGVzcyBwZXJtaXR0ZWQgYnkgbGF3LCB3ZSB3aWxsIG5vdCBkZW55IHlvdSBnb29kcyBvciBzZXJ2aWNlcywgY2hhcmdlIHlvdSBkaWZmZXJlbnQgcHJpY2VzIG9yIHJhdGVzIGZvciBnb29kcyBvciBzZXJ2aWNlcywgcHJvdmlkZSB5b3UgYSBkaWZmZXJlbnQgbGV2ZWwgb3IgcXVhbGl0eSBvZiBnb29kIG9yIHNlcnZpY2VzLCBvciBzdWdnZXN0IHlvdSB3aWxsIHJlY2VpdmUgYSBkaWZmZXJlbnQgcHJpY2Ugb3IgcmF0ZSBmb3IgZ29vZHMgb3Igc2VydmljZXMgb3IgYSBkaWZmZXJlbnQgbGV2ZWwgb3IgcXVhbGl0eSBvZiBnb29kcyBvciBzZXJ2aWNlcy48YnIgLz48YnIgLz5UbyBleGVyY2lzZSB5b3VyIHJpZ2h0cywgeW91IG1heSBjb250YWN0IHVzIHVzaW5nIHRoZSBjb250YWN0IGluZm9ybWF0aW9uIHByb3ZpZGVkIGJlbG93IG9yIGNhbGwgPGEgaHJlZj0idGVsOjgwMDc5NzQ4NjEiPig4MDApIDc5Ny00ODYxPC9hPi4gSW4gb3JkZXIgdG8gZnVsZmlsbCB5b3VyIHJlcXVlc3QsIHdlIG1heSByZXF1aXJlIGFkZGl0aW9uYWwgcGVyc29uYWwgaW5mb3JtYXRpb24gZm9yIHB1cnBvc2VzIG9mIHZlcmlmeWluZyB5b3VyIGlkZW50aXR5LiBJZiB5b3UgbWFrZSBhIHJlcXVlc3QgdGhyb3VnaCBhbiBhdXRob3JpemVkIGFnZW50LCB3ZSBtYXkgcmVxdWlyZSBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIHRvIHZlcmlmeSB5b3VyIGF1dGhvcml6YXRpb24gb2YgdGhlIGFnZW50LjwvcD4NCjxoMiBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgZm9udC1zaXplOiAyMHB4OyBwYWRkaW5nLXRvcDogNDVweDsiPkNoYW5nZXMgdG8gUHJpdmFjeSBOb3RpY2U8L2gyPg0KPHAgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IG1hcmdpbi1ib3R0b206IDE1cHg7Ij48YnIgLz5XZSByZXNlcnZlIHRoZSByaWdodCB0byBtYWtlIGNoYW5nZXMgdG8gdGhpcyBQcml2YWN5IE5vdGljZSBhdCBhbnkgdGltZSwgd2l0aG91dCBub3RpY2UuIFdlIHdpbGwgbm90aWZ5IHlvdSBhYm91dCBjaGFuZ2VzIHRoYXQgc2lnbmlmaWNhbnRseSBpbXBhY3Qgb3VyIHVzZSBvZiB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGJ5IHBsYWNpbmcgYSBwcm9taW5lbnQgbm90aWNlIG9uIHRoaXMgd2Vic2l0ZSBvciBieSBzZW5kaW5nIHlvdSBhbiBlbWFpbC4gUGxlYXNlIHJldmlzaXQgdGhpcyBwYWdlIHBlcmlvZGljYWxseSB0byBzdGF5IGF3YXJlIG9mIGFueSBjaGFuZ2VzIHRvIHRoaXMgUHJpdmFjeSBOb3RpY2UuIEZvciB0aGUgYXZvaWRhbmNlIG9mIGRvdWJ0LCBkaXNwdXRlcyBhcmlzaW5nIGhlcmV1bmRlciB3aWxsIGJlIHJlc29sdmVkIGluIGFjY29yZGFuY2Ugd2l0aCB0aGUgUHJpdmFjeSBOb3RpY2UgaW4gZWZmZWN0IGF0IHRoZSB0aW1lIHRoZSBkaXNwdXRlIGFyb3NlLjwvcD4NCjxoMiBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgZm9udC1zaXplOiAyMHB4OyBwYWRkaW5nLXRvcDogNDVweDsiPkNvbnRhY3QgVXM8L2gyPg0KPHAgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IG1hcmdpbi1ib3R0b206IDE1cHg7Ij48YnIgLz5QbGVhc2UgY29udGFjdCB1cyB3aXRoIGFueSBxdWVzdGlvbnMsIGNvbW1lbnRzIG9yIGNvbmNlcm5zIGFib3V0IHRoaXMgUHJpdmFjeSBOb3RpY2Ugb3Igb3VyIHVzZSBvZiB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGJ5IGUtbWFpbCBhdCA8YSBocmVmPSJtYWlsdG86c3NpbW9uc0BzcnNjb21wdXRpbmcuY29tIj5zc2ltb25zQHNyc2NvbXB1dGluZy5jb208L2E+IG9yIGJ5IG1haWwgYXQ6PC9wPg0KPHAgc3R5bGU9Im1hcmdpbi1ib3R0b206IDA7IHRleHQtYWxpZ246IGNlbnRlcjsiPjxiciAvPlNSUyBDb21wdXRpbmcgU29sdXRpb25zLCBMTEM8YnIgLz42MjAxIFdhbGxhY2UgUmQuIEV4dC4sIFN1aXRlIDIwMTxiciAvPldleGZvcmQsIFBBIDE1MDkwPC9wPg==, PGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyBmb250LXNpemU6IDI1cHg7Ij5TUlMgQ29tcHV0aW5nIFNvbHV0aW9ucywgTExDIFRlcm1zIG9mIFVzZTwvaDE+DQo8cCBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgbWFyZ2luLWJvdHRvbTogMTVweDsiPjxlbT5MYXN0IHVwZGF0ZWQ6IFNlcHRlbWJlciAxNCwgMjAyMCAqKio8L2VtPjxiciAvPjxiciAvPlRoZXNlIFRlcm1zIG9mIFVzZSwgdG9nZXRoZXIgd2l0aCBTUlMgQ29tcHV0aW5nIFNvbHV0aW9ucywgTExDJ3MgUHJpdmFjeSBQb2xpY3kgKGNvbGxlY3RpdmVseSwgdGhlICJUZXJtcyIpIHNldCBmb3J0aCB0aGUgdGVybXMgYW5kIGNvbmRpdGlvbnMgdGhhdCBhcHBseSB0byB5b3VyIGFjY2VzcyBhbmQgdXNlIG9mIHRoZSB3ZWJzaXRlIG9mIFNSUyBDb21wdXRpbmcgU29sdXRpb25zLCBMTEMgKGh0dHBzOi8vd3d3LnNyc2NvbXB1dGluZy5jb20vKSAoIlNSUyIgIndlIiBvciAidXMiKSBhbmQgYXNzb2NpYXRlZCBzZXJ2aWNlcywgaW5jbHVkaW5nIFNSUyBzZXJ2aWNlcyB0aGF0IGFyZSBhdmFpbGFibGUgdGhyb3VnaCB0aGUgd2Vic2l0ZXMgb2Ygb3VyIGNsaWVudCBmdW5lcmFsLCBjZW1ldGVyeSBhbmQgY3JlbWF0b3J5IGNvcnBvcmF0aW9ucyAodG9nZXRoZXIsIHRoZSAiU2l0ZXMiKSwgd2hldGhlciB5b3UgYWNjZXNzIGFuZCB1c2UgdGhlIFNpdGVzIGFzIGEgY2xpZW50LCBlbmQgdXNlciBvciBjdXN0b21lciBvZiBhIGNsaWVudCwgb3Igb3RoZXJ3aXNlLiAiU1JTIiBpbmNsdWRlcyBhbGwgb2ZmaWNlcnMsIGRpcmVjdG9ycywgZW1wbG95ZWVzLCBjb25zdWx0YW50cywgYWZmaWxpYXRlcywgcGFyZW50IGVudGl0aWVzLCBzdWJzaWRpYXJpZXMsIGFuZCBhZ2VudHMuIFRoZSBUZXJtcyBjb25zdGl0dXRlIGEgbGVnYWxseSBiaW5kaW5nIGFncmVlbWVudCBiZXR3ZWVuIHlvdSwgd2hldGhlciBwZXJzb25hbGx5IG9yIG9uIGJlaGFsZiBvZiBhbiBlbnRpdHkgKCJ5b3UiKSBhbmQgU1JTIGNvbmNlcm5pbmcgeW91ciBhY2Nlc3MgdG8gYW5kIHVzZSBvZiB0aGUgU2l0ZXMuPGJyIC8+PGJyIC8+QnkgdXNpbmcgb3IgYWNjZXNzaW5nIHRoZSBTaXRlcywgeW91IGFncmVlIHRvIHRoZXNlIFRlcm1zLCBhcyBtYXkgYmUgdXBkYXRlZCBmcm9tIHRpbWUgdG8gdGltZSBpbiBhY2NvcmRhbmNlIHdpdGggU2VjdGlvbiA5IGJlbG93LjwvcD4NCjxvbCBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgcGFkZGluZy1sZWZ0OiAzMHB4OyI+DQo8bGkgdHlwZT0iMSI+PHN0cm9uZz5BY2NvdW50IFNlY3VyaXR5Ljwvc3Ryb25nPiBUbyB1c2UgdGhlIFNpdGVzIHlvdSBtdXN0IChpKSBiZSBhdCBsZWFzdCBlaWdodGVlbiAoMTgpIHllYXJzIG9mIGFnZTsgKGlpKSBoYXZlIG5vdCBwcmV2aW91c2x5IGJlZW4gc3VzcGVuZGVkIG9yIHJlbW92ZWQgZnJvbSB0aGUgU2l0ZXM7IGFuZCAoaWlpKSByZWdpc3RlciBmb3IgYW5kIHVzZSB0aGUgU2l0ZXMgaW4gY29tcGxpYW5jZSB3aXRoIGFueSBhbmQgYWxsIGFwcGxpY2FibGUgbGF3cyBhbmQgcmVndWxhdGlvbnMuPC9saT4NCjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogMTVweDsiIHR5cGU9IjEiPjxzdHJvbmc+QWNjb3VudCBSZWdpc3RyYXRpb24uPC9zdHJvbmc+IFRvIGFjY2VzcyBzb21lIGZlYXR1cmVzIG9mIHRoZSBTaXRlcywgeW91IG1heSBiZSByZXF1aXJlZCB0byByZWdpc3RlciBmb3IgYW4gYWNjb3VudC4gV2hlbiB5b3UgcmVnaXN0ZXIgZm9yIGFuIGFjY291bnQsIHdlIG1heSBhc2sgeW91IHRvIGdpdmUgdXMgY2VydGFpbiBpZGVudGlmeWluZyBpbmZvcm1hdGlvbiBhYm91dCB5b3Vyc2VsZiwgaW5jbHVkaW5nIGJ1dCBub3QgbGltaXRlZCB0byB5b3VyIGVtYWlsIGFkZHJlc3MgYW5kIG90aGVyIGNvbnRhY3QgaW5mb3JtYXRpb24sIGFuZCB0byBjcmVhdGUgYSB1c2VyIG5hbWUgYW5kIHBhc3N3b3JkICgiUmVnaXN0cmF0aW9uIEluZm9ybWF0aW9uIikuIFdoZW4gcmVnaXN0ZXJpbmcgZm9yIGFuZCBtYWludGFpbmluZyBhbiBhY2NvdW50LCB5b3UgYWdyZWUgdG8gcHJvdmlkZSB0cnVlLCBhY2N1cmF0ZSwgY3VycmVudCwgYW5kIGNvbXBsZXRlIGluZm9ybWF0aW9uIGFib3V0IHlvdXJzZWxmLiBZb3UgYWxzbyBhZ3JlZSBub3QgdG8gaW1wZXJzb25hdGUgYW55b25lLCBtaXNyZXByZXNlbnQgYW55IGFmZmlsaWF0aW9uIHdpdGggYW55b25lIGVsc2UsIHVzZSBmYWxzZSBpbmZvcm1hdGlvbiwgb3Igb3RoZXJ3aXNlIGNvbmNlYWwgeW91ciBpZGVudGl0eSBmcm9tIFNSUyBmb3IgYW55IHB1cnBvc2UuIFlvdSBhcmUgc29sZWx5IHJlc3BvbnNpYmxlIGZvciBtYWludGFpbmluZyB0aGUgY29uZmlkZW50aWFsaXR5IGFuZCBzZWN1cml0eSBvZiB5b3VyIHBhc3N3b3JkIGFuZCBvdGhlciBSZWdpc3RyYXRpb24gSW5mb3JtYXRpb24uIEZvciB5b3VyIHByb3RlY3Rpb24gYW5kIHRoZSBwcm90ZWN0aW9uIG9mIG90aGVyIHVzZXJzLCB3ZSBhc2sgeW91IG5vdCB0byBzaGFyZSB5b3VyIFJlZ2lzdHJhdGlvbiBJbmZvcm1hdGlvbiB3aXRoIGFueW9uZSBlbHNlLiBJZiB5b3UgZG8gc2hhcmUgdGhpcyBpbmZvcm1hdGlvbiB3aXRoIGFueW9uZSwgd2Ugd2lsbCBjb25zaWRlciB0aGVpciBhY3Rpdml0aWVzIHRvIGhhdmUgYmVlbiBhdXRob3JpemVkIGJ5IHlvdS4gSWYgeW91IGhhdmUgcmVhc29uIHRvIGJlbGlldmUgdGhhdCB5b3VyIGFjY291bnQgaXMgbm8gbG9uZ2VyIHNlY3VyZSwgeW91IG11c3QgaW1tZWRpYXRlbHkgbm90aWZ5IHVzIGF0IDxhIGhyZWY9Im1haWx0bzpzc2ltb25zQHNyc2NvbXB1dGluZy5jb20iPnNzaW1vbnNAc3JzY29tcHV0aW5nLmNvbTwvYT4uPC9saT4NCjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogMTVweDsiIHR5cGU9IjEiPjxzdHJvbmc+UHJvaGliaXRlZCBDb25kdWN0Ljwvc3Ryb25nPiBZb3UgYWdyZWUgbm90IHRvOg0KPG9sIHN0eWxlPSJwYWRkaW5nLWxlZnQ6IDIwcHg7Ij4NCjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogNXB4OyIgdHlwZT0iQSI+VXNlIHRoZSBTaXRlcyBmb3IgYW55IGlsbGVnYWwgcHVycG9zZSwgb3IgaW4gdmlvbGF0aW9uIG9mIGFueSBsb2NhbCwgc3RhdGUsIG5hdGlvbmFsLCBvciBpbnRlcm5hdGlvbmFsIGxhdzs8L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiA1cHg7IiB0eXBlPSJBIj5WaW9sYXRlIG9yIGVuY291cmFnZSBvdGhlcnMgdG8gdmlvbGF0ZSB0aGUgcmlnaHRzIG9mIHRoaXJkIHBhcnRpZXMsIGluY2x1ZGluZyBpbnRlbGxlY3R1YWwgcHJvcGVydHkgcmlnaHRzOzwvbGk+DQo8bGkgc3R5bGU9Im1hcmdpbi10b3A6IDVweDsiIHR5cGU9IkEiPlBvc3QsIHVwbG9hZCwgb3IgZGlzdHJpYnV0ZSBhbnkgY29udGVudCB0aGF0IGlzIHVubGF3ZnVsLCBkZWZhbWF0b3J5LCBsaWJlbG91cywgaW5hY2N1cmF0ZSwgb3IgdGhhdCBhIHJlYXNvbmFibGUgcGVyc29uIGNvdWxkIGRlZW0gdG8gYmUgb2JqZWN0aW9uYWJsZSwgcHJvZmFuZSwgaW5kZWNlbnQsIHBvcm5vZ3JhcGhpYywgaGFyYXNzaW5nLCB0aHJlYXRlbmluZywgaGF0ZWZ1bCwgb3Igb3RoZXJ3aXNlIGluYXBwcm9wcmlhdGU7PC9saT4NCjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogNXB4OyIgdHlwZT0iQSI+SW50ZXJmZXJlIGluIGFueSB3YXkgd2l0aCBzZWN1cml0eS1yZWxhdGVkIGZlYXR1cmVzIG9mIHRoZSBTaXRlczs8L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiA1cHg7IiB0eXBlPSJBIj5JbnRlcmZlcmUgd2l0aCB0aGUgb3BlcmF0aW9uIG9yIGFueSB1c2VyJ3MgZW5qb3ltZW50IG9mIHRoZSBTaXRlcywgaW5jbHVkaW5nIGJ5IHVwbG9hZGluZyBvciBvdGhlcndpc2UgZGlzc2VtaW5hdGluZyB2aXJ1c2VzLCBhZHdhcmUsIHNweXdhcmUsIHdvcm1zLCBvciBvdGhlciBtYWxpY2lvdXMgY29kZSwgbWFraW5nIHVuc29saWNpdGVkIG9mZmVycyBvciBhZHZlcnRpc2VtZW50cyB0byBvdGhlciB1c2Vycywgb3IgYXR0ZW1wdGluZyB0byBjb2xsZWN0IHBlcnNvbmFsIGluZm9ybWF0aW9uIGFib3V0IHVzZXJzIG9yIHRoaXJkIHBhcnRpZXMgd2l0aG91dCB0aGVpciBjb25zZW50OzwvbGk+DQo8bGkgc3R5bGU9Im1hcmdpbi10b3A6IDVweDsiIHR5cGU9IkEiPkFjY2VzcywgbW9uaXRvciBvciBjb3B5IGFueSBjb250ZW50IG9yIGluZm9ybWF0aW9uIG9mIHRoZSBTaXRlcyB1c2luZyBhbnkgcm9ib3QsIHNwaWRlciwgc2NyYXBlciwgb3Igb3RoZXIgYXV0b21hdGVkIG1lYW5zIG9yIGFueSBtYW51YWwgcHJvY2VzcyBmb3IgYW55IHB1cnBvc2Ugd2l0aG91dCBTUlMncyBleHByZXNzIHdyaXR0ZW4gcGVybWlzc2lvbjs8L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiA1cHg7IiB0eXBlPSJBIj5Vc2UsIHJlcHJvZHVjZSwgbW9kaWZ5LCBkaXN0cmlidXRlIG9yIHN0b3JlIGFueSBwYXJ0IG9mIHRoZSBTaXRlcyAoaW5jbHVkaW5nIG9iaXR1YXJpZXMsIGV2ZW50IGluZm9ybWF0aW9uLCBvciBvdGhlciBjb250ZW50KSBmb3IgYW55IHB1cnBvc2Ugd2l0aG91dCB0aGUgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uIG9mIFNSUzs8L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiA1cHg7IiB0eXBlPSJBIj5QZXJmb3JtIGFueSBmcmF1ZHVsZW50IGFjdGl2aXR5LCBpbmNsdWRpbmcgaW1wZXJzb25hdGluZyBhbnkgcGVyc29uIG9yIGVudGl0eSwgY2xhaW1pbmcgZmFsc2UgYWZmaWxpYXRpb25zLCBhY2Nlc3NpbmcgdGhlIGFjY291bnRzIG9mIG90aGVyIHVzZXJzIHdpdGhvdXQgcGVybWlzc2lvbiwgb3IgZmFsc2lmeWluZyB5b3VyIGlkZW50aXR5IG9yIGFueSBpbmZvcm1hdGlvbiBhYm91dCB5b3UsIGluY2x1ZGluZyBhZ2Ugb3IgZGF0ZSBvZiBiaXJ0aDsgb3I8L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiA1cHg7IiB0eXBlPSJBIj5TZWxsIG9yIG90aGVyd2lzZSB0cmFuc2ZlciB0aGUgYWNjZXNzIGdyYW50ZWQgaGVyZWluLjwvbGk+DQo8L29sPg0KPC9saT4NCjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogMTVweDsiIHR5cGU9IjEiPjxzdHJvbmc+VGhpcmQgUGFydHkgQ29udGVudC48L3N0cm9uZz4gVGhlIFNpdGVzIG1heSBjb250YWluIGxpbmtzIHRvIHRoaXJkIHBhcnR5IHdlYnNpdGVzIGFuZCBzZXJ2aWNlcy4gU1JTIHByb3ZpZGVzIHN1Y2ggbGlua3MgYXMgYSBjb252ZW5pZW5jZSwgYW5kIGRvZXMgbm90IGNvbnRyb2wgb3IgZW5kb3JzZSB0aGVzZSB3ZWJzaXRlcyBhbmQgc2VydmljZXMuIFlvdSBhY2tub3dsZWRnZSBhbmQgYWdyZWUgdGhhdCBTUlMgaGFzIG5vdCByZXZpZXdlZCB0aGUgY29udGVudCwgYWR2ZXJ0aXNpbmcsIHByb2R1Y3RzLCBzZXJ2aWNlcywgb3Igb3RoZXIgbWF0ZXJpYWxzIHRoYXQgYXBwZWFyIG9uIHN1Y2ggdGhpcmQgcGFydHkgd2Vic2l0ZXMgb3Igc2VydmljZXMsIGFuZCBpcyBub3QgcmVzcG9uc2libGUgZm9yIHRoZSBsZWdhbGl0eSwgYWNjdXJhY3ksIG9yIGFwcHJvcHJpYXRlbmVzcyBvZiBhbnkgc3VjaCBjb250ZW50LCBhbmQgc2hhbGwgbm90IGJlIHJlc3BvbnNpYmxlIG9yIGxpYWJsZSwgZGlyZWN0bHkgb3IgaW5kaXJlY3RseSwgZm9yIGFueSBkYW1hZ2Ugb3IgbG9zcyBjYXVzZWQgb3IgYWxsZWdlZCB0byBiZSBjYXVzZWQgYnkgb3IgaW4gY29ubmVjdGlvbiB3aXRoIHRoZSB1c2Ugb2YgYW55IHN1Y2ggdGhpcmQgcGFydHkgd2Vic2l0ZXMgb3Igc2VydmljZXMuPC9saT4NCjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogMTVweDsiIHR5cGU9IjEiPjxzdHJvbmc+SW50ZWxsZWN0dWFsIFByb3BlcnR5Ljwvc3Ryb25nPiBZb3UgYWNrbm93bGVkZ2UgYW5kIGFncmVlIHRoYXQgd2hlbiB5b3Ugc3VibWl0IGFuIG9iaXR1YXJ5LCBwb3N0IGNvbW1lbnRzLCBzdWJtaXQgYSB0cmlidXRlIHZpZGVvLCBvciBwb3N0IG9yIHN1Ym1pdCBvdGhlciBjb250ZW50ICh0b2dldGhlciwgImNvbnRlbnQiKSB0byBTUlMgb3IgYW55IHdlYnNpdGUgb2YgYW55IENsaWVudCBvcGVyYXRlZCBieSBTUlMsIHN1Y2ggY29udGVudCB3aWxsIGJlIHNoYXJlZCB3aXRoIGFuZCBzdG9yZWQgYnkgU1JTIGFuZCBpdHMgYWZmaWxpYXRlcyBhbmQgcGFydG5lcnMuIFlvdSBmdXJ0aGVyIGFja25vd2xlZGdlIGFuZCBhZ3JlZSB0aGF0IHlvdSByZWxpbnF1aXNoIGFsbCBvd25lcnNoaXAgcmlnaHRzIGluIGFueSBpZGVhcyBvciBzdWdnZXN0aW9ucyB0aGF0IHlvdSBzdWJtaXQgdG8gU1JTIHRocm91Z2ggdGhlIFNpdGVzLiBUaGUgU2l0ZXMgYXJlIHByb3RlY3RlZCBieSBhcHBsaWNhYmxlIGNvcHlyaWdodCBhbmQgb3RoZXIgaW50ZWxsZWN0dWFsIHByb3BlcnR5IGxhd3MsIGFuZCBubyBtYXRlcmlhbHMgZnJvbSB0aGUgU2l0ZXMgbWF5IGJlIGNvcGllZCwgcmVwcm9kdWNlZCwgcmVwdWJsaXNoZWQsIHVwbG9hZGVkLCBwb3N0ZWQsIHRyYW5zbWl0dGVkLCBvciBkaXN0cmlidXRlZCBpbiBhbnkgd2F5IHdpdGhvdXQgb3VyIGV4cHJlc3MgcGVybWlzc2lvbi4gQWxsIHRyYWRlbWFya3MgYW5kIHNlcnZpY2UgbWFya3Mgb24gdGhlIFNpdGVzIGJlbG9uZyB0byBTUlMsIGV4Y2VwdCB0aGlyZC1wYXJ0eSB0cmFkZW1hcmtzIG9yIHNlcnZpY2UgbWFya3MsIHdoaWNoIGFyZSB0aGUgcHJvcGVydHkgb2YgdGhlaXIgcmVzcGVjdGl2ZSBvd25lcnMuPC9saT4NCjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogMTVweDsiIHR5cGU9IjEiPjxzdHJvbmc+VXNlciBDb250ZW50Ljwvc3Ryb25nPiBZb3UgcmVwcmVzZW50IGFuZCB3YXJyYW50IHRoYXQgeW91IG93biBvciBvdGhlcndpc2UgaGF2ZSB0aGUgcmlnaHQgdG8gdXNlIGFueSBjb250ZW50IHlvdSBwb3N0IHRvIHRoZSBTaXRlcy4gSWYgeW91IGJlbGlldmUgdGhhdCB5b3VyIGNvbnRlbnQgaGFzIGJlZW4gdXNlZCBpbiBhIHdheSB0aGF0IGNvbnN0aXR1dGVzIGNvcHlyaWdodCBpbmZyaW5nZW1lbnQsIHlvdSBtYXkgY29udGFjdCBvdXIgRGVzaWduYXRlZCBBZ2VudDo8L2xpPg0KPC9vbD4NCjxwIHN0eWxlPSJtYXJnaW4tYm90dG9tOiAwOyI+PGJyIC8+U2NvdHQgU2ltb25zPGJyIC8+U1JTIENvbXB1dGluZzxiciAvPjYwMjEgV2FsbGFjZSBSZC4gRXh0LiwgU3VpdGUgMjAxPGJyIC8+UGhvbmU6IDxhIGhyZWY9InRlbDo4MDA3OTc0ODYxIj4oODAwKSA3OTctNDg2MTwvYT48YnIgLz5FbWFpbDogPGEgaHJlZj0ibWFpbHRvOnNzaW1vbnNAc3JzY29tcHV0aW5nLmNvbSI+c3NpbW9uc0BzcnNjb21wdXRpbmcuY29tPC9hPjwvcD4NCjxwIHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyI+PGJyIC8+WW91IG11c3QgcHJvdmlkZSB0aGUgZm9sbG93aW5nIGluZm9ybWF0aW9uOiBhbiBlbGVjdHJvbmljIG9yIHBoeXNpY2FsIHNpZ25hdHVyZSBvZiB0aGUgY29weXJpZ2h0IG93bmVyIG9yIHRoZSBwZXJzb24gYXV0aG9yaXplZCB0byBhY3Qgb24gYmVoYWxmIG9mIHRoZSBjb3B5cmlnaHQgb3duZXI7IGEgZGVzY3JpcHRpb24gb2YgdGhlIGNvcHlyaWdodGVkIHdvcmsgdGhhdCB5b3UgY2xhaW0gaGFzIGJlZW4gaW5mcmluZ2VkOyBhIGRlc2NyaXB0aW9uIG9mIHdoZXJlIHRoZSBtYXRlcmlhbCB0aGF0IHlvdSBjbGFpbSBpcyBpbmZyaW5naW5nIGlzIGxvY2F0ZWQ7IHlvdXIgYWRkcmVzcywgdGVsZXBob25lIG51bWJlciwgYW5kIGVtYWlsIGFkZHJlc3M7IGEgd3JpdHRlbiBzdGF0ZW1lbnQgdGhhdCB5b3UgaGF2ZSBhIGdvb2QgZmFpdGggYmVsaWVmIHRoYXQgdGhlIGRpc3B1dGVkIHVzZSBpcyBub3QgYXV0aG9yaXplZCBieSB0aGUgY29weXJpZ2h0IG93bmVyLCBpdHMgYWdlbnQsIG9yIHRoZSBsYXc7IGEgc3RhdGVtZW50IGJ5IHlvdSwgbWFkZSB1bmRlciBwZW5hbHR5IG9mIHBlcmp1cnksIHRoYXQgdGhlIGFib3ZlIGluZm9ybWF0aW9uIGluIHlvdXIgbm90aWNlIGlzIGFjY3VyYXRlIGFuZCB0aGF0IHlvdSBhcmUgdGhlIGNvcHlyaWdodCBvd25lciBvciBhdXRob3JpemVkIHRvIGFjdCBvbiB0aGUgY29weXJpZ2h0IG93bmVyJ3MgYmVoYWxmLiBTUlMgaGFzIGFkb3B0ZWQgYW5kIGltcGxlbWVudHMgYSBwb2xpY3kgdGhhdCBwcm92aWRlcyBmb3IgdGVybWluYXRpb24gaW4gYXBwcm9wcmlhdGUgY2lyY3Vtc3RhbmNlcyBvZiBhY2NvdW50cyBvZiB1c2VycyB3aG8gcmVwZWF0ZWRseSBpbmZyaW5nZSBjb3B5cmlnaHQgb3Igb3RoZXIgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBvZiBTUlMgb3Igb3RoZXJzLjwvcD4NCjxvbCBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgcGFkZGluZy1sZWZ0OiAzMHB4OyI+DQo8bGkgdHlwZT0iMSI+PHN0cm9uZz5JbmRlbW5pZmljYXRpb24uPC9zdHJvbmc+IFlvdSBhZ3JlZSB0aGF0IHlvdSB3aWxsIGJlIHBlcnNvbmFsbHkgcmVzcG9uc2libGUgZm9yIHlvdXIgdXNlIG9mIHRoZSBTaXRlcywgYW5kIHlvdSBhZ3JlZSB0byBkZWZlbmQsIGluZGVtbmlmeSwgYW5kIGhvbGQgaGFybWxlc3MgU1JTIGZyb20gYW5kIGFnYWluc3QgYW55IGFuZCBhbGwgY2xhaW1zLCBsaWFiaWxpdGllcywgZGFtYWdlcywgbG9zc2VzLCBhbmQgZXhwZW5zZXMgKGluY2x1ZGluZyBhdHRvcm5leXMnIGFuZCBhY2NvdW50aW5nIGZlZXMgYW5kIGNvc3RzKSwgYXJpc2luZyBvdXQgb2Ygb3IgaW4gYW55IHdheSBjb25uZWN0ZWQgd2l0aCAoaSkgeW91ciBhY2Nlc3MgdG8sIHVzZSBvZiwgb3IgYWxsZWdlZCB1c2Ugb2YgdGhlIFNpdGVzOyAoaWkpIHlvdXIgdmlvbGF0aW9uIG9mIHRoZSBUZXJtcyBvciBhbnkgYXBwbGljYWJsZSBsYXcgb3IgcmVndWxhdGlvbjsgKGlpaSkgeW91ciB2aW9sYXRpb24gb2YgYW55IHRoaXJkIHBhcnR5IHJpZ2h0LCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIGFueSBpbnRlbGxlY3R1YWwgcHJvcGVydHkgcmlnaHQsIHB1YmxpY2l0eSwgY29uZmlkZW50aWFsaXR5LCBwcm9wZXJ0eSwgb3IgcHJpdmFjeSByaWdodDsgb3IgKGl2KSBhbnkgZGlzcHV0ZXMgb3IgaXNzdWVzIGJldHdlZW4geW91IGFuZCBhbnkgdGhpcmQgcGFydHkuIFNSUyByZXNlcnZlcyB0aGUgcmlnaHQsIGF0IG91ciBvd24gZXhwZW5zZSwgdG8gYXNzdW1lIHRoZSBleGNsdXNpdmUgZGVmZW5zZSBhbmQgY29udHJvbCBvZiBhbnkgbWF0dGVyIG90aGVyd2lzZSBzdWJqZWN0IHRvIGluZGVtbmlmaWNhdGlvbiBieSB5b3UsIGFuZCBpbiBzdWNoIGNhc2UsIHlvdSBhZ3JlZSB0byBjb29wZXJhdGUgd2l0aCBvdXIgZGVmZW5zZSBvZiBzdWNoIGNsYWltLjwvbGk+DQo8bGkgc3R5bGU9Im1hcmdpbi10b3A6IDE1cHg7IiB0eXBlPSIxIj48c3Ryb25nPlRlcm1pbmF0aW9uLjwvc3Ryb25nPiBJZiB5b3UgdmlvbGF0ZSB0aGVzZSBUZXJtcywgeW91ciBwZXJtaXNzaW9uIHRvIHVzZSB0aGUgU2l0ZXMgd2lsbCBhdXRvbWF0aWNhbGx5IHRlcm1pbmF0ZS4gSW4gYWRkaXRpb24sIFNSUyBpbiBpdHMgc29sZSBkaXNjcmV0aW9uIG1heSBzdXNwZW5kIG9yIHRlcm1pbmF0ZSB5b3VyIHVzZXIgYWNjb3VudCBhbmQvb3Igc3VzcGVuZCBvciB0ZXJtaW5hdGUgc29tZSBvciBhbGwgb2YgeW91ciBhY2Nlc3MgdG8gdGhlIFNpdGVzIGF0IGFueSB0aW1lLCB3aXRoIG9yIHdpdGhvdXQgbm90aWNlIHRvIHlvdS4gWW91IG1heSB0ZXJtaW5hdGUgeW91ciBhY2NvdW50IGF0IGFueSB0aW1lIGJ5IGNvbnRhY3RpbmcgU1JTIGF0IDxhIGhyZWY9Im1haWx0bzpzc2ltb25zQHNyc2NvbXB1dGluZy5jb20iPnNzaW1vbnNAc3JzY29tcHV0aW5nLmNvbTwvYT4uIEFmdGVyIHlvdXIgYWNjb3VudCBpcyB0ZXJtaW5hdGVkLCBpbmZvcm1hdGlvbiBhbmQgY29udGVudCBwcmV2aW91c2x5IHByb3ZpZGVkIGJ5IHlvdSB3aWxsIG5vIGxvbmdlciBiZSBhY2Nlc3NpYmxlIHRocm91Z2ggeW91ciBhY2NvdW50LCBidXQgU1JTIG1heSBjb250aW51ZSB0byBzdG9yZSBzdWNoIGluZm9ybWF0aW9uIGFuZCBjb250ZW50LCBhbmQgaXQgbWF5IGFsc28gYmUgc3RvcmVkIGJ5IHRoaXJkIHBhcnRpZXMgdG8gd2hvbSBpdCBoYXMgYmVlbiB0cmFuc2ZlcnJlZCB0aHJvdWdoIHlvdXIgdXNlIG9mIHRoZSBTaXRlcy48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iMSI+PHN0cm9uZz5Nb2RpZmljYXRpb24gb2YgdGhlIFRlcm1zLjwvc3Ryb25nPiBTUlMgcmVzZXJ2ZXMgdGhlIHJpZ2h0IGF0IGFueSB0aW1lIHRvIG1vZGlmeSB0aGVzZSBUZXJtcyBhbmQgdG8gaW1wb3NlIG5ldyBvciBhZGRpdGlvbmFsIHRlcm1zIG9yIGNvbmRpdGlvbnMgb24geW91ciB1c2Ugb2YgdGhlIFNpdGVzLiBTdWNoIG1vZGlmaWNhdGlvbnMgYW5kIGFkZGl0aW9uYWwgdGVybXMgYW5kIGNvbmRpdGlvbnMgd2lsbCBiZSBlZmZlY3RpdmUgaW1tZWRpYXRlbHkgdXBvbiBub3RpY2UgYW5kIGluY29ycG9yYXRlZCBpbnRvIHRoZXNlIFRlcm1zLiBXZSB3aWxsIG1ha2UgcmVhc29uYWJsZSBlZmZvcnRzIHRvIG5vdGlmeSB5b3Ugb2YgYW55IG1hdGVyaWFsIGNoYW5nZXMgdG8gdGhlIFRlcm1zLCBpbmNsdWRpbmcsIGJ1dCBub3QgbGltaXRlZCB0bywgYnkgcG9zdGluZyBhIG5vdGljZSB0byBvdXIgd2Vic2l0ZSBvciBieSBzZW5kaW5nIGFuIGVtYWlsIHRvIGFueSBhZGRyZXNzIHlvdSBtYXkgaGF2ZSBwcm92aWRlZCB0byB1cy4gWW91ciBjb250aW51ZWQgdXNlIG9mIHRoZSBTaXRlcyBmb2xsb3dpbmcgbm90aWNlIHdpbGwgYmUgZGVlbWVkIGFjY2VwdGFuY2Ugb2YgYW55IG1vZGlmaWNhdGlvbnMgdG8gdGhlIFRlcm1zLjwvbGk+DQo8bGkgc3R5bGU9Im1hcmdpbi10b3A6IDE1cHg7IiB0eXBlPSIxIj48c3Ryb25nPkRpc2NsYWltZXJzIG9mIFdhcnJhbnRpZXMuPC9zdHJvbmc+IFRoZSBTaXRlcyBhcmUgcHJvdmlkZWQgImFzIGlzIiBhbmQgb24gYW4gImFzIGF2YWlsYWJsZSIgYmFzaXMsIHdpdGhvdXQgd2FycmFudHkgb3IgY29uZGl0aW9uIG9mIGFueSBraW5kLCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLiBBbHRob3VnaCBTUlMgc2Vla3MgdG8gbWFpbnRhaW4gc2FmZSwgc2VjdXJlLCBhY2N1cmF0ZSwgYW5kIHdlbGwtZnVuY3Rpb25pbmcgc2VydmljZXMsIHdlIGNhbm5vdCBndWFyYW50ZWUgdGhlIGNvbnRpbnVvdXMgb3BlcmF0aW9uIG9mIG9yIGFjY2VzcyB0byBvdXIgU2l0ZXMsIGFuZCB0aGVyZSBtYXkgYXQgdGltZXMgYmUgaW5hZHZlcnRlbnQgdGVjaG5pY2FsIG9yIGZhY3R1YWwgZXJyb3JzIG9yIGluYWNjdXJhY2llcy4gU1JTIHNwZWNpZmljYWxseSAoYnV0IHdpdGhvdXQgbGltaXRhdGlvbikgZGlzY2xhaW1zIChpKSBhbnkgaW1wbGllZCB3YXJyYW50aWVzIG9mIG1lcmNoYW50YWJpbGl0eSwgZml0bmVzcyBmb3IgYSBwYXJ0aWN1bGFyIHB1cnBvc2UsIHF1aWV0IGVuam95bWVudCwgb3Igbm9uLWluZnJpbmdlbWVudDsgYW5kIChpaSkgYW55IHdhcnJhbnRpZXMgYXJpc2luZyBvdXQgb2YgY291cnNlLW9mLWRlYWxpbmcsIHVzYWdlLCBvciB0cmFkZS4gWW91IGFzc3VtZSBhbGwgcmlzayBmb3IgYW55L2FsbCBkYW1hZ2VzIHRoYXQgbWF5IHJlc3VsdCBmcm9tIHlvdXIgdXNlIG9mIG9yIGFjY2VzcyB0byB0aGUgU2l0ZXMuIFNSUyBkb2VzIG5vdCBndWFyYW50ZWUgdGhlIGFjY3VyYWN5IG9mLCBhbmQgZGlzY2xhaW1zIGFsbCBsaWFiaWxpdHkgZm9yLCBhbnkgZXJyb3JzIG9yIG90aGVyIGluYWNjdXJhY2llcyBpbiB0aGUgaW5mb3JtYXRpb24sIGNvbnRlbnQsIHJlY29tbWVuZGF0aW9ucywgYW5kIG1hdGVyaWFscyBtYWRlIGF2YWlsYWJsZSB0aHJvdWdoIHRoZSBTaXRlcy48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iMSI+PHN0cm9uZz5MaW1pdGF0aW9uIG9mIExpYWJpbGl0eS48L3N0cm9uZz4gSW4gbm8gZXZlbnQgd2lsbCBTUlMgYmUgbGlhYmxlIHRvIHlvdSBmb3IgYW55IGluY2lkZW50YWwsIHNwZWNpYWwsIGNvbnNlcXVlbnRpYWwsIGRpcmVjdCwgaW5kaXJlY3QsIG9yIHB1bml0aXZlIGRhbWFnZXMsIHdoZXRoZXIgYmFzZWQgb24gd2FycmFudHksIGNvbnRyYWN0LCB0b3J0IChpbmNsdWRpbmcgbmVnbGlnZW5jZSksIHN0YXR1dGUsIG9yIGFueSBvdGhlciBsZWdhbCB0aGVvcnksIHdoZXRoZXIgb3Igbm90IFNSUyBoYXMgYmVlbiBpbmZvcm1lZCBvZiB0aGUgcG9zc2liaWxpdHkgb2Ygc3VjaCBkYW1hZ2UuIFNvbWUganVyaXNkaWN0aW9ucyBkbyBub3QgYWxsb3cgdGhlIGRpc2NsYWltZXIgb2Ygd2FycmFudGllcyBvciBsaW1pdGF0aW9uIG9mIGxpYWJpbGl0eSBpbiBjZXJ0YWluIGNpcmN1bXN0YW5jZXMuIEFjY29yZGluZ2x5LCBzb21lIG9mIHRoZSBhYm92ZSBsaW1pdGF0aW9ucyBtYXkgbm90IGFwcGx5IHRvIHlvdS48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iMSI+PHN0cm9uZz5Hb3Zlcm5pbmcgTGF3Ljwvc3Ryb25nPiBUaGVzZSBUZXJtcyBhcmUgZ292ZXJuZWQgYnkgdGhlIGxhd3Mgb2YgdGhlIFN0YXRlIG9mIFBlbm5zeWx2YW5pYSwgd2l0aG91dCByZWdhcmQgdG8gY29uZmxpY3Qgb2YgbGF3IHByaW5jaXBsZXMuIFRvIHRoZSBleHRlbnQgdGhhdCBhbnkgbGF3c3VpdCBvciBjb3VydCBwcm9jZWVkaW5nIGlzIHBlcm1pdHRlZCBoZXJldW5kZXIsIHlvdSBhbmQgU1JTIGFncmVlIHRvIHN1Ym1pdCB0byB0aGUgZXhjbHVzaXZlIHBlcnNvbmFsIGp1cmlzZGljdGlvbiBvZiB0aGUgQWxsZWdoZW55IENvdW50eSwgUGVubnN5bHZhbmlhIGNvdXJ0cywgb3IsIGlmIHN1Y2ggY291cnQgc2hhbGwgbm90IGhhdmUganVyaXNkaWN0aW9uLCBhbnkgZmVkZXJhbCBjb3VydCBvZiB0aGUgVW5pdGVkIFN0YXRlcyBvciBvdGhlciBQZW5uc3lsdmFuaWEgc3RhdGUgY291cnQsIGFuZCBhcHByb3ByaWF0ZSBhcHBlbGxhdGUgY291cnRzIHRoZXJlZnJvbSwgZm9yIHRoZSBwdXJwb3NlIG9mIGxpdGlnYXRpbmcgYWxsIHN1Y2ggZGlzcHV0ZXMuPC9saT4NCjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogMTVweDsiIHR5cGU9IjEiPjxzdHJvbmc+TW9kaWZpY2F0aW9uIG9mIHRoZSBTaXRlcy48L3N0cm9uZz4gU1JTIHJlc2VydmVzIHRoZSByaWdodCB0byBtb2RpZnkgb3IgZGlzY29udGludWUsIHRlbXBvcmFyaWx5IG9yIHBlcm1hbmVudGx5LCBzb21lIG9yIGFsbCBvZiB0aGUgU2l0ZXMgYXQgYW55IHRpbWUgd2l0aG91dCBhbnkgbm90aWNlIG9yIGZ1cnRoZXIgb2JsaWdhdGlvbiB0byB5b3UuIFlvdSBhZ3JlZSB0aGF0IFNSUyB3aWxsIG5vdCBiZSBsaWFibGUgdG8geW91IG9yIHRvIGFueSB0aGlyZCBwYXJ0eSBmb3IgYW55IG1vZGlmaWNhdGlvbiwgc3VzcGVuc2lvbiwgb3IgZGlzY29udGludWFuY2Ugb2YgYW55IG9mIHRoZSBTaXRlcy48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiAxNXB4OyIgdHlwZT0iMSI+PHN0cm9uZz5HZW5lcmFsLjwvc3Ryb25nPg0KPG9sIHN0eWxlPSJwYWRkaW5nLWxlZnQ6IDIwcHg7Ij4NCjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogNXB4OyIgdHlwZT0iQSI+PHU+RW50aXJlIEFncmVlbWVudC48L3U+IFRoZXNlIFRlcm1zIGNvbnN0aXR1dGUgdGhlIGVudGlyZSBhbmQgZXhjbHVzaXZlIHVuZGVyc3RhbmRpbmcgYW5kIGFncmVlbWVudCBiZXR3ZWVuIHlvdSBhbmQgU1JTIHJlZ2FyZGluZyB5b3VyIHVzZSBvZiBhbmQgYWNjZXNzIHRvIHRoZSBTaXRlcywgYW5kIGV4Y2VwdCBhcyBleHByZXNzbHkgcGVybWl0dGVkIGFib3ZlIG1heSBvbmx5IGJlIGFtZW5kZWQgYnkgYSB3cml0dGVuIGFncmVlbWVudCBzaWduZWQgYnkgYXV0aG9yaXplZCByZXByZXNlbnRhdGl2ZXMgb2YgdGhlIHBhcnRpZXMuPC9saT4NCjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogNXB4OyIgdHlwZT0iQSI+PHU+Tm8gV2FpdmVyLjwvdT4gVGhlIGZhaWx1cmUgdG8gcmVxdWlyZSBwZXJmb3JtYW5jZSBvZiBhbnkgcHJvdmlzaW9uIHNoYWxsIG5vdCBhZmZlY3Qgb3VyIHJpZ2h0IHRvIHJlcXVpcmUgcGVyZm9ybWFuY2UgYXQgYW55IHRpbWUgdGhlcmVhZnRlciwgbm9yIHNoYWxsIGEgd2FpdmVyIG9mIGFueSBicmVhY2ggb3IgZGVmYXVsdCBvZiB0aGUgVGVybXMgY29uc3RpdHV0ZSBhIHdhaXZlciBvZiBhbnkgc3Vic2VxdWVudCBicmVhY2ggb3IgZGVmYXVsdCBvciBhIHdhaXZlciBvZiB0aGUgcHJvdmlzaW9uIGl0c2VsZi48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiA1cHg7IiB0eXBlPSJBIj48dT5QYXJhZ3JhcGggSGVhZGVycy48L3U+IFVzZSBvZiBwYXJhZ3JhcGggaGVhZGVycyBpbiB0aGUgVGVybXMgaXMgZm9yIGNvbnZlbmllbmNlIG9ubHkgYW5kIHNoYWxsIG5vdCBoYXZlIGFueSBpbXBhY3Qgb24gdGhlIGludGVycHJldGF0aW9uIG9mIHBhcnRpY3VsYXIgcHJvdmlzaW9ucy48L2xpPg0KPGxpIHN0eWxlPSJtYXJnaW4tdG9wOiA1cHg7IiB0eXBlPSJBIj48dT5TZXZlcmFiaWxpdHkuPC91PiBJbiB0aGUgZXZlbnQgdGhhdCBhbnkgcGFydCBvZiB0aGUgVGVybXMgaXMgaGVsZCB0byBiZSBpbnZhbGlkIG9yIHVuZW5mb3JjZWFibGUsIHRoZSB1bmVuZm9yY2VhYmxlIHBhcnQgc2hhbGwgYmUgZ2l2ZW4gZWZmZWN0IHRvIHRoZSBncmVhdGVzdCBleHRlbnQgcG9zc2libGUgYW5kIHRoZSByZW1haW5pbmcgcGFydHMgd2lsbCByZW1haW4gaW4gZnVsbCBmb3JjZSBhbmQgZWZmZWN0LjwvbGk+DQo8L29sPg0KPC9saT4NCjxsaSBzdHlsZT0ibWFyZ2luLXRvcDogMTVweDsiIHR5cGU9IjEiPjxzdHJvbmc+Tm90aWNlIHRvIENhbGlmb3JuaWEgUmVzaWRlbnRzLjwvc3Ryb25nPiBVbmRlciBDYWxpZm9ybmlhIENpdmlsIENvZGUgU2VjdGlvbiAxNzg5LjMsIHlvdSBtYXkgY29udGFjdCB0aGUgQ29tcGxhaW50IEFzc2lzdGFuY2UgVW5pdCBvZiB0aGUgRGl2aXNpb24gb2YgQ29uc3VtZXIgU2VydmljZXMgb2YgdGhlIENhbGlmb3JuaWEgRGVwYXJ0bWVudCBvZiBDb25zdW1lciBBZmZhaXJzIGluIHdyaXRpbmcgYXQgMTYyNSBOLiBNYXJrZXQgQmx2ZC4sIFN1aXRlIFMtMjAyLCBTYWNyYW1lbnRvLCBDYWxpZm9ybmlhIDk1ODM0LCBvciBieSB0ZWxlcGhvbmUgYXQgKDgwMCkgOTUyLTUyMTAgaW4gb3JkZXIgdG8gcmVzb2x2ZSBhIGNvbXBsYWludCByZWdhcmRpbmcgdGhlIHNlcnZpY2Ugb3IgdG8gcmVjZWl2ZSBmdXJ0aGVyIGluZm9ybWF0aW9uIHJlZ2FyZGluZyB1c2Ugb2YgdGhlIHNlcnZpY2UuPC9saT4NCjwvb2w+, PGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7Ij48c3BhbiBzdHlsZT0iZm9udC1zaXplOiAxOHB0OyI+PHN0cm9uZz5BY2Nlc3NpYmlsaXR5PC9zdHJvbmc+PC9zcGFuPjwvaDE+DQo8cCBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsgcGFkZGluZy10b3A6IDEwcHg7Ij5XZSBhcmUgY29tbWl0dGVkIHRvIGltcHJvdmluZyBhbmQgbWFpbnRhaW5pbmcgYSB3ZWJzaXRlIHRoYXQgaXMgYWNjZXNzaWJsZSB0byB0aGUgd2lkZXN0IHBvc3NpYmxlIGF1ZGllbmNlLCByZWdhcmRsZXNzIG9mIHRlY2hub2xvZ3kgb3IgYWJpbGl0eS4gVG8gYWNoaWV2ZSB0aGlzIGdvYWwsIHdlIHBhcnRuZXIgd2l0aCBTUlMgQ29tcHV0aW5nIHRvIGNvbXBseSB3aXRoIGFwcGxpY2FibGUgd2Vic2l0ZSBhY2Nlc3NpYmlsaXR5IHN0YW5kYXJkcy4gSWYgeW91IGV4cGVyaWVuY2UgYW55IGRpZmZpY3VsdHkgaW4gYWNjZXNzaW5nIGFueSBwYXJ0IG9mIHRoaXMgd2Vic2l0ZSwgcGxlYXNlIGZlZWwgZnJlZSB0byBjYWxsIDgwMC03OTctNDg2MSBvciBlbWFpbCBzdXBwb3J0QHNyc2NvbXB1dGluZy5jb20sIG9yIGNvbnRhY3QgdXMgZGlyZWN0bHkuIE5vdGUgdGhhdCBvdXIgZWZmb3J0cyBhcmUgb25nb2luZywgYW5kIHdlIGFyZSBjb21taXR0ZWQgdG8gcHJvdmlkaW5nIHRoZSBpbmZvcm1hdGlvbiwgaXRlbSwgb3IgdHJhbnNhY3Rpb24geW91IHNlZWsgdGhyb3VnaCBhbiBhbHRlcm5hdGUgY29tbXVuaWNhdGlvbiBtZXRob2QgdGhhdCBpcyBhY2Nlc3NpYmxlIGZvciB5b3UuPC9wPg==.