Our History
Woodlawn Cemetery was dedicated in 1850. It is situated less than five miles from the center of Boston, and can be reached easily by automobile or public transportation which stops near the office and front entrance.
A pilgrimage to this 164 year old cemetery should be made by everyone. Woodlawn Cemetery has long been known for its beautiful landscaping, flower beds, trees, and shrubbery. A program of improvement throughout the cemetery and development of new sections has kept us in a position of leadership. We have earned the reputation of providing the best in burial plots, environment and services at a price which compares favorably with other cemeteries of similar character.
Of the many additional services we offer, there is a chapel with seating for over 125 people, Patton Memorial Hall suitable for functions of 75 people, a columbarium, a Crematory and a Community Mausoleum. The columbarium offers a wide selection of niches with either marble or glass fronts ranging in capacity from one to four urns. A wide variety of urns are available for purchase. The Community Mausoleum offers both above ground entombment and niche space for cremated remains.
The cemetery maintains its own greenhouse for the sole benefit of Grave and Lot-Holders. Thus floral decorations and beautiful flower beds may be purchased at a reasonable cost.
Please come and visit, we will be glad to show you around the cemetery.
Description of Cemetery Grounds
Woodlawn Cemetery is a historic garden cemetery located within a short distance of downtown Boston. It was founded in 1850 by prominent Greater Bostonians dedicated to philanthropic causes. The original incorporators of Woodlawn Cemetery consisted of a group of business, financial and civic leaders, who emerged to develop a one hundred and thirty acre parcel adjoining Elm Street in Everett, Massachusetts for the purpose of creating an elite garden like setting for the memorialization of the deceased.
The original charter at Woodlawn specified in detail a Master Plan for the creation of a picturesque garden like parcel replete with a serene, horticultural show piece, that would assist families with the memorialization of their loved ones. The founders’ foresight laid the groundwork for the physical and financial preservation of Woodlawn’s iconic grounds. Specimen shrubs and trees discernible and indigenous to the eras reflecting the growth and development of Greater Boston adorn the Woodlawn property. Woodlawn’s Chapel, its signature building was designed by distinguished Boston architects. An early benefactor, Elisa Converse the founder and President of the Boston Rubber Shoe Company, created a fund for the Chapel’s construction in 1910. This Richardsonian designed structure impressively greets each new Woodlawn visitor upon their entry onto the grounds, and it easily captivates the rich tradition, aura and spirit that is Woodlawn.
From the vision of its founders and continued by committed Trustees for the past two centuries, Woodlawn remains a tranquil garden like setting for the memorialization of loved ones. Its current Board of Trustees remain committed and dedicated to preserve Woodlawn’s legacy and tradition of excellence. Like many New England traditions, Woodlawn withstands the test of time and remains a hidden jewel nestled in an urban area. Notwithstanding its metropolitan setting, upon passing the art-deco sculptures tastefully affixed to the grand entry wall and wrought iron gates to Woodlawn, a visitor soon realizes they have entered a garden like atmosphere rich in history.
Today, a full range of death care products and services are professionally and compassionately administered by a veteran staff of cemetery professionals. These professionals continue to honor the Mission Statement crafted by Woodlawn’s original Trustees and implemented by skilled and committed staffs for nearly 200 years. The Trustees and Staff welcome your visit as they are sure it will confirm the lore of Woodlawn, and you will easily understand why so many individuals have preserved and honored their own family legacies at such a unique property.
Facilities and Services Available at Woodlawn Cemetery
Woodlawn Cemetery was dedicated in 1850. It is situated in close proximity of downtown Boston. Woodlawn can be easily reached by automobile or public transportation, which stops directly in front of the Administrative Offices located at 302 Elm Street, Everett, Massachusetts. A detailed written set of Woodlawn’s services and products are available at its Administrative Offices for your review. A dedicated Administrative Staff is available Monday through Saturday to assist Woodlawn’s patrons, and to provide on-site showings of its various products. Even without a Woodlawn representative providing a tour of its properties, the infrastructure at Woodlawn and its level topography lends itself to an easy and conducive individual view of this premier Cemetery. The Property’s lavish and meticulously cared for garden setting accentuates the flowing landscaped layout of its grounds, and underscores the magnificent detail of the Richardsonian Architecture seen throughout its signature buildings.
Woodlawn still offers in ground burials throughout its exquisitely maintained and pristine setting. No matter what the season, the grounds at Woodlawn highlight the unique shrubs, trees and bushes that have been planted, nurtured and preserved over the years. Within these specimen horticultural patterns and designs stand conventional headstones and flush bronze markers for traditional in ground burials. The upright monument remains a timeless classic style for families who wish to memorialize. For nearly two centuries columns of granite monuments perpetuate Woodlawn’s designated areas, wherein they allow families to tell the story of their family members for future generations. Many of Woodlawn’s patrons take advantage of the granite cleaning program offered at Woodlawn, which helps these stones and monuments withstand the elements with grace and dignity. Fortunately, Woodlawn still possesses an ample Inventory of Grave Lots ranging from single, double and triple in depth to meet the future plans for families, who wish to honor their loved ones with this traditional legacy.
Serving Woodlawn patrons for over the past several decades are the Versailles and Sheffield Mausoleums. These buildings are situated within the lushness of the great lawns at the entry way to Woodlawn. This granite and marble structure further compliments the aesthetic beauty of Woodlawn. A well planned and constructed building, the Versailles offers indoor crypts for those who desire above ground enclosures for their loved ones. Similar to Grave Lots the Mausoleum Inventory provides for various family sizes. These entombments provide memorialization by inscription of names and dates on marble crypt fronts. The entombments provide a heated and air conditioned setting for families and friends to reflect within the quiet confines of a majestic marble and granite structure that supplies comfort and tranquility for Woodlawn’s patrons. Ample parking is provided adjacent to the Versailles. No matter what the season a service or a visit to the tastefully constructed Versailles remains a memorable experience. An alternative to the Versailles is the Carthage Building, which offers private family rooms with five and ten crypt fronts privately constructed within a granite exterior building. The Carthage has a tasteful marble interior with beautiful stained glass windows, and its intimate setting provides for easy reflection.
Woodlawn remains a full service cemetery for those wishing to explore other available products. It offers several, unique designs of niches for cremated remains. One option for Woodlawn families is inurnment in its attractive Columbaria located beneath Patton Hall. This tastefully constructed indoor setting provides for a wide selection of niches with either marble or glass fronts ranging in capacity from one to four urns. This indoor setting allows families to remember and reflect upon the memory of their loved ones in a way that is a positive and uplifting experience. Also available are in-ground cremation graves for four burials. In addition, for approximately 80 years Woodlawn has provided cremation services in its modern cremation center. Families can be assured that Woodlawn adheres to all regulatory requirements throughout its cremation operation to maintain the identity and integrity of your loved one.
When a visitor passes through the wrought iron gates and art deco wall at the entry way to Woodlawn, his attention is instantly transfixed to Woodlawn’s signature structure, the Chapel Building. The Chapel Building was designed by prominent Boston architects in 1910, and initially funded through its benefactor, Elisa Converse, the famous patriarch of the Boston Rubber Shoe Company. Its detail to workmanship aesthetically compliment Woodlawn’s grounds. This discernible Richardsonian designed structure majestically greets each new Woodlawn visitor, and it easily captivates the rich tradition, aura and spirit that is Woodlawn. The Chapel’s restoration remains a historic milestone at Woodlawn. The exterior and interior of the Chapel still represents the era that ushered Woodlawn into prominence. The Chapel may be occupied by as many as a 125 people. Adjacent to the Chapel is Patton Hall suitable for after service collations of up to 60 people.
Woodlawn’s grounds are complete with an array of bright flowerbeds, trees and shrubbery. A detailed floral, shrub and tree program is revisited every year by the dedicated staff at Woodlawn. The Cemetery Staff reap the benefits of its distinguished garage and greenhouse for its continued horticultural developments. The resources from these buildings provide opportunities to Woodlawn’s Lot Owners to purchase floral decorations and beautiful flowerbeds that are planted and maintained by the staff at Woodlawn. Finally, the Administration Building is located at 302 Elm Street. Another 1800 era building, which has been tastefully restored, and it boasts of a secure IT cloud storage record keeping system. A friendly and committed staff is available six days a week to address your needs. A complete list of products and services and their respective fees and costs are available at the Administration Building for your convenience. The Officers and Trustees are certain that they compare favorably when viewed against peer group cemeteries.
Come and visit; we would be pleased to give you a tour of the Cemetery.
Woodlawn Cemetery
Phone: (617) 387-0800
Fax: (617) 387-0695
302 Elm St., Everett, MA 02149
© Woodlawn Cemetery Crafted with care by Frazer Consultants & TA
Privacy Policy
&
Terms of Use
|
Accessibility
PHA+PHN0cm9uZz5UcmlidXRlIFRlY2hub2xvZ3kgUHJpdmFjeSBQb2xpY3k8L3N0cm9uZz48L3A+DQo8cD48ZW0+TGFzdCB1cGRhdGVkOiBBcHJpbCAyMCwgMjAyMzwvZW0+PGJyPjxicj5UcmlidXRlIFRlY2hub2xvZ3kgaXMgY29tbWl0dGVkIHRvIHByb3RlY3RpbmcgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbi4gVGhpcyBQcml2YWN5IE5vdGljZSBkZXNjcmliZXMgdGhlIHBlcnNvbmFsIGluZm9ybWF0aW9uIHRoYXQgd2UgY29sbGVjdCBhYm91dCB5b3UsIGhvdyB3ZSB1c2UgYW5kIGRpc2Nsb3NlIHRoaXMgaW5mb3JtYXRpb24sIGFuZCB0aGUgc3RlcHMgd2UgdGFrZSB0byBwcm90ZWN0IHRoaXMgaW5mb3JtYXRpb24uIEZvciBwdXJwb3NlcyBvZiB0aGlzIFByaXZhY3kgTm90aWNlLCAoYSkgJmxkcXVvO3BlcnNvbmFsIGluZm9ybWF0aW9uJnJkcXVvOyBtZWFucyBhbnkgaW5mb3JtYXRpb24gdGhhdCByZWxhdGVzIHRvIHlvdSBhcyBhbiBpbmRpdmlkdWFsIGFuZCBjb3VsZCByZWFzb25hYmx5IGJlIHVzZWQgdG8gaWRlbnRpZnkgeW91IGFuZCAoYikgJmxkcXVvO1RyaWJ1dGUgVGVjaG5vbG9neSwmcmRxdW87ICZsZHF1bzt3ZSwmcmRxdW87ICZsZHF1bzt1cyZyZHF1bzsgYW5kICZsZHF1bztvdXImcmRxdW87IGVhY2ggcmVmZXIgdG8gdGhlIGxlZ2FsIGVudGl0eSBzcGVjaWZpZWQgaW4gdGhlICZsZHF1bztBcHBsaWNhYmxlIEVudGl0eSZyZHF1bzsgc2VjdGlvbiB0aGlzIFByaXZhY3kgTm90aWNlIGJlbG93LiBUaGlzIFByaXZhY3kgTm90aWNlIGFwcGxpZXMgdG8gb3VyIGNvbGxlY3Rpb24gYW5kIHVzZSBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbiB0aHJvdWdoIHRoaXMgd2Vic2l0ZSBhbmQgYW55IHJlbGF0ZWQgd2Vic2l0ZXMsIGFwcGxpY2F0aW9ucywgdG9vbHMsIG9yIHBsYXRmb3JtcyAodGhlICZsZHF1bztTZXJ2aWNlcyZyZHF1bzspLCBhcyB3ZWxsIGFzIHRocm91Z2ggYW55IG90aGVyIG1lYW5zIHdoZXJlIGEgbGluayBvciByZWZlcmVuY2UgdG8gdGhpcyBQcml2YWN5IE5vdGljZSBpcyBwcm92aWRlZCBhdCB0aGUgdGltZSBvZiBjb2xsZWN0aW9uLjwvcD4NCjxwPjxzdHJvbmc+Jm5ic3A7PC9zdHJvbmc+PC9wPg0KPHA+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiB2ZXJkYW5hLCBnZW5ldmEsIHNhbnMtc2VyaWY7Ij48c3Ryb25nPk91ciBTZXJ2aWNlczwvc3Ryb25nPjwvc3Bhbj48L3A+DQo8cD48YnI+VHJpYnV0ZSBUZWNobm9sb2d5JnJzcXVvO3MgcHJpbWFyeSBidXNpbmVzcyBpcyBhcyBhIHNvZnR3YXJlLWFzLWEtc2VydmljZSBwcm92aWRlciBvZiBmdW5lcmFsIHRlY2hub2xvZ3kgc2VydmljZXMsIGluY2x1ZGluZyB3ZWJzaXRlLCBwYXltZW50IHByb2Nlc3NpbmcsIGxpZmUgaW5zdXJhbmNlIGFzc2lnbm1lbnRzLCBzZWFyY2ggZW5naW5lIG9wdGltaXphdGlvbiwgbWFya2V0aW5nIGFuZCBlY29tbWVyY2Ugc2VydmljZXMsIHRvIGZ1bmVyYWwgaG9tZXMgYW5kIG90aGVyIGZ1bmVyYWwgcHJvZmVzc2lvbmFscyAob3VyICZsZHF1bztDbGllbnRzJnJkcXVvOykuIEluIGNvbm5lY3Rpb24gd2l0aCB0aGlzIGZhY2V0IG9mIFRyaWJ1dGUgVGVjaG5vbG9neSZyc3F1bztzIGJ1c2luZXNzLCBUcmlidXRlIFRlY2hub2xvZ3kgY29sbGVjdHMgYW5kIHN0b3JlcyBwZXJzb25hbCBpbmZvcm1hdGlvbiByZWdhcmRpbmcgaW5kaXZpZHVhbHMgd2hvIHZpc2l0IGFuZCB1dGlsaXplIGNlcnRhaW4gZnVuY3Rpb25zIG9yIGZlYXR1cmVzIG9mIG91ciBhbmQgb3VyIENsaWVudHMmcnNxdW87IHdlYnNpdGVzICgmbGRxdW87RW5kIFVzZXJzJnJkcXVvOykuIFRoaXMgUHJpdmFjeSBOb3RpY2UgYXBwbGllcyB0byBUcmlidXRlIFRlY2hub2xvZ3kmcnNxdW87cyBjb2xsZWN0aW9uIGFuZCB1c2Ugb2YgQ2xpZW50IGFuZCBFbmQgVXNlciBwZXJzb25hbCBpbmZvcm1hdGlvbiBidXQgbm90IHRvIG91ciBDbGllbnRzJnJzcXVvOyBvciBhbnkgb3RoZXIgdGhpcmQgcGFydHkmcnNxdW87cyBjb2xsZWN0aW9uIG9yIHVzZSBvZiBzdWNoIHBlcnNvbmFsIGluZm9ybWF0aW9uLjxicj48YnI+VHJpYnV0ZSBUZWNobm9sb2d5IGFsc28gbWFpbnRhaW5zIGEgd2ViIHJlcG9zaXRvcnksIHRoZSBUcmlidXRlIEFyY2hpdmUsIGNvbnRhaW5pbmcgb2JpdHVhcmllcywgYSBsaXN0aW5nIG9mIGZ1bmVyYWwgaG9tZXMsIGFuZCBvdGhlciBmdW5lcmFsLXJlbGF0ZWQgY29udGVudCBpbiBjb25uZWN0aW9uIHdpdGggd2hpY2ggcGVyc29uYWwgaW5mb3JtYXRpb24gbWF5IGJlIGNvbGxlY3RlZCBmcm9tIGluZGl2aWR1YWxzICgmbGRxdW87VHJpYnV0ZSBVc2VycyZyZHF1bzspLiBUaGlzIFByaXZhY3kgTm90aWNlIGFsc28gYXBwbGllcyB0byBUcmlidXRlIFRlY2hub2xvZ3kmcnNxdW87cyBjb2xsZWN0aW9uIGFuZCB1c2Ugb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gZnJvbSBUcmlidXRlIFVzZXJzIGFuZCBvdGhlciBpbmRpdmlkdWFscyB3aG8gaW50ZXJhY3QgZGlyZWN0bHkgd2l0aCBUcmlidXRlIFRlY2hub2xvZ3kuPC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHA+PHN0cm9uZz5QZXJzb25hbCBJbmZvcm1hdGlvbiBXZSBDb2xsZWN0PC9zdHJvbmc+PC9wPg0KPHA+PGJyPldoZW4geW91IGFjY2VzcyBvciB1c2UgdGhlIFNlcnZpY2VzIG9yIG90aGVyd2lzZSBpbnRlcmFjdCB3aXRoIHVzLCB3aGV0aGVyIGFzIGEgQ2xpZW50LCBFbmQgVXNlciwgVHJpYnV0ZSBVc2VyIG9yIG90aGVyIGluZGl2aWR1YWwsIHdlIG1heSBjb2xsZWN0IGNlcnRhaW4gY2F0ZWdvcmllcyBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbiBhYm91dCB5b3UgZnJvbSBhIHZhcmlldHkgb2Ygc291cmNlcy48YnI+PGJyPkNhdGVnb3JpZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gdGhhdCB3ZSBtYXkgY29sbGVjdCBmcm9tIHlvdSBkaXJlY3RseSBpbmNsdWRlOjwvcD4NCjx1bD4NCjxsaT5Db250YWN0IGluZm9ybWF0aW9uIChmb3IgZXhhbXBsZSwgbmFtZSwgcGhvbmUgbnVtYmVyLCBtYWlsaW5nIGFkZHJlc3MsIGVtYWlsIGFkZHJlc3MpPC9saT4NCjxsaT5QYXltZW50LXJlbGF0ZWQgZGV0YWlscyAoZm9yIGV4YW1wbGUsIGJpbGxpbmcgYWRkcmVzcyBhbmQgb3RoZXIgY3JlZGl0IGNhcmQgZGV0YWlscyk8L2xpPg0KPGxpPkFjY291bnQgaW5mb3JtYXRpb24gKGZvciBleGFtcGxlLCB1c2VybmFtZSBhbmQgcGFzc3dvcmQgYW5kIHRyYW5zYWN0aW9uIGhpc3RvcnkpPC9saT4NCjxsaT5Db21tdW5pY2F0aW9ucyAoZm9yIGV4YW1wbGUsIHN1Ym1pdHRlZCBxdWVzdGlvbnMgb3Igb3RoZXIgcG9zdHMsIG1hcmtldGluZyBwcmVmZXJlbmNlcyBhbmQgdXNlciBnZW5lcmF0ZWQgY29udGVudCBsaWtlIHBob3RvcyBhbmQgdmlkZW9zKTwvbGk+DQo8L3VsPg0KPHA+PGJyPkNhdGVnb3JpZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gdGhhdCB3ZSBtYXkgY29sbGVjdCBhdXRvbWF0aWNhbGx5IHdoZW4geW91IHVzZSB0aGUgU2VydmljZXMgaW5jbHVkZTo8L3A+DQo8dWw+DQo8bGk+VGVjaG5pY2FsIGluZm9ybWF0aW9uIChmb3IgZXhhbXBsZSwgYnJvd3NlciB0eXBlLCBJUCBhZGRyZXNzLCBjb29raWVzLCBhbmQgb3BlcmF0aW5nIHN5c3RlbSk8L2xpPg0KPGxpPlVzYWdlIGluZm9ybWF0aW9uIChmb3IgZXhhbXBsZSwgcGFnZXMgdmlzaXRlZCwgc2VhcmNoIHRlcm1zIGVudGVyZWQsIGFuZCBmcmVxdWVuY3kgb2YgdmlzaXRzKTwvbGk+DQo8L3VsPg0KPHA+PGJyPkNhdGVnb3JpZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gdGhhdCB3ZSBtYXkgY29sbGVjdCBmcm9tIG90aGVyIHNvdXJjZXMsIGluY2x1ZGluZyBmcm9tIG91ciBDbGllbnRzIGluIGNvbm5lY3Rpb24gd2l0aCB0aGVpciB1c2Ugb2YgdGhlIFNlcnZpY2VzLCBpbmNsdWRlOjwvcD4NCjx1bD4NCjxsaT5FbmQgVXNlciBjb250YWN0IGluZm9ybWF0aW9uIChmb3IgZXhhbXBsZSwgbmFtZSwgcGhvbmUgbnVtYmVyLCBtYWlsaW5nIGFkZHJlc3MsIGVtYWlsIGFkZHJlc3MpPC9saT4NCjxsaT5FbmQgVXNlciBwYXltZW50LXJlbGF0ZWQgZGV0YWlscyAoZm9yIGV4YW1wbGUsIGJpbGxpbmcgYWRkcmVzcyBhbmQgb3RoZXIgY3JlZGl0IGNhcmQgZGV0YWlscyk8L2xpPg0KPGxpPkVuZCBVc2VyIGZ1bmVyYWwgY29udHJpYnV0aW9ucywgaW5jbHVkaW5nIHRyaWJ1dGUgdmlkZW8gZGF0YSwgZGF0YSBlbnRlcmVkIGluIGZ1bmVyYWwgcmVnaXN0ZXIgYm9va3MsIG9iaXR1YXJpZXMgYW5kIHBvc3RzIGFuZCBjb21tZW50czwvbGk+DQo8bGk+RW5kIFVzZXIgZnVuZXJhbCBhZG1pbmlzdHJhdGlvbiBkYXRhLCBpbmNsdWRpbmcgbGlmZSBpbnN1cmFuY2UgY2xhaW0gZm9ybXMgYW5kIGFmZmlkYXZpdHMgdG8gZW5zdXJlIGRpc3BlcnNhbCBvZiBmdW5kcyB0byBjb3ZlciBmdW5lcmFsIGNvc3RzIGFuZCBkYXRhIHJlcXVpcmVkIHRvIGZpbGUgZGVhdGggY2VydGlmaWNhdGVzPC9saT4NCjwvdWw+DQo8cD48YnI+V2UgdXNlIEdvb2dsZSBBbmFseXRpY3MgdG8gY29sbGVjdCBhbmQgYW5hbHl6ZSBpbmZvcm1hdGlvbiBhYm91dCB1c2Ugb2YgdGhlIFNlcnZpY2VzIGFuZCB0byBoZWxwIHVzIHVuZGVyc3RhbmQgYWN0aXZpdGllcyBhbmQgdHJlbmRzLiBUaGlzIGluY2x1ZGVzIHVzZSBvZiBHb29nbGUgQW5hbHl0aWNzIHBlcmZvcm1hbmNlIHJlcG9ydHMgcmVsYXRpbmcgdG8gZGVtb2dyYXBoaWNzIGFuZCBpbnRlcmVzdHMuIEFzIHBhcnQgb2YgdGhpcyBzZXJ2aWNlLCB3ZSBzaGFyZSBhIHVuaXF1ZSBpZGVudGlmaWVyIHdpdGggR29vZ2xlIEFuYWx5dGljcy4gWW91IG1heSBvcHQtb3V0IG9mIEdvb2dsZSBBbmFseXRpY3MgYnkgaW5zdGFsbGluZyBhIEdvb2dsZSBBbmFseXRpY3Mgb3B0LW91dCBicm93c2VyIGFkZC1vbiBhdmFpbGFibGUgZm9yIGRvd25sb2FkIGhlcmU6Jm5ic3A7PGEgaHJlZj0iaHR0cHM6Ly90b29scy5nb29nbGUuY29tL2RscGFnZS9nYW9wdG91dCI+aHR0cHM6Ly90b29scy5nb29nbGUuY29tL2RscGFnZS9nYW9wdG91dDwvYT4uPGJyPjxicj5GaW5hbGx5LCB3ZSBtYXkgY29sbGVjdCBwZXJzb25hbCBpbmZvcm1hdGlvbiBwdXJzdWFudCB0byBhIGxlZ2FsIG9yIGNvbnRyYWN0dWFsIHJlcXVpcmVtZW50LCBhbmQgZmFpbHVyZSB0byBwcm92aWRlIHN1Y2ggaW5mb3JtYXRpb24gbWF5IGltcGFjdCBvdXIgYWJpbGl0eSB0byBmdWxmaWxsIG91ciBvYmxpZ2F0aW9ucy48L3A+DQo8cD48c3Ryb25nPiZuYnNwOzwvc3Ryb25nPjwvcD4NCjxwPjxzdHJvbmc+SG93IFdlIFVzZSBZb3VyIFBlcnNvbmFsIEluZm9ybWF0aW9uPC9zdHJvbmc+PC9wPg0KPHA+PGJyPldlIG1heSB1c2UgdGhlIHBlcnNvbmFsIGluZm9ybWF0aW9uIHdlIGNvbGxlY3QgZm9yIHRoZSBmb2xsb3dpbmcgcHVycG9zZXM6PC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHVsPg0KPGxpPjxzdHJvbmc+UHJvdmlkZSBhbmQgaW1wcm92ZSB0aGUgU2VydmljZXMuJm5ic3A7PC9zdHJvbmc+V2UgbWF5IHVzZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIHRvIHByb3ZpZGUgYW5kIGltcHJvdmUgdGhlIFNlcnZpY2VzLCBpbmNsdWRpbmcgdG8gZnVsZmlsbCB5b3VyIG9yZGVycyBhbmQgcmVxdWVzdHMgYW5kIHRvIHBvc3QgeW91ciBjb21tZW50cyBhbmQgb3RoZXIgZnVuZXJhbCBjb250cmlidXRpb25zLiBXZSBtYXkgYWxzbyB1c2UgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBmb3IgdGhlIGFkbWluaXN0cmF0aW9uIG9mIG91ciBidXNpbmVzcywgZm9yIGJ1c2luZXNzIGRldmVsb3BtZW50IHB1cnBvc2VzLCBhbmQgdG8gZnVsZmlsbCBvdXIgY29udHJhY3R1YWwgb2JsaWdhdGlvbnMuPC9saT4NCjwvdWw+DQo8cD4mbmJzcDs8L3A+DQo8dWw+DQo8bGk+PHN0cm9uZz5SaXNrIG1pdGlnYXRpb24gYW5kIHNlY3VyaXR5LiZuYnNwOzwvc3Ryb25nPldlIG1heSB1c2UgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBmb3IgcmlzayBtaXRpZ2F0aW9uIGFuZCBzZWN1cml0eSBwdXJwb3NlcywgaW5jbHVkaW5nIHRvIG1haW50YWluIHRoZSBwcml2YWN5IGFuZCBzZWN1cml0eSBvZiBvdXIgZGF0YSwgdG8gY29uZHVjdCBpbnRlcm5hbCBhdWRpdHMgb3IgaW52ZXN0aWdhdGlvbnMsIGZvciBkYXRhIHNlY3VyaXR5IHRlc3RpbmcgYW5kIGJ1c2luZXNzIGNvbnRpbnVpdHkgcGxhbm5pbmcgcHVycG9zZXMsIGFuZCB0byBlbnN1cmUgdGhlIHNhZmV0eSBhbmQgc2VjdXJpdHkgb2Ygb3VyIGFuZCBvdXIgYWZmaWxpYXRlcyZyc3F1bzsgQ2xpZW50cywgc3RhZmYgYW5kIGFzc2V0cy48L2xpPg0KPC91bD4NCjxwPiZuYnNwOzwvcD4NCjx1bD4NCjxsaT48c3Ryb25nPkNvbW11bmljYXRpb24gYW5kIG1hcmtldGluZy48L3N0cm9uZz4mbmJzcDtXZSBtYXkgdXNlIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gdG8gY29tbXVuaWNhdGUgd2l0aCB5b3UgYWJvdXQgdGhlIFNlcnZpY2VzLCByZXNwb25kIHRvIHlvdXIgcXVlc3Rpb25zLCBvciBvZmZlciB5b3UgYWRkaXRpb25hbCBwcm9kdWN0cyBvciBzZXJ2aWNlcy48L2xpPg0KPC91bD4NCjxwPiZuYnNwOzwvcD4NCjx1bD4NCjxsaT48c3Ryb25nPkNvbXBseSB3aXRoIHRoZSBsYXcgYW5kIGV4ZXJjaXNlIG91ciByaWdodHMuJm5ic3A7PC9zdHJvbmc+V2UgbWF5IHVzZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGFzIHJlYXNvbmFibHkgbmVjZXNzYXJ5IHRvIGFzc2VzcyBhbmQgZW5zdXJlIGNvbXBsaWFuY2Ugd2l0aCBhcHBsaWNhYmxlIGxhd3MsIGxlZ2FsIHJlcXVpcmVtZW50cywgYW5kIGNvbXBhbnkgcG9saWNpZXM7IHRvIHByb3RlY3Qgb3VyIGFuZCBvdXIgYWZmaWxpYXRlcyZyc3F1bzsgYXNzZXRzIG9yIHRvIGludmVzdGlnYXRlIG9yIGRlZmVuZCBhZ2FpbnN0IGFueSBjbGFpbXMgb2YgaWxsZWdhbGl0eSBvciB3cm9uZ2RvaW5nIChpbmNsdWRpbmcgdG8gb2J0YWluIGxlZ2FsIGFkdmljZSBvciB0byBlc3RhYmxpc2gsIGV4ZXJjaXNlIG9yIGRlZmVuZCBsZWdhbCByaWdodHMpOyBhbmQgaW4gcmVzcG9uc2UgdG8gYSBjb3VydCBvcmRlciBvciBqdWRpY2lhbCBvciBvdGhlciBnb3Zlcm5tZW50IHN1YnBvZW5hIG9yIHdhcnJhbnQuPC9saT4NCjwvdWw+DQo8cD4mbmJzcDs8L3A+DQo8dWw+DQo8bGk+PHN0cm9uZz5Db3Jwb3JhdGUgdHJhbnNhY3Rpb24uJm5ic3A7PC9zdHJvbmc+V2UgbWF5IHVzZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGluIHRoZSBldmVudCB3ZSB1bmRlcnRha2Ugb3IgYXJlIGludm9sdmVkIGluIG9yIGNvbnRlbXBsYXRpbmcgYW55IG1lcmdlciwgYWNxdWlzaXRpb24sIHJlb3JnYW5pemF0aW9uLCBzYWxlIG9mIGFzc2V0cywgYmFua3J1cHRjeSwgb3IgaW5zb2x2ZW5jeSBldmVudC48L2xpPg0KPC91bD4NCjxwPiZuYnNwOzwvcD4NCjxwPldlIG1heSBhbHNvIGFnZ3JlZ2F0ZSwgYW5vbnltaXplLCBvciBvdGhlcndpc2UgZGUtaWRlbnRpZnkgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBhbmQgdXNlIGl0IGZvciBhbnkgcHVycG9zZSBwZXJtaXR0ZWQgYnkgYXBwbGljYWJsZSBsYXcuPGJyPjxicj5Tb21lIGp1cmlzZGljdGlvbnMgcmVxdWlyZSB0aGF0IHdlIGRldGVybWluZSBhICZsZHF1bztsYXdmdWwgYmFzaXMmcmRxdW87IGZvciBwcm9jZXNzaW5nIHBlcnNvbmFsIGluZm9ybWF0aW9uLiBXaGVyZSBzdWNoIHJlcXVpcmVtZW50cyBleGlzdCwgd2UgcmVseSBvbiB0aGUgZm9sbG93aW5nIGxhd2Z1bCBiYXNlcyBmb3Igb3VyIHByb2Nlc3NpbmcgYWN0aXZpdGllczogdGhhdCB5b3UgaGF2ZSBjb25zZW50ZWQgdG8gdGhlIHByb2Nlc3Npbmc7IHRoYXQgdGhlIHByb2Nlc3NpbmcgaXMgbmVjZXNzYXJ5IGZvciB0aGUgcGVyZm9ybWFuY2Ugb2Ygb3VyIGNvbnRyYWN0IHdpdGggeW91OyB0aGF0IHdlIGhhdmUgYSBsZWdhbCBvYmxpZ2F0aW9uOyBvciB0aGF0IHdlIGhhdmUgYSBsZWdpdGltYXRlIGludGVyZXN0IGluIHByb3ZpZGluZyBhbmQgaW1wcm92aW5nIHRoZSBTZXJ2aWNlcyBhbmQgbWFuYWdpbmcgb3VyIGJ1c2luZXNzIG9wZXJhdGlvbnMuIE91ciBDbGllbnRzIGRldGVybWluZSB0aGUgbGF3ZnVsIGJhc2lzIGZvciBwcm9jZXNzaW5nIEVuZCBVc2VyIHBlcnNvbmFsIGluZm9ybWF0aW9uLjwvcD4NCjxwPiZuYnNwOzwvcD4NCjxwPjxzdHJvbmc+VXNlIG9mIENvb2tpZXM8L3N0cm9uZz48L3A+DQo8cD48YnI+V2hlbiB5b3UgdXNlIHRoZSBTZXJ2aWNlcywgd2UgbWF5IHNlbmQgb25lIG9yIG1vcmUgY29va2llcyAod2hpY2ggYXJlIHNtYWxsIHRleHQgZmlsZXMgY29udGFpbmluZyBhIHN0cmluZyBvZiBhbHBoYW51bWVyaWMgY2hhcmFjdGVycykgdG8geW91ciBjb21wdXRlciBvciBtb2JpbGUgZGV2aWNlLCB0byBoZWxwIGFuYWx5emUgb3VyIHdlYiBwYWdlIGZsb3csIGN1c3RvbWl6ZSBvdXIgY29udGVudCwgbWVhc3VyZSBwcm9tb3Rpb25hbCBlZmZlY3RpdmVuZXNzLCBhbmQgcHJvbW90ZSB0cnVzdCBhbmQgc2FmZXR5LiBZb3UgYXJlIGFsd2F5cyBmcmVlIHRvIGRlY2xpbmUgb3VyIGNvb2tpZXMgaWYgeW91ciBicm93c2VyIHBlcm1pdHMsIGFsdGhvdWdoIGRvaW5nIHNvIG1heSBpbnRlcmZlcmUgd2l0aCB5b3VyIGFiaWxpdHkgdG8gdXNlIHRoZSBTZXJ2aWNlcyBvciBjZXJ0YWluIGZlYXR1cmVzIG9mIHRoZSBTZXJ2aWNlcy4gV2UgbWF5IGFsc28gdXNlIEdvb2dsZSBBbmFseXRpY3Mgb3IgYSBzaW1pbGFyIHNlcnZpY2UgdGhhdCB1c2VzIGNvb2tpZXMgdG8gaGVscCB1cyBhbmFseXplIGhvdyB1c2VycyB1c2UgdGhlIFNlcnZpY2VzLjxicj48YnI+V2UgbWF5IGFsc28gYWxsb3cgY2VydGFpbiB0aGlyZCBwYXJ0aWVzIHN1Y2ggYXMgYWR2ZXJ0aXNpbmcsIGFuYWx5dGljcyBwcm92aWRlcnMsIGFuZCB3aWRnZXQgcHJvdmlkZXJzIHRvIHBsYWNlIGNvb2tpZXMgaW4gb3JkZXIgdG8gY29sbGVjdCBpbmZvcm1hdGlvbiBhYm91dCB5b3VyIG9ubGluZSBhY3Rpdml0aWVzIG92ZXIgdGltZSBhbmQgYWNyb3NzIGRpZmZlcmVudCB3ZWJzaXRlcyB3aGVuIHlvdSBhY2Nlc3Mgb3IgdXNlIHRoZSBTZXJ2aWNlcy4gQ3VycmVudGx5LCB2YXJpb3VzIGJyb3dzZXJzIG9mZmVyIGEgJmxkcXVvO0RvIE5vdCBUcmFjayZyZHF1bzsgb3B0aW9uLCBidXQgdGhlcmUgaXMgbm8gc3RhbmRhcmQgZm9yIGhvdyAmbGRxdW87RG8gTm90IFRyYWNrJnJkcXVvOyBzaG91bGQgd29yayBvbiBjb21tZXJjaWFsIHdlYnNpdGVzLiBEdWUgdG8gdGhlIGxhY2sgb2Ygc3VjaCBzdGFuZGFyZHMsIHRoZSBTZXJ2aWNlcywgaW5jbHVkaW5nIHRoaXMgd2Vic2l0ZSwgZG8gbm90IHJlc3BvbmQgdG8gJmxkcXVvO0RvIE5vdCBUcmFjayZyZHF1bzsgY29uc3VtZXIgYnJvd3NlciBzZXR0aW5ncy48L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD48c3Ryb25nPkhvdyBhbmQgV2hlbiBXZSBEaXNjbG9zZSBZb3VyIFBlcnNvbmFsIEluZm9ybWF0aW9uPC9zdHJvbmc+PC9wPg0KPHA+PGJyPldlIG1heSBkaXNjbG9zZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIHRvIHRoZSBmb2xsb3dpbmcgY2F0ZWdvcmllcyBvZiByZWNpcGllbnRzLCB0byBiZSB1c2VkIG9ubHkgZm9yIGxlZ2l0aW1hdGUgcHVycG9zZXMgaW4ga2VlcGluZyB3aXRoIHRoaXMgUHJpdmFjeSBOb3RpY2U6PC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHVsPg0KPGxpPjxzdHJvbmc+R3JvdXAgY29tcGFuaWVzIGFuZCBhZmZpbGlhdGVzPC9zdHJvbmc+LiBXZSBtYXkgZGlzY2xvc2UsIHNoYXJlLCBvciB0cmFuc2ZlciB5b3VyIGluZm9ybWF0aW9uIHRvIGFueSBidXNpbmVzcyBlbnRpdHkgdGhhdCBpcyBwYXJ0IG9mIG91ciBjb3Jwb3JhdGUgZmFtaWx5LjwvbGk+DQo8L3VsPg0KPHA+Jm5ic3A7PC9wPg0KPHVsPg0KPGxpPjxzdHJvbmc+Q2xpZW50czwvc3Ryb25nPi4gV2UgbWF5IHNoYXJlIHlvdXIgaW5mb3JtYXRpb24gd2l0aCBvdXIgQ2xpZW50cyBpbiBjb25uZWN0aW9uIHdpdGggb3VyIENsaWVudHMmcnNxdW87IHByb3Zpc2lvbiBvZiBzZXJ2aWNlcyB0byB5b3UuPC9saT4NCjwvdWw+DQo8cD4mbmJzcDs8L3A+DQo8dWw+DQo8bGk+PHN0cm9uZz5TZXJ2aWNlIHByb3ZpZGVycyBhbmQgcHJvZmVzc2lvbmFsIGFkdmlzb3JzPC9zdHJvbmc+LiBXZSBtYXkgZGlzY2xvc2UgeW91ciBpbmZvcm1hdGlvbiB0byB0aGlyZCBwYXJ0eSB2ZW5kb3JzIHdobyBwcm92aWRlIHNlcnZpY2VzIGluIHN1cHBvcnQgb2Ygb3VyIGJ1c2luZXNzIG9wZXJhdGlvbnMsIHN1Y2ggYXMgd2Vic2l0ZSBkZXZlbG9wbWVudCBhbmQgaG9zdGluZywgcGF5bWVudCBwcm9jZXNzaW5nLCBtYXJrZXRpbmcgbWFuYWdlbWVudCwgc2VydmljZSBvcHRpbWl6YXRpb24sIHZlbmRvcnMgdGhhdCBmdWxmaWxsIG9yZGVycyBmb3IgZnVuZXJhbC1yZWxhdGVkIGl0ZW1zIHN1Y2ggYXMgZmxvd2VycywgYW5kIGRhdGEgYW5hbHl0aWNzLiBXZSBtYXkgYWxzbyBkaXNjbG9zZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIHRvIHByb2Zlc3Npb25hbCBhZHZpc29ycyBzdWNoIGFzIG91ciBhdHRvcm5leXMsIGFjY291bnRhbnRzLCBhbmQgb3VycyBvciBFbmQgVXNlcnMmcnNxdW87IGluc3VyYW5jZSBwcm92aWRlcnMuPC9saT4NCjwvdWw+DQo8cD4mbmJzcDs8L3A+DQo8dWw+DQo8bGk+PHN0cm9uZz5QYXJ0aWVzIGludm9sdmVkIGluIGEgY29ycG9yYXRlIHRyYW5zYWN0aW9uPC9zdHJvbmc+LiBXZSBtYXkgZGlzY2xvc2UgeW91ciBpbmZvcm1hdGlvbiB0byByZWxldmFudCB0aGlyZCBwYXJ0aWVzIGluIHRoZSBldmVudCBvZiBhIGRpdmVzdGl0dXJlLCBtZXJnZXIsIGNvbnNvbGlkYXRpb24sIG9yIGFzc2V0IHNhbGUsIG9yIGluIHRoZSB1bmxpa2VseSBldmVudCBvZiBhIGJhbmtydXB0Y3kuPC9saT4NCjwvdWw+DQo8cD4mbmJzcDs8L3A+DQo8dWw+DQo8bGk+PHN0cm9uZz5MYXcgZW5mb3JjZW1lbnQgb3Igb3RoZXIgZ292ZXJubWVudGFsIGVudGl0aWVzPC9zdHJvbmc+LiBXZSBtYXkgZGlzY2xvc2UgeW91ciBpbmZvcm1hdGlvbiBpZiByZXF1aXJlZCB0byBkbyBzbyBieSBsYXcgb3IgaWYgd2UgYmVsaWV2ZSBpbiBnb29kIGZhaXRoIHRoYXQgc3VjaCBhY3Rpb24gaXMgbmVjZXNzYXJ5IHRvIGNvbXBseSB3aXRoIHRoZSBsYXcsIHByZXZlbnQgdW5sYXdmdWwgYWN0aXZpdHksIGRlZmVuZCBvdXIgcmlnaHRzLCBvciBtYWludGFpbiBzZWN1cml0eS48L2xpPg0KPC91bD4NCjxwPiZuYnNwOzwvcD4NCjx1bD4NCjxsaT48c3Ryb25nPk90aGVyIHRoaXJkIHBhcnRpZXMgd2l0aCB5b3VyIGNvbnNlbnQ8L3N0cm9uZz4uIFdlIG1heSBkaXNjbG9zZSB5b3VyIGluZm9ybWF0aW9uIHRvIGFueSBvdGhlciB0aGlyZCBwYXJ0eSB3aGVyZSB5b3UgaGF2ZSBwcm92aWRlZCBjb25zZW50IHRvIHN1Y2ggZGlzY2xvc3VyZS48L2xpPg0KPC91bD4NCjxwPjxzdHJvbmc+Jm5ic3A7PC9zdHJvbmc+PC9wPg0KPHA+PHN0cm9uZz5TZWN1cml0eSwgUmV0ZW50aW9uICZhbXA7IFRyYW5zZmVyIG9mIFBlcnNvbmFsIEluZm9ybWF0aW9uPC9zdHJvbmc+PC9wPg0KPHA+PGJyPldlIGhhdmUgaW1wbGVtZW50ZWQgYW5kIG1haW50YWluIGNvbW1lcmNpYWxseSByZWFzb25hYmxlIGFuZCBhcHByb3ByaWF0ZSB0ZWNobmljYWwgYW5kIG9yZ2FuaXphdGlvbmFsIG1lYXN1cmVzIGRlc2lnbmVkIHRvIHByb3RlY3QgdGhlIGNvbmZpZGVudGlhbGl0eSwgaW50ZWdyaXR5LCBhbmQgc2VjdXJpdHkgb2YgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbi4gUGxlYXNlIG5vdGUsIGhvd2V2ZXIsIHRoYXQgbm8gc2VjdXJpdHkgbWVhc3VyZXMgYXJlIHBlcmZlY3Qgb3IgaW1wZW5ldHJhYmxlLiBXZSB0aGVyZWZvcmUgY2Fubm90IGd1YXJhbnR5IGFuZCBkbyBub3Qgd2FycmFudCB0aGUgYWJzb2x1dGUgc2VjdXJpdHkgb2YgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbi4gV2UgcmV0YWluIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gZm9yIG5vIGxvbmdlciB0aGFuIHJlYXNvbmFibHkgbmVjZXNzYXJ5IHRvIGZ1bGZpbGwgdGhlIHB1cnBvc2VzIGZvciB3aGljaCB3ZSBjb2xsZWN0ZWQgaXQgb3IgdG8gY29tcGx5IHdpdGggdGhlIGxhdywgcHJldmVudCBmcmF1ZCwgZmFjaWxpdGF0ZSBhbiBpbnZlc3RpZ2F0aW9uLCBkZWZlbmQgYWdhaW5zdCBsZWdhbCBjbGFpbXMsIG9yIGV4ZXJjaXNlIG91ciBsZWdhbCByaWdodHMuPGJyPjxicj5EZXBlbmRpbmcgb24geW91ciBsb2NhdGlvbiwgdGhlIHBlcnNvbmFsIGluZm9ybWF0aW9uIHdlIGNvbGxlY3QgYWJvdXQgeW91IG1heSBiZSB0cmFuc2ZlcnJlZCB0byBhIGp1cmlzZGljdGlvbiB0aGF0IGRvZXMgbm90IHByb3ZpZGUgdGhlIHNhbWUgbGV2ZWwgb2YgcHJvdGVjdGlvbiBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbiBhcyB0aGUganVyaXNkaWN0aW9uIGluIHdoaWNoIHlvdSByZXNpZGUuIEFtb25nIG90aGVyIHBsYWNlcywgcGVyc29uYWwgaW5mb3JtYXRpb24gbWF5IGJlIHRyYW5zZmVycmVkIHRvLCBhbmQgc3RvcmVkIGluLCBDYW5hZGEsIEF1c3RyYWxpYSBhbmQgdGhlIFVuaXRlZCBTdGF0ZXMuIFRyYW5zZmVycyBmcm9tIHRoZSBFdXJvcGVhbiBVbmlvbiB0byBDYW5hZGEgYXJlIG1hZGUgcHVyc3VhbnQgdG8gRXVyb3BlYW4gQ29tbWlzc2lvbiBEZWNpc2lvbiAyMDAyLzIvRUMsIHdoaWNoIGRldGVybWluZWQgdGhhdCBDYW5hZGEgaXMgY29uc2lkZXJlZCBhcyBwcm92aWRpbmcgYW4gYWRlcXVhdGUgbGV2ZWwgb2YgcHJvdGVjdGlvbiBvZiBwZXJzb25hbCBpbmZvcm1hdGlvbi48L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD48c3Ryb25nPllvdXIgQ2hvaWNlcyAmYW1wOyBSaWdodHM8L3N0cm9uZz48L3A+DQo8cD48YnI+WW91IG1heSBkZWNsaW5lIHRvIHNoYXJlIGNlcnRhaW4gaW5mb3JtYXRpb24gd2l0aCB1cywgaW4gd2hpY2ggY2FzZSB3ZSBtYXkgbm90IGJlIGFibGUgdG8gcHJvdmlkZSB0byB5b3Ugc29tZSBvZiB0aGUgZmVhdHVyZXMgYW5kIGZ1bmN0aW9uYWxpdHkgb2YgdGhlIFNlcnZpY2VzLiBPbmNlIHlvdSBoYXZlIHJlZ2lzdGVyZWQgZm9yIGFuIGFjY291bnQgd2l0aCB1cywgeW91IG1heSB1cGRhdGUsIGNvcnJlY3QsIG9yIGRlbGV0ZSB5b3VyIHByb2ZpbGUgaW5mb3JtYXRpb24gYW5kIHByZWZlcmVuY2VzIGF0IGFueSB0aW1lIGJ5IGFjY2Vzc2luZyB5b3VyIGFjY291bnQgcHJlZmVyZW5jZXMgcGFnZSB0aHJvdWdoIHRoZSBTZXJ2aWNlcy4gSWYgeW91IGRvIG5vdCB3aXNoIHRvIHJlY2VpdmUgbWFya2V0aW5nIGNvbW11bmljYXRpb25zIGZyb20gdXMsIHlvdSBjYW4gb3B0LW91dCBieSB1c2luZyB0aGUgdW5zdWJzY3JpYmUgcHJvY2VzcyBwcm92aWRlZCBvciBkZXNjcmliZWQgaW4gYW55IHN1Y2ggY29tbXVuaWNhdGlvbiwgYnV0IHlvdSBtYXkgc3RpbGwgcmVjZWl2ZSB0cmFuc2FjdGlvbmFsIG9yIGFkbWluaXN0cmF0aXZlIGNvbW11bmljYXRpb25zIGZyb20gdXMuIEFsdGhvdWdoIHlvdXIgY2hhbmdlcyBhcmUgcmVmbGVjdGVkIHByb21wdGx5IGluIGFjdGl2ZSB1c2VyIGRhdGFiYXNlcywgd2UgbWF5IHJldGFpbiBhbGwgaW5mb3JtYXRpb24geW91IHN1Ym1pdCBmb3IgYSB2YXJpZXR5IG9mIHB1cnBvc2VzLCBpbmNsdWRpbmcgYmFja3VwcyBhbmQgYXJjaGl2aW5nLCBwcmV2ZW50aW9uIG9mIGZyYXVkIGFuZCBhYnVzZSwgYW5kIGFuYWx5dGljcy48YnI+PGJyPkRlcGVuZGluZyBvbiB5b3VyIGxvY2F0aW9uIGFuZCBzdWJqZWN0IHRvIGxvY2FsIGxhdywgeW91IG1heSBoYXZlIGNlcnRhaW4gcmlnaHRzIHdpdGggcmVzcGVjdCB0byB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uLiBUaGVzZSBtYXkgaW5jbHVkZTogdGhlIHJpZ2h0IHRvIGFjY2VzcywgY29ycmVjdCwgYW5kIGRlbGV0ZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uOyB0aGUgcmlnaHQgdG8gcmVzdHJpY3Qgb3Igb2JqZWN0IHRvIG91ciB1c2Ugb2YgeW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbjsgYW5kIHRoZSByaWdodCB0byByZWNlaXZlIGEgcG9ydGFibGUgY29weSBvZiB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGluIGEgdXNhYmxlIGZvcm1hdC4gSWYgeW91IHByb3ZpZGUgdXMgd2l0aCBjb25zZW50IHRvIHVzZSB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uLCB5b3UgbWF5IHdpdGhkcmF3IHRoYXQgY29uc2VudCBhdCBhbnkgdGltZSwgaG93ZXZlciwgc3VjaCB3aXRoZHJhd2FsIHdpbGwgbm90IGltcGFjdCB0aGUgbGF3ZnVsbmVzcyBvZiBvdXIgdXNlIG9mIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gYmFzZWQgb24geW91ciBjb25zZW50IHVwIHRvIHRoYXQgcG9pbnQuPGJyPjxicj5UbyBtYWtlIGEgcmVxdWVzdCByZWxhdGVkIHRvIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gb3Igb3RoZXJ3aXNlIGV4ZXJjaXNlIHlvdXIgcmlnaHRzLCB5b3UgbWF5IGNvbnRhY3QgdXMgdXNpbmcgdGhlIGNvbnRhY3QgaW5mb3JtYXRpb24gcHJvdmlkZWQgYmVsb3cuIEluIG9yZGVyIHRvIGZ1bGZpbGwgeW91ciByZXF1ZXN0LCB3ZSBtYXkgcmVxdWlyZSBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGZyb20geW91LiBXZSB3aWxsIHJlc3BvbmQgdG8gcmVxdWVzdHMgd2l0aGluIHRoZSByZWxldmFudCB0aW1lIHBlcmlvZHMgZXN0YWJsaXNoZWQgYnkgYXBwbGljYWJsZSBsYXcuIFdlIGFyZSBjb21taXR0ZWQgdG8gZmluZGluZyBhIGZhaXIgYW5kIHJlYXNvbmFibGUgcmVzb2x1dGlvbiB0byBhbnkgcmVxdWVzdCwgY29uY2Vybiwgb3IgY29tcGxhaW50IHlvdSBicmluZyB0byBvdXIgYXR0ZW50aW9uLiBIb3dldmVyLCBpZiB5b3UgYXJlIHVuc2F0aXNmaWVkIHdpdGggb3VyIHJlc3BvbnNlIHRvIHlvdXIgcmVxdWVzdCwgeW91IG1heSBoYXZlIHRoZSByaWdodCB0byBsb2RnZSBhIGNvbXBsYWludCB3aXRoIGFwcGxpY2FibGUgZ292ZXJubWVudGFsIGF1dGhvcml0aWVzLCBzdWJqZWN0IHRvIGxvY2FsIGxhdy48L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD48c3Ryb25nPkNoaWxkcmVuJnJzcXVvO3MgUHJpdmFjeTwvc3Ryb25nPjwvcD4NCjxwPjxicj5XZSBkbyBub3Qga25vd2luZ2x5IGNvbGxlY3Qgb3IgbWFpbnRhaW4gaW5mb3JtYXRpb24gZnJvbSBwZXJzb25zIHVuZGVyIDE2IHllYXJzIG9mIGFnZSAoJmxkcXVvO2NoaWxkcmVuJnJkcXVvOyksIGFuZCBubyBwYXJ0IG9mIHRoZSBTZXJ2aWNlcyBpcyBkaXJlY3RlZCB0byBjaGlsZHJlbi4gSWYgeW91IGFyZSB1bmRlciAxNiB5ZWFycyBvZiBhZ2UsIHRoZW4gcGxlYXNlIGRvIG5vdCB1c2Ugb3IgYWNjZXNzIHRoZSBTZXJ2aWNlcyBhdCBhbnkgdGltZSBvciBpbiBhbnkgbWFubmVyLiBJZiB3ZSBsZWFybiB0aGF0IGluZm9ybWF0aW9uIGhhcyBiZWVuIGNvbGxlY3RlZCB0aHJvdWdoIHRoZSBTZXJ2aWNlcyBmcm9tIGNoaWxkcmVuIGFuZCB3aXRob3V0IHZlcmlmaWFibGUgcGFyZW50YWwgY29uc2VudCwgdGhlbiB3ZSB3aWxsIHRha2UgdGhlIGFwcHJvcHJpYXRlIHN0ZXBzIHRvIGRlbGV0ZSB0aGlzIGluZm9ybWF0aW9uLiBJZiB5b3UgYXJlIGEgcGFyZW50IG9yIGd1YXJkaWFuIGFuZCBkaXNjb3ZlciB0aGF0IHlvdXIgY2hpbGQgaGFzIHByb3ZpZGVkIHVzIHdpdGggcGVyc29uYWwgaW5mb3JtYXRpb24gd2l0aG91dCB5b3VyIGNvbnNlbnQsIHBsZWFzZSBjb250YWN0IHVzIHVzaW5nIHRoZSBjb250YWN0IGluZm9ybWF0aW9uIGJlbG93IHRvIHJlcXVlc3QgdGhhdCB3ZSBkZWxldGUgdGhlIGluZm9ybWF0aW9uIGZyb20gb3VyIHN5c3RlbXMuPC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHA+PHN0cm9uZz5BcHBsaWNhYmxlIEVudGl0eTwvc3Ryb25nPjwvcD4NCjxwPjxicj5BbGwgcmVmZXJlbmNlcyB0byAmbGRxdW87VHJpYnV0ZSBUZWNobm9sb2d5LCZyZHF1bzsgJmxkcXVvO3dlLCZyZHF1bzsgJmxkcXVvO3VzJnJkcXVvOyBvciAmbGRxdW87b3VyJnJkcXVvOyBpbiB0aGlzIFByaXZhY3kgTm90aWNlIHJlZmVyIHRvIHRoZSBhcHBsaWNhYmxlIGVudGl0eSBzcGVjaWZpZWQgaW4gdGhlIHRhYmxlIGJlbG93LCB3aGljaCBpcyBiYXNlZCBvbiB0aGUgbG9jYXRpb24gb2YgdGhlIGJ1c2luZXNzIGFkZHJlc3Mgb2YgdGhlIENsaWVudCBvciBvdGhlciBidXNpbmVzcyBvbiB3aG9zZSB3ZWJzaXRlIHRoaXMgUHJpdmFjeSBOb3RpY2UgYXBwZWFycyAoYXMgcG9zdGVkIG9uIHN1Y2ggd2Vic2l0ZSk6PC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHRhYmxlPg0KPHRib2R5Pg0KPHRyPg0KPHRkIHdpZHRoPSIxODYiPg0KPHA+PHN0cm9uZz5Mb2NhdGlvbiBvZiBCdXNpbmVzcyBBZGRyZXNzPC9zdHJvbmc+PC9wPg0KPC90ZD4NCjx0ZCB3aWR0aD0iMjEwIj4NCjxwPjxzdHJvbmc+QXBwbGljYWJsZSBFbnRpdHk8L3N0cm9uZz48L3A+DQo8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZCB3aWR0aD0iMTg2Ij4NCjxwPkNhbmFkYTwvcD4NCjwvdGQ+DQo8dGQgd2lkdGg9IjIxMCI+DQo8cD5UcmlidXRlIFRlY2hub2xvZ3kgQ2FuYWRhLCBVTEMsIGEgQnJpdGlzaCBDb2x1bWJpYSB1bmxpbWl0ZWQgbGlhYmlsaXR5IGNvbXBhbnk8L3A+DQo8L3RkPg0KPC90cj4NCjx0cj4NCjx0ZCB3aWR0aD0iMTg2Ij4NCjxwPlVuaXRlZCBTdGF0ZXMgYW5kIHRoZSByZXN0IG9mIHRoZSB3b3JsZCBvdXRzaWRlIENhbmFkYTwvcD4NCjwvdGQ+DQo8dGQgd2lkdGg9IjIxMCI+DQo8cD5UcmlidXRlIFRlY2hub2xvZ3kgVVMsIExMQywgYSBEZWxhd2FyZSBsaW1pdGVkIGxpYWJpbGl0eSBjb21wYW55PC9wPg0KPC90ZD4NCjwvdHI+DQo8L3Rib2R5Pg0KPC90YWJsZT4NCjxwPiZuYnNwOzwvcD4NCjxwPjxzdHJvbmc+Q2FsaWZvcm5pYSBSZXNpZGVudHM8L3N0cm9uZz48L3A+DQo8cD48YnI+U3VwcGxlbWVudGFsIHRvIHRoZSBhYm92ZSwgdGhlIGZvbGxvd2luZyBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIHBlcnRhaW5zIHRvIENhbGlmb3JuaWEgcmVzaWRlbnRzIG9ubHk6PGJyPjxicj48ZW0+PHU+Q29sbGVjdGlvbiBhbmQgVXNlIG9mIFBlcnNvbmFsIEluZm9ybWF0aW9uPC91PjwvZW0+PC9wPg0KPHVsPg0KPGxpPkNhdGVnb3JpZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gY29sbGVjdGVkIGFib3V0IENhbGlmb3JuaWEgcmVzaWRlbnRzIGluIHRoZSBwYXN0IHR3ZWx2ZSBtb250aHMgaW5jbHVkZSBpZGVudGlmaWVycywgb3RoZXIgaWRlbnRpZnlpbmcgaW5mb3JtYXRpb24sIGNoYXJhY3RlcmlzdGljcyBvZiBwcm90ZWN0ZWQgY2xhc3MsIGNvbW1lcmNpYWwgaW5mb3JtYXRpb24sIEludGVybmV0IG9yIG90aGVyIGVsZWN0cm9uaWMgbmV0d29yayBhY3Rpdml0eSBpbmZvcm1hdGlvbiwgcHJvZmVzc2lvbmFsIG9yIGVtcGxveW1lbnQtcmVsYXRlZCBpbmZvcm1hdGlvbiwgZWR1Y2F0aW9uIGluZm9ybWF0aW9uLCBhbmQgaW5mZXJlbmNlcyBkcmF3biBmcm9tIHN1Y2ggaW5mb3JtYXRpb24uIEZvciBleGFtcGxlcyBvZiBzcGVjaWZpYyBwaWVjZXMgb2YgcGVyc29uYWwgaW5mb3JtYXRpb24gY29sbGVjdGVkLCBwbGVhc2Ugc2VlIHRoZSAmbGRxdW87UGVyc29uYWwgSW5mb3JtYXRpb24gV2UgQ29sbGVjdCZyZHF1bzsgc2VjdGlvbiBhYm92ZS48L2xpPg0KPC91bD4NCjxwPiZuYnNwOzwvcD4NCjx1bD4NCjxsaT5DYXRlZ29yaWVzIG9mIHBlcnNvbmFsIGluZm9ybWF0aW9uIGRpc2Nsb3NlZCBmb3IgYSBidXNpbmVzcyBwdXJwb3NlIGFib3V0IENhbGlmb3JuaWEgcmVzaWRlbnRzIGluIHRoZSBwYXN0IHR3ZWx2ZSBtb250aHMgaW5jbHVkZSBpZGVudGlmaWVycywgb3RoZXIgaWRlbnRpZnlpbmcgaW5mb3JtYXRpb24sIGNoYXJhY3RlcmlzdGljcyBvZiBwcm90ZWN0ZWQgY2xhc3MsIGNvbW1lcmNpYWwgaW5mb3JtYXRpb24sIEludGVybmV0IG9yIG90aGVyIGVsZWN0cm9uaWMgbmV0d29yayBhY3Rpdml0eSBpbmZvcm1hdGlvbiwgcHJvZmVzc2lvbmFsIG9yIGVtcGxveW1lbnQtcmVsYXRlZCBpbmZvcm1hdGlvbiwgYW5kIGVkdWNhdGlvbiBpbmZvcm1hdGlvbi48L2xpPg0KPC91bD4NCjxwPiZuYnNwOzwvcD4NCjx1bD4NCjxsaT5XZSBkbyBub3Qgc2VsbCBwZXJzb25hbCBpbmZvcm1hdGlvbiwgbm9yIGRvIHdlIHNoYXJlIHBlcnNvbmFsIGluZm9ybWF0aW9uIHdpdGggdGhpcmQgcGFydGllcyBmb3IgdGhvc2UgdGhpcmQgcGFydGllcyZyc3F1bzsgZGlyZWN0IG1hcmtldGluZyBwdXJwb3Nlcy48L2xpPg0KPC91bD4NCjxwPjxicj48ZW0+PHU+WW91ciBDYWxpZm9ybmlhIFByaXZhY3kgUmlnaHRzPC91PjwvZW0+PGJyPkFzIGEgQ2FsaWZvcm5pYSByZXNpZGVudCwgeW91IGhhdmUgdGhlIGZvbGxvd2luZyByaWdodHMgd2l0aCByZXNwZWN0IHRvIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb246PC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHVsPg0KPGxpPllvdSBoYXZlIHRoZSByaWdodCB0byByZXF1ZXN0IHRvIGtub3cgYWJvdXQgcGVyc29uYWwgaW5mb3JtYXRpb24gY29sbGVjdGVkLCBkaXNjbG9zZWQsIG9yIHNvbGQuPC9saT4NCjwvdWw+DQo8cD4mbmJzcDs8L3A+DQo8dWw+DQo8bGk+WW91IGhhdmUgdGhlIHJpZ2h0IHRvIHJlcXVlc3QgdGhlIGRlbGV0aW9uIG9mIHBlcnNvbmFsIGluZm9ybWF0aW9uLjwvbGk+DQo8L3VsPg0KPHA+Jm5ic3A7PC9wPg0KPHVsPg0KPGxpPllvdSBoYXZlIHRoZSByaWdodCB0byBvcHQtb3V0IG9mIHRoZSBzYWxlIG9mIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gYXQgYW55IHRpbWUuIE5vdGUgdGhhdCB3ZSBkbyBub3QgY3VycmVudGx5IHNlbGwgcGVyc29uYWwgaW5mb3JtYXRpb24uPC9saT4NCjwvdWw+DQo8cD48YnI+RmluYWxseSwgeW91IGhhdmUgdGhlIHJpZ2h0IHRvIG5vdCBiZSBkaXNjcmltaW5hdGVkIGFnYWluc3QgYXMgYSByZXN1bHQgb2YgZXhlcmNpc2luZyB5b3VyIHByaXZhY3kgcmlnaHRzLiBBY2NvcmRpbmdseSwgdW5sZXNzIHBlcm1pdHRlZCBieSBsYXcsIHdlIHdpbGwgbm90IGRlbnkgeW91IGdvb2RzIG9yIHNlcnZpY2VzLCBjaGFyZ2UgeW91IGRpZmZlcmVudCBwcmljZXMgb3IgcmF0ZXMgZm9yIGdvb2RzIG9yIHNlcnZpY2VzLCBwcm92aWRlIHlvdSBhIGRpZmZlcmVudCBsZXZlbCBvciBxdWFsaXR5IG9mIGdvb2RzIG9yIHNlcnZpY2VzLCBvciBzdWdnZXN0IHlvdSB3aWxsIHJlY2VpdmUgYSBkaWZmZXJlbnQgcHJpY2Ugb3IgcmF0ZSBmb3IgZ29vZHMgb3Igc2VydmljZXMgb3IgYSBkaWZmZXJlbnQgbGV2ZWwgb3IgcXVhbGl0eSBvZiBnb29kcyBvciBzZXJ2aWNlcy48YnI+PGJyPlRvIGV4ZXJjaXNlIHlvdXIgcmlnaHRzLCB5b3UgbWF5IGNvbnRhY3QgdXMgdXNpbmcgdGhlIGNvbnRhY3QgaW5mb3JtYXRpb24gcHJvdmlkZWQgYmVsb3cgb3IgY2FsbCAxLTgzMy0zMDMtMTg4MC4gSW4gb3JkZXIgdG8gZnVsZmlsbCB5b3VyIHJlcXVlc3QsIHdlIG1heSByZXF1aXJlIGFkZGl0aW9uYWwgcGVyc29uYWwgaW5mb3JtYXRpb24gZm9yIHB1cnBvc2VzIG9mIHZlcmlmeWluZyB5b3VyIGlkZW50aXR5LiBJZiB5b3UgbWFrZSBhIHJlcXVlc3QgdGhyb3VnaCBhbiBhdXRob3JpemVkIGFnZW50LCB3ZSBtYXkgcmVxdWlyZSBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIHRvIHZlcmlmeSB5b3VyIGF1dGhvcml6YXRpb24gb2YgdGhlIGFnZW50LjwvcD4NCjxwPjxzdHJvbmc+Jm5ic3A7PC9zdHJvbmc+PC9wPg0KPHA+PHN0cm9uZz5DaGFuZ2VzIHRvIFByaXZhY3kgTm90aWNlPC9zdHJvbmc+PC9wPg0KPHA+PGJyPldlIHJlc2VydmUgdGhlIHJpZ2h0IHRvIG1ha2UgY2hhbmdlcyB0byB0aGlzIFByaXZhY3kgTm90aWNlIGF0IGFueSB0aW1lLCB3aXRob3V0IG5vdGljZS4gV2Ugd2lsbCBub3RpZnkgeW91IGFib3V0IGNoYW5nZXMgdGhhdCBzaWduaWZpY2FudGx5IGltcGFjdCBvdXIgdXNlIG9mIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gYnkgcGxhY2luZyBhIHByb21pbmVudCBub3RpY2Ugb24gdGhpcyB3ZWJzaXRlIG9yIGJ5IHNlbmRpbmcgeW91IGFuIGVtYWlsLiBQbGVhc2UgcmV2aXNpdCB0aGlzIHBhZ2UgcGVyaW9kaWNhbGx5IHRvIHN0YXkgYXdhcmUgb2YgYW55IGNoYW5nZXMgdG8gdGhpcyBQcml2YWN5IE5vdGljZS4gRm9yIHRoZSBhdm9pZGFuY2Ugb2YgZG91YnQsIGRpc3B1dGVzIGFyaXNpbmcgaGVyZXVuZGVyIHdpbGwgYmUgcmVzb2x2ZWQgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBQcml2YWN5IE5vdGljZSBpbiBlZmZlY3QgYXQgdGhlIHRpbWUgdGhlIGRpc3B1dGUgYXJvc2UuPC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHA+PHN0cm9uZz5Db250YWN0IFVzPC9zdHJvbmc+PC9wPg0KPHA+PGJyPlBsZWFzZSBjb250YWN0IHVzIHdpdGggYW55IHF1ZXN0aW9ucywgY29tbWVudHMgb3IgY29uY2VybnMgYWJvdXQgdGhpcyBQcml2YWN5IE5vdGljZSBvciBvdXIgdXNlIG9mIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gYnkgZW1haWwgYXQgcHJpdmFjeUB0cmlidXRldGVjaC5jb20gb3IgYnkgbWFpbCBhdDo8L3A+DQo8cD48YnI+VHJpYnV0ZSBUZWNobm9sb2d5PGJyPjI1MDEgUGFybWVudGVyIFN0cmVldCwgU3VpdGUgMzAwQzxicj5NaWRkbGV0b24sIFdJIDUzNTYyPC9wPg0KPHA+Jm5ic3A7PC9wPg==
PGRpdiBpZD0iMTc3ODY4MTk4NiIgY2xhc3M9InVfMTc3ODY4MTk4NiBkbU5ld1BhcmFncmFwaCIgZGF0YS1lbGVtZW50LXR5cGU9InBhcmFncmFwaCIgZGF0YS12ZXJzaW9uPSI1IiBkYXRhLWFuaW0tZXh0ZW5kZWQ9ImV5SmtaWE5yZEc5d0lqcDdJblJ5YVdkblpYSWlPaUpsYm5SeVlXNWpaU0lzSW1GdWFXMWhkR2x2YmlJNkltWmhaR1ZKYmtOdmJXSnZJaXdpWkhWeVlYUnBiMjRpT2pFc0ltUmxiR0Y1SWpvd0xqVXNJbWx1ZEdWdWMybDBlU0k2TVN3aWNtVjJaWEp6WlNJNlptRnNjMlVzSW1ScGNpSTZJbWx1TFhCc1lXTmxJbjE5IiBkYXRhLWFuaW0tZGVza3RvcD0iZmFkZUluQ29tYm8iPg0KPHA+PHN0cm9uZz5UcmlidXRlIFRlY2hub2xvZ3kgVGVybXMgb2YgVXNlPC9zdHJvbmc+PC9wPg0KPHA+PGVtPkxhc3QgVXBkYXRlZDogQXByaWwgMjAsIDIwMjM8L2VtPjxicj48YnI+VGhlc2UgVGVybXMgb2YgVXNlLCB0b2dldGhlciB3aXRoIFRyaWJ1dGUgVGVjaG5vbG9neSdzIDxhIGhyZWY9Imh0dHBzOi8vd3d3LnRyaWJ1dGV0ZWNoLmNvbS9wcml2YWN5LXBvbGljeSIgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9vcGVuZXIiPjx1PlByaXZhY3kgUG9saWN5PC91PjwvYT4sIChjb2xsZWN0aXZlbHksIHRoZSAiVGVybXMiKSBzZXQgZm9ydGggdGhlIHRlcm1zIGFuZCBjb25kaXRpb25zIHRoYXQgYXBwbHkgdG8geW91ciBhY2Nlc3MgYW5kIHVzZSBvZiB0aGUgd2Vic2l0ZSBvZiBUcmlidXRlIFRlY2hub2xvZ3kgKGh0dHBzOi8vd3d3LnRyaWJ1dGV0ZWNoLmNvbS8pIGFuZCBvdXIgYXNzb2NpYXRlZCBzZXJ2aWNlcywgaW5jbHVkaW5nIFRyaWJ1dGUgVGVjaG5vbG9neSBzZXJ2aWNlcyB0aGF0IGFyZSBhdmFpbGFibGUgdGhyb3VnaCB0aGUgd2Vic2l0ZXMgb2Ygb3VyIGNsaWVudCBmdW5lcmFsIGhvbWVzIGFuZCBvdGhlciBmdW5lcmFsIHByb2Zlc3Npb25hbHMgKGVhY2gsIGEgJmxkcXVvO0NsaWVudCZyZHF1bzspIGFuZCBhbnkgb3RoZXIgd2Vic2l0ZXMgd2hlcmUgd2UgbGluayB0byB0aGVzZSBUZXJtcyAodG9nZXRoZXIsIHRoZSAiU2l0ZXMiKSwgd2hldGhlciBhcyBhIENsaWVudCwgZW5kIHVzZXIgb3IgY3VzdG9tZXIgb2YgYSBDbGllbnQsIG9yIG90aGVyd2lzZS4gU3VjaCBUcmlidXRlIFRlY2hub2xvZ3kgc2VydmljZXMgYXJlIHJlZmVycmVkIHRvIGhlcmVpbiBjb2xsZWN0aXZlbHkgYXMgdGhlICZsZHF1bztTZXJ2aWNlcy4mcmRxdW87IENlcnRhaW4gU2VydmljZXMgYWNjZXNzaWJsZSB0aHJvdWdoIHRoZSBTaXRlcyBtYXkgaGF2ZSB0aGVpciBvd24gdGVybXMgYW5kIGNvbmRpdGlvbnMgdGhhdCBhcHBseSB0byB5b3VyIHVzZSBvZiB0aG9zZSBwYXJ0aWN1bGFyIFNlcnZpY2VzLiZuYnNwOyBUaGVzZSBUZXJtcyBjb25zdGl0dXRlIGEgbGVnYWxseSBiaW5kaW5nIGFncmVlbWVudCBiZXR3ZWVuIHlvdSwgd2hldGhlciBwZXJzb25hbGx5IG9yIG9uIGJlaGFsZiBvZiBhbiBlbnRpdHkgKCJ5b3UiKSwgYW5kIHRoZSBhcHBsaWNhYmxlIGVudGl0eSByZWZlcnJlZCB0byBpbiBTZWN0aW9uIDEzIG9mIHRoZXNlIFRlcm1zICgiVHJpYnV0ZSBUZWNobm9sb2d5LCIgIndlLCIgInVzIiBhbmQgJmxkcXVvO291ciZyZHF1bzspIGNvbmNlcm5pbmcgeW91ciBhY2Nlc3MgdG8gYW5kIHVzZSBvZiB0aGUgU2VydmljZXMuPGJyPjxicj5CeSB1c2luZyBvciBhY2Nlc3NpbmcgdGhlIFNlcnZpY2VzLCB5b3UgYWdyZWUgdG8gdGhlc2UgVGVybXMsIGFzIG1heSBiZSB1cGRhdGVkIGZyb20gdGltZSB0byB0aW1lIGluIGFjY29yZGFuY2Ugd2l0aCBTZWN0aW9uIDkgYmVsb3cuIElmIHlvdSBkbyBub3QgYWdyZWUgdG8gdGhlIGZvbGxvd2luZyBUZXJtcywgZG8gbm90IGFjY2VzcyBvciB1c2UgdGhlIFNlcnZpY2VzLjwvcD4NCjxwPiZuYnNwOzwvcD4NCjxwPjxzdHJvbmc+PHU+Tm90aWNlIG9mIEJpbmRpbmcgQXJiaXRyYXRpb248L3U+PC9zdHJvbmc+PHN0cm9uZz4uJm5ic3A7IFRoZXNlIFRlcm1zIHByb3ZpZGUgdGhhdCBhbGwgZGlzcHV0ZXMgYmV0d2VlbiB5b3UgYW5kIHVzIHRoYXQgaW4gYW55IHdheSByZWxhdGUgdG8gdGhlc2UgVGVybXMgb3IgeW91ciB1c2Ugb2YgdGhlIFNlcnZpY2VzIHdpbGwgYmUgcmVzb2x2ZWQgYnkgQklORElORyBBUkJJVFJBVElPTi4gQUNDT1JESU5HTFksIFlPVSBBR1JFRSBUTyBHSVZFIFVQIFlPVVIgUklHSFQgVE8gR08gVE8gQ09VUlQgKElOQ0xVRElORyBJTiBBIENMQVNTIEFDVElPTiBQUk9DRUVESU5HKSB0byBhc3NlcnQgb3IgZGVmZW5kIHlvdXIgcmlnaHRzIHVuZGVyIHRoZXNlIFRlcm1zLiBZb3VyIHJpZ2h0cyB3aWxsIGJlIGRldGVybWluZWQgYnkgYSBORVVUUkFMIEFSQklUUkFUT1IgYW5kIE5PVCBhIGp1ZGdlIG9yIGp1cnkgYW5kIHlvdXIgY2xhaW1zIGNhbm5vdCBiZSBicm91Z2h0IGFzIGEgY2xhc3MgYWN0aW9uLiBQbGVhc2UgcmV2aWV3IFNlY3Rpb24gMTIgYmVsb3cgZW50aXRsZWQgJmxkcXVvO0ludGVycHJldGF0aW9ucyBhbmQgRGlzcHV0ZXMmcmRxdW87IGZvciB0aGUgZGV0YWlscyByZWdhcmRpbmcgeW91ciBhZ3JlZW1lbnQgdG8gYXJiaXRyYXRlIGFueSBkaXNwdXRlcyB3aXRoIHVzLjwvc3Ryb25nPjwvcD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT48c3Ryb25nPkFjY291bnQgU2VjdXJpdHkuPC9zdHJvbmc+Jm5ic3A7VG8gdXNlIHRoZSBTZXJ2aWNlcyB5b3UgbXVzdCAoaSkgYmUgYXQgbGVhc3QgZWlnaHRlZW4gKDE4KSB5ZWFycyBvZiBhZ2U7IChpaSkgaGF2ZSBub3QgcHJldmlvdXNseSBiZWVuIHN1c3BlbmRlZCBvciByZW1vdmVkIGZyb20gdGhlIFNlcnZpY2VzOyBhbmQgKGlpaSkgcmVnaXN0ZXIgZm9yIGFuZCB1c2UgdGhlIFNlcnZpY2VzIGluIGNvbXBsaWFuY2Ugd2l0aCBhbnkgYW5kIGFsbCBhcHBsaWNhYmxlIGxhd3MgYW5kIHJlZ3VsYXRpb25zLjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPjxzdHJvbmc+QWNjb3VudCBSZWdpc3RyYXRpb24uPC9zdHJvbmc+Jm5ic3A7VG8gYWNjZXNzIHNvbWUgZmVhdHVyZXMgb2YgdGhlIFNlcnZpY2VzLCB5b3UgbWF5IGJlIHJlcXVpcmVkIHRvIHJlZ2lzdGVyIGZvciBhbiBhY2NvdW50LiBXaGVuIHlvdSByZWdpc3RlciBmb3IgYW4gYWNjb3VudCwgd2UgbWF5IGFzayB5b3UgdG8gZ2l2ZSB1cyBjZXJ0YWluIGlkZW50aWZ5aW5nIGluZm9ybWF0aW9uIGFib3V0IHlvdXJzZWxmLCBpbmNsdWRpbmcgYnV0IG5vdCBsaW1pdGVkIHRvIHlvdXIgZW1haWwgYWRkcmVzcyBhbmQgb3RoZXIgY29udGFjdCBpbmZvcm1hdGlvbiwgYW5kIHRvIGNyZWF0ZSBhIHVzZXIgbmFtZSBhbmQgcGFzc3dvcmQgKCJSZWdpc3RyYXRpb24gSW5mb3JtYXRpb24iKS4gV2hlbiByZWdpc3RlcmluZyBmb3IgYW5kIG1haW50YWluaW5nIGFuIGFjY291bnQsIHlvdSBhZ3JlZSB0byBwcm92aWRlIHRydWUsIGFjY3VyYXRlLCBjdXJyZW50LCBhbmQgY29tcGxldGUgaW5mb3JtYXRpb24gYWJvdXQgeW91cnNlbGYuIFlvdSBhbHNvIGFncmVlIG5vdCB0byBpbXBlcnNvbmF0ZSBhbnlvbmUsIG1pc3JlcHJlc2VudCBhbnkgYWZmaWxpYXRpb24gd2l0aCBhbnlvbmUgZWxzZSwgdXNlIGZhbHNlIGluZm9ybWF0aW9uLCBvciBvdGhlcndpc2UgY29uY2VhbCB5b3VyIGlkZW50aXR5IGZyb20gVHJpYnV0ZSBUZWNobm9sb2d5IGZvciBhbnkgcHVycG9zZS4gWW91IGFyZSBzb2xlbHkgcmVzcG9uc2libGUgZm9yIG1haW50YWluaW5nIHRoZSBjb25maWRlbnRpYWxpdHkgYW5kIHNlY3VyaXR5IG9mIHlvdXIgcGFzc3dvcmQgYW5kIG90aGVyIFJlZ2lzdHJhdGlvbiBJbmZvcm1hdGlvbi4gRm9yIHlvdXIgcHJvdGVjdGlvbiBhbmQgdGhlIHByb3RlY3Rpb24gb2Ygb3RoZXIgdXNlcnMsIHdlIGFzayB5b3Ugbm90IHRvIHNoYXJlIHlvdXIgUmVnaXN0cmF0aW9uIEluZm9ybWF0aW9uIHdpdGggYW55b25lIGVsc2UuIElmIHlvdSBkbyBzaGFyZSB0aGlzIGluZm9ybWF0aW9uIHdpdGggYW55b25lLCB3ZSB3aWxsIGNvbnNpZGVyIHRoZWlyIGFjdGl2aXRpZXMgdG8gaGF2ZSBiZWVuIGF1dGhvcml6ZWQgYnkgeW91LiBJZiB5b3UgaGF2ZSByZWFzb24gdG8gYmVsaWV2ZSB0aGF0IHlvdXIgYWNjb3VudCBpcyBubyBsb25nZXIgc2VjdXJlLCB5b3UgbXVzdCBpbW1lZGlhdGVseSBub3RpZnkgdXMgYXQmbmJzcDt3ZWJzaXRlc0B0cmlidXRldGVjaC5jb20uPC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+PHN0cm9uZz5Zb3VyIFVzZSBvZiB0aGUgU2VydmljZXMgYW5kIFByb2hpYml0ZWQgQ29uZHVjdC48L3N0cm9uZz4mbmJzcDtZb3UgYXJlIGdyYW50ZWQgYSBsaW1pdGVkLCBub24tZXhjbHVzaXZlLCByZXZvY2FibGUgcmlnaHQgdG8gYWNjZXNzIGFuZCB1c2UgdGhlIFNlcnZpY2VzIHNvbGVseSBmb3IgeW91ciBwZXJzb25hbCBvciBub24tY29tbWVyY2lhbCB1c2U7IHByb3ZpZGVkLCB0aGF0IGlmIHlvdSBhcmUgYSBDbGllbnQsIHlvdXIgY29tbWVyY2lhbCB1c2UgaW4gY29ubmVjdGlvbiB3aXRoIHlvdXIgU2l0ZSBpcyBwZXJtaXR0ZWQgZm9yIHlvdXIgYnVzaW5lc3MuJm5ic3A7IEV4Y2VwdCBmb3IgdGhlIGxpbWl0ZWQgcmlnaHQgZXhwcmVzc2x5IGdyYW50ZWQgdG8geW91IGluIHRoZXNlIFRlcm1zLCBUcmlidXRlIFRlY2hub2xvZ3kgYW5kIGl0cyBsaWNlbnNvcnMgZXhwcmVzc2x5IHJlc2VydmUgYWxsIG90aGVyIHJpZ2h0cyBhbmQgbGljZW5zZXMgdG8gdGhlIFNlcnZpY2VzIGFuZCB0aGVpciBjb250ZW50LiBZb3UgYWdyZWUgbm90IHRvOjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPG9sPg0KPGxpPlVzZSB0aGUgU2VydmljZXMgZm9yIGFueSBpbGxlZ2FsIHB1cnBvc2UsIG9yIGluIHZpb2xhdGlvbiBvZiBhbnkgbG9jYWwsIHN0YXRlLCBuYXRpb25hbCwgb3IgaW50ZXJuYXRpb25hbCBsYXc7PC9saT4NCjwvb2w+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPG9sPg0KPGxpPlZpb2xhdGUgb3IgZW5jb3VyYWdlIG90aGVycyB0byB2aW9sYXRlIHRoZSByaWdodHMgb2YgdGhpcmQgcGFydGllcywgaW5jbHVkaW5nIGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodHM7PC9saT4NCjwvb2w+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPG9sPg0KPGxpPlBvc3QsIHVwbG9hZCwgb3IgZGlzdHJpYnV0ZSBhbnkgY29udGVudCB0aGF0IGlzIHVubGF3ZnVsLCBkZWZhbWF0b3J5LCBsaWJlbG91cywgaW5hY2N1cmF0ZSwgb3IgdGhhdCBhIHJlYXNvbmFibGUgcGVyc29uIGNvdWxkIGRlZW0gdG8gYmUgb2JqZWN0aW9uYWJsZSwgcHJvZmFuZSwgaW5kZWNlbnQsIHBvcm5vZ3JhcGhpYywgaGFyYXNzaW5nLCB0aHJlYXRlbmluZywgaGF0ZWZ1bCwgb3Igb3RoZXJ3aXNlIGluYXBwcm9wcmlhdGUsIG9yIHRoYXQgdmlvbGF0ZXMgb3IgaW5mcmluZ2VzIHRoZSBwcml2YWN5LCBjb3B5cmlnaHQsIHRyYWRlbWFyaywgdHJhZGUgZHJlc3MsIHRyYWRlIHNlY3JldHMgb3IgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBvZiBhbnkgcGVyc29uIG9yIGVudGl0eTs8L2xpPg0KPC9vbD4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8b2w+DQo8bGk+SW50ZXJmZXJlIGluIGFueSB3YXkgd2l0aCwgYnlwYXNzIG9yIGF0dGVtcHQgdG8gYnlwYXNzIGFueSBzZWN1cml0eS1yZWxhdGVkIGZlYXR1cmVzIG9mIHRoZSBTZXJ2aWNlczs8L2xpPg0KPC9vbD4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8b2w+DQo8bGk+SW50ZXJmZXJlIHdpdGggdGhlIG9wZXJhdGlvbiBvciBhbnkgdXNlcidzIGVuam95bWVudCBvZiB0aGUgU2VydmljZXMsIGluY2x1ZGluZyBieSB1cGxvYWRpbmcgb3Igb3RoZXJ3aXNlIGRpc3NlbWluYXRpbmcgdmlydXNlcywgYWR3YXJlLCBzcHl3YXJlLCB3b3Jtcywgb3Igb3RoZXIgbWFsaWNpb3VzIGNvZGUsIG1ha2luZyB1bnNvbGljaXRlZCBvZmZlcnMgb3IgYWR2ZXJ0aXNlbWVudHMgdG8gb3RoZXIgdXNlcnMsIG9yIGF0dGVtcHRpbmcgdG8gY29sbGVjdCBwZXJzb25hbCBpbmZvcm1hdGlvbiBhYm91dCB1c2VycyBvciB0aGlyZCBwYXJ0aWVzIHdpdGhvdXQgdGhlaXIgY29uc2VudDs8L2xpPg0KPC9vbD4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8b2w+DQo8bGk+RGVlcC1saW5rIHRvIGFueSBmZWF0dXJlIG9yIGNvbnRlbnQgb24gdGhlIFNlcnZpY2VzLCBvciBhY2Nlc3MsIG1vbml0b3Igb3IgY29weSBhbnkgY29udGVudCBvciBpbmZvcm1hdGlvbiBvZiB0aGUgU2VydmljZXMgdXNpbmcgYW55IHJvYm90LCBzcGlkZXIsIHNjcmFwZXIsIGNyYXdsZXIgb3Igb3RoZXIgYXV0b21hdGVkIG1lYW5zIG9yIGFueSBtYW51YWwgcHJvY2VzcyBmb3IgYW55IHB1cnBvc2Ugd2l0aG91dCBUcmlidXRlIFRlY2hub2xvZ3kmcnNxdW87cyBleHByZXNzIHdyaXR0ZW4gcGVybWlzc2lvbjs8L2xpPg0KPC9vbD4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8b2w+DQo8bGk+VXNlLCByZXByb2R1Y2UsIG1vZGlmeSwgZGlzdHJpYnV0ZSBvciBzdG9yZSBhbnkgcGFydCBvZiB0aGUgU2VydmljZXMgKGluY2x1ZGluZyBvYml0dWFyaWVzLCBldmVudCBpbmZvcm1hdGlvbiwgb3Igb3RoZXIgY29udGVudCkgZm9yIGFueSBwdXJwb3NlIHdpdGhvdXQgdGhlIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbiBvZiBUcmlidXRlIFRlY2hub2xvZ3k7PC9saT4NCjwvb2w+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPG9sPg0KPGxpPlBlcmZvcm0gYW55IGZyYXVkdWxlbnQgYWN0aXZpdHksIGluY2x1ZGluZyBpbXBlcnNvbmF0aW5nIGFueSBwZXJzb24gb3IgZW50aXR5LCBjbGFpbWluZyBmYWxzZSBhZmZpbGlhdGlvbnMsIGFjY2Vzc2luZyB0aGUgYWNjb3VudHMgb2Ygb3RoZXIgdXNlcnMgd2l0aG91dCBwZXJtaXNzaW9uLCBvciBmYWxzaWZ5aW5nIHlvdXIgaWRlbnRpdHkgb3IgYW55IGluZm9ybWF0aW9uIGFib3V0IHlvdSwgaW5jbHVkaW5nIGFnZSBvciBkYXRlIG9mIGJpcnRoOzwvbGk+DQo8L29sPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxvbD4NCjxsaT5Qb3N0LCBkaXNzZW1pbmF0ZSwgc3VibWl0LCB0cmFuc21pdCwgaG9zdCwgc2hhcmUsIGFuZC9vciBwdWJsaXNoIGFkdmVydGlzZW1lbnRzIG9yIHNvbGljaXRhdGlvbnMgb2YgYnVzaW5lc3M7IG9yPC9saT4NCjwvb2w+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPG9sPg0KPGxpPlNlbGwgb3Igb3RoZXJ3aXNlIHRyYW5zZmVyIHRoZSBhY2Nlc3MgZ3JhbnRlZCBoZXJlaW4uPC9saT4NCjwvb2w+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPjxzdHJvbmc+VGhpcmQgUGFydHkgQ29udGVudC48L3N0cm9uZz4mbmJzcDtUaGUgU2VydmljZXMgbWF5IGNvbnRhaW4gbGlua3MgdG8gdGhpcmQgcGFydHkgd2Vic2l0ZXMgYW5kIHNlcnZpY2VzLiBUcmlidXRlIFRlY2hub2xvZ3kgcHJvdmlkZXMgc3VjaCBsaW5rcyBhcyBhIGNvbnZlbmllbmNlLCBhbmQgZG9lcyBub3QgY29udHJvbCBvciBlbmRvcnNlIHRoZXNlIHdlYnNpdGVzIGFuZCBzZXJ2aWNlcy4gWW91IGFja25vd2xlZGdlIGFuZCBhZ3JlZSB0aGF0IFRyaWJ1dGUgVGVjaG5vbG9neSBoYXMgbm90IHJldmlld2VkIHRoZSBjb250ZW50LCBhZHZlcnRpc2luZywgcHJvZHVjdHMsIHNlcnZpY2VzLCBvciBvdGhlciBtYXRlcmlhbHMgdGhhdCBhcHBlYXIgb24gc3VjaCB0aGlyZCBwYXJ0eSB3ZWJzaXRlcyBvciBzZXJ2aWNlcywgYW5kIGlzIG5vdCByZXNwb25zaWJsZSBmb3IgdGhlIGxlZ2FsaXR5LCBhY2N1cmFjeSwgb3IgYXBwcm9wcmlhdGVuZXNzIG9mIGFueSBzdWNoIGNvbnRlbnQsIGFuZCBzaGFsbCBub3QgYmUgcmVzcG9uc2libGUgb3IgbGlhYmxlLCBkaXJlY3RseSBvciBpbmRpcmVjdGx5LCBmb3IgYW55IGRhbWFnZSBvciBsb3NzIGNhdXNlZCBvciBhbGxlZ2VkIHRvIGJlIGNhdXNlZCBieSBvciBpbiBjb25uZWN0aW9uIHdpdGggdGhlIHVzZSBvZiBhbnkgc3VjaCB0aGlyZCBwYXJ0eSB3ZWJzaXRlcyBvciBzZXJ2aWNlcy48L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT48c3Ryb25nPkludGVsbGVjdHVhbCBQcm9wZXJ0eS48L3N0cm9uZz4mbmJzcDtZb3UgYWNrbm93bGVkZ2UgYW5kIGFncmVlIHRoYXQgd2hlbiB5b3Ugc3VibWl0IGFuIG9iaXR1YXJ5LCBwb3N0IGNvbW1lbnRzLCBzdWJtaXQgYSB0cmlidXRlIHZpZGVvIG9yIGltYWdlLCBvciBwb3N0IG9yIHN1Ym1pdCBvdGhlciBjb250ZW50ICh0b2dldGhlciwgIkNvbnRlbnQiKSB0byBUcmlidXRlIFRlY2hub2xvZ3kgb3IgdmlhIHRoZSBTZXJ2aWNlcywgaW5jbHVkaW5nIHRvIGFueSB3ZWJzaXRlIG9mIGFueSBmdW5lcmFsIGhvbWUgb3Igb3RoZXIgZnVuZXJhbCBwcm9mZXNzaW9uYWxzIHByb3ZpZGVkIGJ5IFRyaWJ1dGUgVGVjaG5vbG9neSwgc3VjaCBDb250ZW50IHdpbGwgYmUgc2hhcmVkIHdpdGggYW5kIHN0b3JlZCBieSBUcmlidXRlIFRlY2hub2xvZ3kgYW5kIGl0cyBhZmZpbGlhdGVzIGFuZCBwYXJ0bmVycywgaW5jbHVkaW5nIGJ1dCBub3QgbGltaXRlZCB0byBUcmlidXRlIEFyY2hpdmUgKHRyaWJ1dGVhcmNoaXZlLmNvbSksIGFuZCBtYXkgYWxzbyBiZSB1c2VkIGluIGNvbm5lY3Rpb24gd2l0aCBvdGhlciBwcm9kdWN0cyBhbmQgc2VydmljZXMgcHJvdmlkZWQgYnkgVHJpYnV0ZSBUZWNobm9sb2d5IGFuZCBpdHMgYWZmaWxpYXRlcyBhbmQgcGFydG5lcnMgaW4gY29ubmVjdGlvbiB3aXRoIHRoZSBTaXRlcywgaW5jbHVkaW5nIHByb2R1Y3RzIHN1Y2ggYXMgVHJpYnV0ZSBCb29rLiBXaXRoIHJlc3BlY3QgdG8gYW55IGltYWdlcyBvciB2aWRlb3MgdGhhdCB5b3UgcG9zdCBvciBwcm92aWRlIGluIGNvbm5lY3Rpb24gd2l0aCB0aGUgU2VydmljZXMsIHlvdSByZXByZXNlbnQgYW5kIHdhcnJhbnQgdGhhdCB5b3UgaGF2ZSBzZWN1cmVkIHRoZSBwZXJtaXNzaW9uIG9mIGFueSBsaXZpbmcgcGVyc29ucyBkZXBpY3RlZCB0aGVyZWluIHRvIChpKSBwb3N0IHRoZW0sIGFuZCAoaWkpIHRoZSB1c2Ugb2Ygc3VjaCBDb250ZW50IGFzIHNldCBvdXQgaW4gdGhlc2UgVGVybXMuIFlvdSBoZXJlYnkgZ3JhbnQgdG8gVHJpYnV0ZSBUZWNobm9sb2d5IGFuZCBpdHMgYWdlbnRzLCBhdHRvcm5leXMsIHJlcHJlc2VudGF0aXZlcywgcHJlZGVjZXNzb3JzLCBzdWNjZXNzb3JzLCBhZmZpbGlhdGVzLCBwYXJlbnRzLCBzdWJzaWRpYXJpZXMsIG5vbWluZWVzLCBsaWNlbnNlZXMsIGV4ZWN1dG9ycywgYWRtaW5pc3RyYXRvcnMsIGFzc2lnbnMsIGZ1bmVyYWwgaG9tZXMgb3Igb3RoZXIgZnVuZXJhbCBwcm9mZXNzaW9uYWxzIHRoYXQgYXJlIG91ciBDbGllbnRzLCBhbmQgdGhvc2UgYWN0aW5nIHdpdGggYXV0aG9yaXR5IG9mIHRoZSBmb3JlZ29pbmcgKGNvbGxlY3RpdmVseSwgJmxkcXVvO1RyaWJ1dGUgVGVjaG5vbG9neSBQYXJ0aWVzJnJkcXVvOyksIGEgd29ybGR3aWRlLCBub24tZXhjbHVzaXZlLCBwZXJwZXR1YWwsIGlycmV2b2NhYmxlLCByb3lhbHR5IGZyZWUsIHRyYW5zZmVyYWJsZSwgYW5kIHN1YmxpY2Vuc2FibGUgcmlnaHQgYW5kIGxpY2Vuc2UgdG8gdXNlLCBzaGFyZSwgcmVwcm9kdWNlLCBkaXN0cmlidXRlLCBzZWxsLCBwcmVwYXJlIGRlcml2YXRpdmUgd29ya3Mgb2YsIGV4Y2VycHQsIHB1YmxpY2x5IGRpc3BsYXksIHB1YmxpY2x5IHBlcmZvcm0sIGhvc3QsIGNhY2hlLCByb3V0ZSwgdHJhbnNtaXQsIHN0b3JlLCByZWZvcm1hdCwgZXhjZXJwdCwgZWRpdCwgYXJjaGl2ZSwgaW5kZXgsIGNyZWF0ZSBhbGdvcml0aG1zIGJhc2VkIG9uLCBtb2RpZnksIGFuZC9vciB0cmFuc2NvZGUgc3VjaCBDb250ZW50IGluIGFueSBhbmQgYWxsIGZvcm1hdHMgYW5kIHRocm91Z2ggYW55IGFuZCBhbGwgbWVhbnMgYW5kIGNoYW5uZWxzLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRocm91Z2ggZG93bmxvYWRpbmcgdGVjaG5vbG9naWVzLCBvbiB0aGUgaW50ZXJuZXQsIGFuZCBpbiBwdWJsaWNhdGlvbnMgYW5kIGFkdmVydGlzZW1lbnRzLiZuYnNwOyBZb3UgYWxzbyBoZXJlYnkgaXJyZXZvY2FibHkgd2FpdmUsIGFzIGFnYWluc3QgdGhlIFRyaWJ1dGUgVGVjaG5vbG9neSBQYXJ0aWVzLCBhbGwgbW9yYWwgcmlnaHRzIGFuZCByaWdodHMgb2YgcmVzdHJhaW50IGluIHN1Y2ggQ29udGVudC4mbmJzcDsgVGhlIGxpY2Vuc2UsIGNvbnNlbnQsIGFuZCByZWxlYXNlIGhlcmVpbiBhcmUgYmluZGluZyB1cG9uIHlvdSBhbmQgeW91ciBoZWlycywgZXhlY3V0b3JzLCBhZG1pbmlzdHJhdG9ycywgc3VjY2Vzc29ycywgbGljZW5zZWVzLCBhbmQgYXNzaWducy48L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxwPkV4Y2VwdCBmb3IgQ29udGVudCwgYWxsIHRleHQsIGdyYXBoaWNzLCBwaG90b2dyYXBocywgdmlkZW9zLCB1c2VyIGludGVyZmFjZXMsIHRyYWRlbWFya3MsIGxvZ29zLCB0YWdsaW5lcywgYW5pbWF0aW9ucywgc291bmRzLCBtdXNpYyBhbmQgb3RoZXIgbWF0ZXJpYWxzIGNvbnRhaW5lZCBvbiBvciBjb21wcmlzaW5nIHRoZSBTZXJ2aWNlcywgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgZGVzaWduLCBzdHJ1Y3R1cmUsIHNlbGVjdGlvbiwgb3JnYW5pemF0aW9uLCBjb21waWxhdGlvbiwgZGlzcGxheSwgYXJyYW5nZW1lbnQsIGV4cHJlc3Npb24sIGFuZCAmbGRxdW87bG9vayBhbmQgZmVlbCZyZHF1bzsgb2YgdGhlIFNpdGVzIGFuZCBTZXJ2aWNlcywgYW5kIHRoZSBzb2Z0d2FyZSBjb21wcmlzaW5nIGFuZC9vciBlbWJvZHlpbmcgdGhlIGZvcmVnb2luZyAoY29sbGVjdGl2ZWx5LCB0aGUgJmxkcXVvO1RyaWJ1dGUgVGVjaG5vbG9neSBNYXRlcmlhbHMmcmRxdW87KSwgYXJlIG93bmVkLCBjb250cm9sbGVkLCBvciBsaWNlbnNlZCBieSBvciB0byBUcmlidXRlIFRlY2hub2xvZ3ksIGFuZCBhcmUgcHJvdGVjdGVkIHVuZGVyIGFwcGxpY2FibGUgaW50ZWxsZWN0dWFsIHByb3BlcnR5IGxhd3MsIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gY29weXJpZ2h0LCB0cmFkZSBkcmVzcywgdHJhZGVtYXJrLCBhbmQvb3IgcGF0ZW50IGxhd3MuJm5ic3A7IFlvdXIgdXNlIG9mIHRoZSBTZXJ2aWNlcyBnaXZlcyB5b3Ugbm8gb3duZXJzaGlwIHJpZ2h0cyBpbiB0aGUgVHJpYnV0ZSBUZWNobm9sb2d5IE1hdGVyaWFscy48L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD5UcmlidXRlIFRlY2hub2xvZ3ksIG9yIHRoaXJkIHBhcnRpZXMgZnJvbSB3aG9tIFRyaWJ1dGUgVGVjaG5vbG9neSBoYXMgcGVybWlzc2lvbiwgb3duIHRoZSB0cmFkZW1hcmtzIGFuZCBzZXJ2aWNlIG1hcmtzIHRoYXQgYXJlIHVzZWQgaW4gdGhlIFNlcnZpY2VzLiZuYnNwOyBBbGwgcmlnaHRzIGFyZSByZXNlcnZlZCBieSBUcmlidXRlIFRlY2hub2xvZ3kgYW5kIHNhaWQgdGhpcmQgcGFydGllcywgYW5kIG5vIGltcGxpZWQgcmlnaHRzIGFyZSBncmFudGVkIHRvIHlvdSBvciBhbnkgdGhpcmQgcGFydGllcy4mbmJzcDsgVGhlc2UgYW5kIG90aGVyIGdyYXBoaWNzLCBsb2dvcywgc2VydmljZSBtYXJrcywgdHJhZGVtYXJrcywgYW5kIHRyYWRlIGRyZXNzIG9mIFRyaWJ1dGUgVGVjaG5vbG9neSBhbmQgaXRzIGxpY2Vuc29ycyBtYXkgbm90IGJlIHVzZWQgd2l0aG91dCBwcmlvciB3cml0dGVuIGNvbnNlbnQgb2YgVHJpYnV0ZSBUZWNobm9sb2d5IG9yIGl0cyBsaWNlbnNvciwgYXMgdGhlIGNhc2UgbWF5IGJlLiZuYnNwOyBXaXRob3V0IGxpbWl0aW5nIHRoZSBmb3JlZ29pbmcsIG5vIFRyaWJ1dGUgVGVjaG5vbG9neSB0cmFkZW1hcmsgb3IgdHJhZGUgZHJlc3MgbWF5IGJlIHVzZWQgaW4gY29ubmVjdGlvbiB3aXRoIGFueSBwcm9kdWN0IG9yIHNlcnZpY2UgdGhhdCBpcyBub3QgVHJpYnV0ZSBUZWNobm9sb2d5J3MgaW4gYW55IG1hbm5lciB0aGF0IGlzIGxpa2VseSB0byBjYXVzZSBjb25mdXNpb24gYW1vbmcgdXNlcnMsIG9yIGluIGFueSBtYW5uZXIgdGhhdCBkaXNwYXJhZ2VzIG9yIGRpc2NyZWRpdHMgVHJpYnV0ZSBUZWNobm9sb2d5LiZuYnNwOzwvcD4NCjxwPiZuYnNwOzwvcD4NCjxwPllvdSBncmFudCBUcmlidXRlIFRlY2hub2xvZ3kgYSBwZXJwZXR1YWwsIHJveWFsdHkgZnJlZSwgaXJyZXZvY2FibGUsIHN1Yi1saWNlbnNhYmxlLCBhc3NpZ25hYmxlLCBhbmQgdHJhbnNmZXJhYmxlIGxpY2Vuc2UgdG8gYW55IGZlZWRiYWNrLCBzdWJtaXNzaW9ucywgaWRlYXMsIGNvbmNlcHRzLCBrbm93IGhvdywgb3IgdGVjaG5pcXVlcyB0aGF0IHlvdSBzdWJtaXQgYWJvdXQgdGhlIFNlcnZpY2VzIG9yIFRyaWJ1dGUgVGVjaG5vbG9neSBNYXRlcmlhbHMgZm9yIGFueSBwdXJwb3NlIChpbmNsdWRpbmcsIHdpdGhvdXQgbGltaXRhdGlvbiwgY29tbWVyY2lhbGl6YXRpb24pIGFuZCB3aXRob3V0IGNvbXBlbnNhdGlvbiB0byB5b3UuPC9wPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPjxzdHJvbmc+VXNlciBDb250ZW50Ljwvc3Ryb25nPiZuYnNwO1lvdSByZXByZXNlbnQgYW5kIHdhcnJhbnQgdGhhdCB5b3Ugb3duIG9yIG90aGVyd2lzZSBoYXZlIHRoZSByaWdodHMsIGxpY2Vuc2VzLCBjb25zZW50cyBhbmQgcGVybWlzc2lvbnMgbmVjZXNzYXJ5IHRvIHByb3ZpZGUgVHJpYnV0ZSBUZWNobm9sb2d5IHRoZSBDb250ZW50IHlvdSBwcm92aWRlIGluIGNvbm5lY3Rpb24gd2l0aCB0aGUgU2VydmljZXMuIElmIHlvdSBiZWxpZXZlIHRoYXQgeW91ciBDb250ZW50IG9yIGFueSBvdGhlciBtYXRlcmlhbCBwb3N0ZWQgaW4gY29ubmVjdGlvbiB3aXRoIHRoZSBTZXJ2aWNlcyBoYXMgYmVlbiB1c2VkIGluIGEgd2F5IHRoYXQgY29uc3RpdHV0ZXMgY29weXJpZ2h0IGluZnJpbmdlbWVudCwgcGxlYXNlIG5vdGlmeSB1cyBmb2xsb3dpbmcgdGhlIHByb2NlZHVyZXMgc2V0IGZvcnRoIGluIHRoaXMgU2VjdGlvbi48L2xpPg0KPC9vbD4NCjxwPjxzdHJvbmc+Jm5ic3A7PC9zdHJvbmc+PC9wPg0KPHA+V2UgcmVzcGVjdCB0aGUgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBvZiBvdGhlcnMgYW5kIGV4cGVjdCBvdXIgdXNlcnMgdG8gZG8gdGhlIHNhbWUuIEluIGFjY29yZGFuY2Ugd2l0aCB0aGUgRGlnaXRhbCBNaWxsZW5uaXVtIENvcHlyaWdodCBBY3QsIHdlIHdpbGwgcmVzcG9uZCBwcm9tcHRseSB0byBub3RpY2VzIG9mIGFsbGVnZWQgaW5mcmluZ2VtZW50IHRoYXQgYXJlIHJlcG9ydGVkIHRvIG91ciBkZXNpZ25hdGVkIENvcHlyaWdodCBBZ2VudCwgaWRlbnRpZmllZCBiZWxvdy48L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD48dT5Ob3RpY2VzIG9mIEFsbGVnZWQgSW5mcmluZ2VtZW50PC91Pjo8L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD5JZiB5b3UgYXJlIGEgY29weXJpZ2h0IG93bmVyLCBhdXRob3JpemVkIHRvIGFjdCBvbiBiZWhhbGYgb2Ygb25lLCBvciBhdXRob3JpemVkIHRvIGFjdCB1bmRlciBhbnkgZXhjbHVzaXZlIHJpZ2h0IHVuZGVyIGNvcHlyaWdodCwgcGxlYXNlIHJlcG9ydCBhbGxlZ2VkIGNvcHlyaWdodCBpbmZyaW5nZW1lbnRzIHRha2luZyBwbGFjZSBvbiBvciB0aHJvdWdoIG91ciBTZXJ2aWNlcyBieSBzZW5kaW5nIHVzIGEgbm90aWNlICgmbGRxdW87Tm90aWNlJnJkcXVvOykgY29tcGx5aW5nIHdpdGggdGhlIGZvbGxvd2luZyByZXF1aXJlbWVudHMuPC9wPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPklkZW50aWZ5IHRoZSBjb3B5cmlnaHRlZCB3b3JrcyB0aGF0IHlvdSBjbGFpbSBoYXZlIGJlZW4gaW5mcmluZ2VkLjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPklkZW50aWZ5IHRoZSBtYXRlcmlhbCBvciBsaW5rIHlvdSBjbGFpbSBpcyBpbmZyaW5naW5nIChvciB0aGUgc3ViamVjdCBvZiBpbmZyaW5naW5nIGFjdGl2aXR5KSBhbmQgdGhhdCBhY2Nlc3MgdG8gd2hpY2ggaXMgdG8gYmUgZGlzYWJsZWQsIGluY2x1ZGluZyBhdCBhIG1pbmltdW0sIGlmIGFwcGxpY2FibGUsIHRoZSBVUkwgb2YgdGhlIGxpbmsgc2hvd24gb24gdGhlIFNpdGUgd2hlcmUgc3VjaCBtYXRlcmlhbCBtYXkgYmUgZm91bmQuPC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+UHJvdmlkZSB5b3VyIG1haWxpbmcgYWRkcmVzcywgdGVsZXBob25lIG51bWJlciwgYW5kLCBpZiBhdmFpbGFibGUsIGVtYWlsIGFkZHJlc3MuPC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+SW5jbHVkZSBib3RoIG9mIHRoZSBmb2xsb3dpbmcgc3RhdGVtZW50cyBpbiB0aGUgYm9keSBvZiB0aGUgTm90aWNlOjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPHA+IkkgaGVyZWJ5IHN0YXRlIHRoYXQgSSBoYXZlIGEgZ29vZCBmYWl0aCBiZWxpZWYgdGhhdCB0aGUgZGlzcHV0ZWQgdXNlIG9mIHRoZSBjb3B5cmlnaHRlZCBtYXRlcmlhbCBpcyBub3QgYXV0aG9yaXplZCBieSB0aGUgY29weXJpZ2h0IG93bmVyLCBpdHMgYWdlbnQsIG9yIHRoZSBsYXcgKGUuZy4sIGFzIGEgZmFpciB1c2UpLiI8L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD4iSSBoZXJlYnkgc3RhdGUgdGhhdCB0aGUgaW5mb3JtYXRpb24gaW4gdGhpcyBOb3RpY2UgaXMgYWNjdXJhdGUgYW5kLCB1bmRlciBwZW5hbHR5IG9mIHBlcmp1cnksIHRoYXQgSSBhbSB0aGUgb3duZXIsIG9yIGF1dGhvcml6ZWQgdG8gYWN0IG9uIGJlaGFsZiBvZiB0aGUgb3duZXIsIG9mIHRoZSBjb3B5cmlnaHQgb3Igb2YgYW4gZXhjbHVzaXZlIHJpZ2h0IHVuZGVyIHRoZSBjb3B5cmlnaHQgdGhhdCBpcyBhbGxlZ2VkbHkgaW5mcmluZ2VkLiI8L3A+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+UHJvdmlkZSB5b3VyIGZ1bGwgbGVnYWwgbmFtZSBhbmQgeW91ciBlbGVjdHJvbmljIG9yIHBoeXNpY2FsIHNpZ25hdHVyZS48L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxwPlBsZWFzZSBkZWxpdmVyIHRoaXMgTm90aWNlLCB3aXRoIGFsbCBpdGVtcyBjb21wbGV0ZWQsIHRvIG91ciBkZXNpZ25hdGVkIENvcHlyaWdodCBBZ2VudCBhdCB0aGUgZm9sbG93aW5nIGFkZHJlc3M6PC9wPg0KPHA+Jm5ic3A7PC9wPg0KPHA+Q29weXJpZ2h0IEFnZW50PC9wPg0KPHA+Yy9vIFRyaWJ1dGUgVGVjaG5vbG9neTwvcD4NCjxwPjI1MDEgUGFybWVudGVyIFN0cmVldCwgU3VpdGUgMzAwQzwvcD4NCjxwPk1pZGRsZXRvbiwgV0kgNTM1NjI8L3A+DQo8cD5QaG9uZTogODY2LTMwMy0xODgwPC9wPg0KPHA+RW1haWw6IGNvcHlyaWdodEB0cmlidXRldGVjaC5jb208L3A+DQo8cD4mbmJzcDs8L3A+DQo8cD5UcmlidXRlIFRlY2hub2xvZ3kgaGFzIGFkb3B0ZWQgYW5kIGltcGxlbWVudHMgYSBwb2xpY3kgdGhhdCBwcm92aWRlcyBmb3IgdGVybWluYXRpb24gaW4gYXBwcm9wcmlhdGUgY2lyY3Vtc3RhbmNlcyBvZiBhY2NvdW50cyBvZiB1c2VycyB3aG8gcmVwZWF0ZWRseSBpbmZyaW5nZSBjb3B5cmlnaHQgb3Igb3RoZXIgaW50ZWxsZWN0dWFsIHByb3BlcnR5IHJpZ2h0cyBvZiBUcmlidXRlIFRlY2hub2xvZ3kgb3Igb3RoZXJzLiZuYnNwOzwvcD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT48c3Ryb25nPkluZGVtbmlmaWNhdGlvbi48L3N0cm9uZz4mbmJzcDtZb3UgYWdyZWUgdGhhdCB5b3Ugd2lsbCBiZSBwZXJzb25hbGx5IHJlc3BvbnNpYmxlIGZvciB5b3VyIHVzZSBvZiB0aGUgU2VydmljZXMsIGFuZCB5b3UgYWdyZWUgdG8gZGVmZW5kLCBpbmRlbW5pZnksIGFuZCBob2xkIGhhcm1sZXNzIFRyaWJ1dGUgVGVjaG5vbG9neSwgaXRzIGFmZmlsaWF0ZXMsIGFuZCBlYWNoIG9mIHRoZWlyIHJlc3BlY3RpdmUgZGlyZWN0b3JzLCBvZmZpY2VycywgZW1wbG95ZWVzIGFuZCBhZ2VudHMgZnJvbSBhbmQgYWdhaW5zdCBhbnkgYW5kIGFsbCBjbGFpbXMsIGxpYWJpbGl0aWVzLCBkYW1hZ2VzLCBsb3NzZXMsIGFuZCBleHBlbnNlcyAoaW5jbHVkaW5nIGF0dG9ybmV5cycgYW5kIGFjY291bnRpbmcgZmVlcyBhbmQgY29zdHMpLCBhcmlzaW5nIG91dCBvZiBvciBpbiBhbnkgd2F5IGNvbm5lY3RlZCB3aXRoIChpKSB5b3VyIGFjY2VzcyB0bywgdXNlIG9mLCBvciBhbGxlZ2VkIHVzZSBvZiB0aGUgU2VydmljZXMsIGluY2x1ZGluZywgd2l0aG91dCBsaW1pdGF0aW9uLCBpbnZvbHZpbmcgYW55IENvbnRlbnQgeW91IHBvc3Qgb3Igc3VibWl0IHRvIHVzIG9yIGluIGNvbm5lY3Rpb24gd2l0aCB0aGUgU2VydmljZXM7IChpaSkgeW91ciB2aW9sYXRpb24gb2YgdGhlIFRlcm1zIG9yIGFueSBhcHBsaWNhYmxlIGxhdyBvciByZWd1bGF0aW9uOyAoaWlpKSB5b3VyIHZpb2xhdGlvbiBvZiBhbnkgdGhpcmQgcGFydHkgcmlnaHQsIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gYW55IGludGVsbGVjdHVhbCBwcm9wZXJ0eSByaWdodCwgcHVibGljaXR5LCBjb25maWRlbnRpYWxpdHksIHByb3BlcnR5LCBvciBwcml2YWN5IHJpZ2h0OyAoaXYpIGFueSBkaXNwdXRlcyBvciBpc3N1ZXMgYmV0d2VlbiB5b3UgYW5kIGFueSB0aGlyZCBwYXJ0eTsgb3IgKHYpIGFjY2VzcyB0bywgdXNlIG9mLCBvciBhbGxlZ2VkIHVzZSBvZiB0aGUgU2VydmljZXMgYnkgYW55b25lIGFjY2Vzc2luZyB0aGUgU2VydmljZXMgdXNpbmcgeW91ciB1c2VyIG5hbWUgYW5kIHBhc3N3b3JkLiBUcmlidXRlIFRlY2hub2xvZ3kgcmVzZXJ2ZXMgdGhlIHJpZ2h0LCBhdCBvdXIgb3duIGV4cGVuc2UsIHRvIGFzc3VtZSB0aGUgZXhjbHVzaXZlIGRlZmVuc2UgYW5kIGNvbnRyb2wgb2YgYW55IG1hdHRlciBvdGhlcndpc2Ugc3ViamVjdCB0byBpbmRlbW5pZmljYXRpb24gYnkgeW91LCBhbmQgaW4gc3VjaCBjYXNlLCB5b3UgYWdyZWUgdG8gY29vcGVyYXRlIHdpdGggb3VyIGRlZmVuc2Ugb2Ygc3VjaCBjbGFpbS4gRm9yIHRoZSBhdm9pZGFuY2Ugb2YgZG91YnQgYW5kIHdpdGhvdXQgbGltaXRpbmcgdGhlIGZvcmVnb2luZywgeW91IGFncmVlIHRvIGluZGVtbmlmeSBUcmlidXRlIFRlY2hub2xvZ3kgYWdhaW5zdCBhbnkgY2xhaW1zIHRoYXQgQ29udGVudCB5b3Ugc3VibWl0IHRvIFRyaWJ1dGUgVGVjaG5vbG9neSB2aW9sYXRlcyB0aGUgaW50ZWxsZWN0dWFsIHByb3BlcnR5IGFuZC9vciBwcml2YWN5IHJpZ2h0cyBvZiBhbnkgcGVyc29uIG9yIHRoaXJkIHBhcnR5LjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPjxzdHJvbmc+VGVybWluYXRpb24uPC9zdHJvbmc+Jm5ic3A7SWYgeW91IHZpb2xhdGUgdGhlc2UgVGVybXMsIHlvdXIgcGVybWlzc2lvbiB0byB1c2UgdGhlIFNlcnZpY2VzIHdpbGwgYXV0b21hdGljYWxseSB0ZXJtaW5hdGUuIEluIGFkZGl0aW9uLCBUcmlidXRlIFRlY2hub2xvZ3kgaW4gaXRzIHNvbGUgZGlzY3JldGlvbiBtYXkgc3VzcGVuZCBvciB0ZXJtaW5hdGUgeW91ciB1c2VyIGFjY291bnQgYW5kL29yIHN1c3BlbmQgb3IgdGVybWluYXRlIHNvbWUgb3IgYWxsIG9mIHlvdXIgYWNjZXNzIHRvIHRoZSBTZXJ2aWNlcyBhdCBhbnkgdGltZSwgd2l0aCBvciB3aXRob3V0IG5vdGljZSB0byB5b3UuIFlvdSBtYXkgdGVybWluYXRlIHlvdXIgYWNjb3VudCBhdCBhbnkgdGltZSBieSBjb250YWN0aW5nIFRyaWJ1dGUgVGVjaG5vbG9neSBhdCZuYnNwO3dlYnNpdGVzQHRyaWJ1dGV0ZWNoLmNvbS4gQWZ0ZXIgeW91ciBhY2NvdW50IGlzIHRlcm1pbmF0ZWQsIGluZm9ybWF0aW9uIGFuZCBjb250ZW50IHByZXZpb3VzbHkgcHJvdmlkZWQgYnkgeW91IHdpbGwgbm8gbG9uZ2VyIGJlIGFjY2Vzc2libGUgdGhyb3VnaCB5b3VyIGFjY291bnQsIGJ1dCBUcmlidXRlIFRlY2hub2xvZ3kgbWF5IGNvbnRpbnVlIHRvIHN0b3JlIHN1Y2ggaW5mb3JtYXRpb24gYW5kIGNvbnRlbnQsIGFuZCBpdCBtYXkgYWxzbyBiZSBzdG9yZWQgYnkgdGhpcmQgcGFydGllcyB0byB3aG9tIGl0IGhhcyBiZWVuIHRyYW5zZmVycmVkIHRocm91Z2ggeW91ciB1c2Ugb2YgdGhlIFNlcnZpY2VzLjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPjxzdHJvbmc+TW9kaWZpY2F0aW9uIG9mIHRoZSBUZXJtcy48L3N0cm9uZz4mbmJzcDtUcmlidXRlIFRlY2hub2xvZ3kgcmVzZXJ2ZXMgdGhlIHJpZ2h0IGF0IGFueSB0aW1lIHRvIG1vZGlmeSB0aGVzZSBUZXJtcyBhbmQgdG8gaW1wb3NlIG5ldyBvciBhZGRpdGlvbmFsIHRlcm1zIG9yIGNvbmRpdGlvbnMgb24geW91ciB1c2Ugb2YgdGhlIFNlcnZpY2VzLiBTdWNoIG1vZGlmaWNhdGlvbnMgYW5kIGFkZGl0aW9uYWwgdGVybXMgYW5kIGNvbmRpdGlvbnMgd2lsbCBiZSBlZmZlY3RpdmUgaW1tZWRpYXRlbHkgYW5kIGluY29ycG9yYXRlZCBpbnRvIHRoZXNlIFRlcm1zIHVwb24gdXBkYXRpbmcgdGhlIHBvc3Rpbmcgb2YgdGhlc2UgVGVybXMuIFdlIHdpbGwgbWFrZSByZWFzb25hYmxlIGVmZm9ydHMgdG8gbm90aWZ5IHlvdSBvZiBhbnkgbWF0ZXJpYWwgY2hhbmdlcyB0byB0aGUgVGVybXMsIGluY2x1ZGluZyBieSB1cGRhdGluZyB0aGlzIHBvc3RpbmcuIFlvdSBzaG91bGQsIHRoZXJlZm9yZSwgcGVyaW9kaWNhbGx5IHZpc2l0IHRoaXMgcGFnZSB0byByZXZpZXcgdGhlIGN1cnJlbnQgVGVybXMsIHNvIHlvdSBhcmUgYXdhcmUgb2YgYW55IHN1Y2ggcmV2aXNpb25zIHRvIHdoaWNoIHlvdSBhcmUgYm91bmQuIFlvdXIgY29udGludWVkIHVzZSBvZiB0aGUgU2VydmljZXMgZm9sbG93aW5nIHJldmlzaW9ucyB0byB0aGVzZSBUZXJtcyB3aWxsIGJlIGRlZW1lZCBhY2NlcHRhbmNlIG9mIGFueSBtb2RpZmljYXRpb25zIHRvIHRoZSBUZXJtcy48L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT48c3Ryb25nPkRpc2NsYWltZXJzIG9mIFdhcnJhbnRpZXMuPC9zdHJvbmc+Jm5ic3A7VEhFIFNFUlZJQ0VTIEFSRSBQUk9WSURFRCAmbGRxdW87QVMgSVMmcmRxdW87IEFORCBPTiBBTiAmbGRxdW87QVMgQVZBSUxBQkxFJnJkcXVvOyBCQVNJUywgV0lUSE9VVCBXQVJSQU5UWSBPUiBDT05ESVRJT04gT0YgQU5ZIEtJTkQsIEVJVEhFUiBFWFBSRVNTIE9SIElNUExJRUQuJm5ic3A7IEFsdGhvdWdoIFRyaWJ1dGUgVGVjaG5vbG9neSBzZWVrcyB0byBtYWludGFpbiBzYWZlLCBzZWN1cmUsIGFjY3VyYXRlLCBhbmQgd2VsbC1mdW5jdGlvbmluZyBzZXJ2aWNlcywgd2UgY2Fubm90IGd1YXJhbnRlZSB0aGUgY29udGludW91cyBvcGVyYXRpb24gb2Ygb3IgYWNjZXNzIHRvIG91ciBTZXJ2aWNlcywgYW5kIHRoZXJlIG1heSBhdCB0aW1lcyBiZSBpbmFkdmVydGVudCB0ZWNobmljYWwgb3IgZmFjdHVhbCBlcnJvcnMgb3IgaW5hY2N1cmFjaWVzLiZuYnNwOyBUUklCVVRFIFRFQ0hOT0xPR1kgU1BFQ0lGSUNBTExZIChCVVQgV0lUSE9VVCBMSU1JVEFUSU9OKSBESVNDTEFJTVMgKEkpIEFOWSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSwgUVVBTElUWSBPRiBJTkZPUk1BVElPTiwgUVVJRVQgRU5KT1lNRU5ULCBBTkQgVElUTEUvTk9OLUlORlJJTkdFTUVOVDsgQU5EIChJSSkgQU5ZIFdBUlJBTlRJRVMgQVJJU0lORyBPVVQgT0YgQ09VUlNFLU9GLURFQUxJTkcsIFVTQUdFLCBPUiBUUkFERS4mbmJzcDsgWU9VIEFTU1VNRSBBTEwgUklTSyBGT1IgQU5ZL0FMTCBEQU1BR0VTIFRIQVQgTUFZIFJFU1VMVCBGUk9NIFlPVVIgVVNFIE9GIE9SIEFDQ0VTUyBUTyBUSEUgU0lURVMgQU5EIFRIRSBTRVJWSUNFUy4mbmJzcDsgVFJJQlVURSBURUNITk9MT0dZIERPRVMgTk9UIFdBUlJBTlQgT1IgR1VBUkFOVEVFIFRIRSBBQ0NVUkFDWSwgQ09NUExFVEVORVNTIE9SIFRJTUVMSU5FU1MgT0YsIEFORCBESVNDTEFJTVMgQUxMIExJQUJJTElUWSBGT1IsIEFOWSBFUlJPUlMgT1IgT1RIRVIgSU5BQ0NVUkFDSUVTIElOIFRIRSBJTkZPUk1BVElPTiwgQ09OVEVOVCwgUkVDT01NRU5EQVRJT05TIEFORCBNQVRFUklBTFMgTUFERSBBVkFJTEFCTEUgVEhST1VHSCBUSEUgU0lURVMgT1IgVEhFIFNFUlZJQ0VTLiBUUklCVVRFIFRFQ0hOT0xPR1kgRE9FUyBOT1QgV0FSUkFOVCBUSEFUIEZJTEVTIEFWQUlMQUJMRSBGT1IgRE9XTkxPQUQgV0lMTCBCRSBGUkVFIE9GIFZJUlVTRVMsIFdPUk1TLCBUUk9KQU4gSE9SU0VTIE9SIE9USEVSIERFU1RSVUNUSVZFIFBST0dSQU1NSU5HLiBZT1UgQVJFIFJFU1BPTlNJQkxFIEZPUiBJTVBMRU1FTlRJTkcgUFJPQ0VEVVJFUyBTVUZGSUNJRU5UIFRPIFNBVElTRlkgWU9VUiBORUVEUyBGT1IgREFUQSBCQUNLIFVQIEFORCBTRUNVUklUWS48L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT48c3Ryb25nPkxpbWl0YXRpb24gb2YgTGlhYmlsaXR5Ljwvc3Ryb25nPiZuYnNwO0lOIE5PIEVWRU5UIFdJTEwgVFJJQlVURSBURUNITk9MT0dZIE9SIElUUyBBRkZJTElBVEVTLCBWRU5ET1JTLCBTVVBQTElFUlMsIE9SIFBBUlRORVJTIEJFIExJQUJMRSBUTyBZT1UgRk9SIEFOWSBJTkNJREVOVEFMLCBTUEVDSUFMLCBDT05TRVFVRU5USUFMLCBJTkRJUkVDVCwgRVhFTVBMQVJZIE9SIFBVTklUSVZFIERBTUFHRVMgKElOQ0xVRElORywgV0lUSE9VVCBMSU1JVEFUSU9OLCBUSE9TRSBSRVNVTFRJTkcgRlJPTSBMT1NUIFBST0ZJVFMsIExPU1QgREFUQSwgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSwgV0hFVEhFUiBCQVNFRCBPTiBXQVJSQU5UWSwgQ09OVFJBQ1QsIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFKSwgU1RBVFVURSwgT1IgQU5ZIE9USEVSIExFR0FMIFRIRU9SWSwgV0hFVEhFUiBPUiBOT1QgVFJJQlVURSBURUNITk9MT0dZIEhBUyBCRUVOIElORk9STUVEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS48L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxwPk5PVFdJVEhTVEFORElORyBBTllUSElORyBUTyBUSEUgQ09OVFJBUlkgSU4gVEhFU0UgVEVSTVMsIFVOREVSIE5PIENJUkNVTVNUQU5DRVMgU0hBTEwgVFJJQlVURSBURUNITk9MT0dZJnJzcXVvO1MsIE9SIElUUyBBRkZJTElBVEUmcnNxdW87UywgVkVORE9SJnJzcXVvO1MsIFNVUFBMSUVSJnJzcXVvO1MsIE9SIFBBUlRORVImcnNxdW87UywgQUdHUkVHQVRFIExJQUJJTElUWSBUTyBZT1UgRVhDRUVEIFRIRSBMRVNTRVIgT0YgVEhFIEFNT1VOVCBZT1UgUEFJRCBUTyBVUyBGT1IgVEhFIFBST0RVQ1QgT1IgU0VSVklDRSBSRUxBVEVEIFRPIFRIRSBDTEFJTSwgSUYgQU5ZLCBPUiBPTkUgSFVORFJFRCBET0xMQVJTICgkMTAwKS4mbmJzcDsgU09NRSBKVVJJU0RJQ1RJT05TIERPIE5PVCBBTExPVyBUSEUgRElTQ0xBSU1FUiBPRiBXQVJSQU5USUVTIE9SIExJTUlUQVRJT04gT0YgTElBQklMSVRZIElOIENFUlRBSU4gQ0lSQ1VNU1RBTkNFUy4mbmJzcDsgQUNDT1JESU5HTFksIFNPTUUgT0YgVEhFIEFCT1ZFIExJTUlUQVRJT05TIE1BWSBOT1QgQVBQTFkgVE8gWU9VLjwvcD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT48c3Ryb25nPkludGVycHJldGF0aW9ucyBhbmQgRGlzcHV0ZXMuPC9zdHJvbmc+Jm5ic3A7WU9VIEFORCBUUklCVVRFIFRFQ0hOT0xPR1kgQVJFIEFHUkVFSU5HIFRPIEdJVkUgVVAgQU5ZIFJJR0hUUyBUTyBMSVRJR0FURSBDTEFJTVMgSU4gQSBDT1VSVCBPUiBCRUZPUkUgQSBKVVJZLCBPUiBUTyBQQVJUSUNJUEFURSBJTiBBIENMQVNTIEFDVElPTiBPUiBSRVBSRVNFTlRBVElWRSBBQ1RJT04gV0lUSCBSRVNQRUNUIFRPIEEgQ0xBSU0uJm5ic3A7IE9USEVSIFJJR0hUUyBUSEFUIFlPVSBXT1VMRCBIQVZFIElGIFlPVSBXRU5UIFRPIENPVVJUIE1BWSBBTFNPIEJFIFVOQVZBSUxBQkxFIE9SIE1BWSBCRSBMSU1JVEVEIElOIEFSQklUUkFUSU9OLjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPkFOWSBDTEFJTSwgRElTUFVURSBPUiBDT05UUk9WRVJTWSAoV0hFVEhFUiBJTiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIFdIRVRIRVIgUFJFLUVYSVNUSU5HLCBQUkVTRU5UIE9SIEZVVFVSRSwgQU5EIElOQ0xVRElORyBTVEFUVVRPUlksIENPTlNVTUVSIFBST1RFQ1RJT04sIENPTU1PTiBMQVcsIElOVEVOVElPTkFMIFRPUlQsIElOSlVOQ1RJVkUgQU5EIEVRVUlUQUJMRSBDTEFJTVMpIEJFVFdFRU4gWU9VIEFORCBVUyBBUklTSU5HIEZST00gT1IgUkVMQVRJTkcgSU4gQU5ZIFdBWSBUTyBUSEVTRSBURVJNUyBPUiBZT1VSIFVTRSBPRiBUSEUgU0lURSBPUiBTRVJWSUNFUywgSU5DTFVESU5HIEFOWSBQVVJDSEFTRSBPUiBVU0UgT0YgT1VSIFNFUlZJQ0VTIE9SIFBST0RVQ1RTLCBXSUxMIEJFIFJFU09MVkVEIEVYQ0xVU0lWRUxZIEFORCBGSU5BTExZIEJZIEJJTkRJTkcgQVJCSVRSQVRJT04uPC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2wgc3RhcnQ9Ijc4NzkiPg0KPGxpPklmIHRoZSBsb2NhdGlvbiBvZiB0aGUgYnVzaW5lc3MgYWRkcmVzcyBvZiB0aGUgQ2xpZW50LCBvciBvdGhlciBidXNpbmVzcyBvbiB3aG9zZSB3ZWJzaXRlIHRoZXNlIFRlcm1zIGFwcGVhciwgaXMgaW4gdGhlIFVuaXRlZCBTdGF0ZXMgb3IgYW55d2hlcmUgZWxzZSBpbiB0aGUgd29ybGQgb3V0c2lkZSBvZiBDYW5hZGEsIGFyYml0cmF0aW9uIHdpbGwgYmUgYWRtaW5pc3RlcmVkIGJ5IHRoZSBBbWVyaWNhbiBBcmJpdHJhdGlvbiBBc3NvY2lhdGlvbiAoJmxkcXVvO0FBQSZyZHF1bzspIGluIGFjY29yZGFuY2Ugd2l0aCBlaXRoZXIgdGhlIENvbnN1bWVyIEFyYml0cmF0aW9uIFJ1bGVzIG9yIHRoZSBDb21tZXJjaWFsIEFyYml0cmF0aW9uIFJ1bGVzIGFzIGFwcGxpY2FibGUgKHRoZSAmbGRxdW87QUFBIFJ1bGVzJnJkcXVvOykgdGhlbiBpbiBlZmZlY3QsIGV4Y2VwdCBhcyBtb2RpZmllZCBieSB0aGlzIFNlY3Rpb24gMTIsIGFuZCB0aGUgRmVkZXJhbCBBcmJpdHJhdGlvbiBBY3QgKCZsZHF1bztGQUEmcmRxdW87KSB3aWxsIGdvdmVybiB0aGUgaW50ZXJwcmV0YXRpb24gYW5kIGVuZm9yY2VtZW50IG9mIHRoaXMgU2VjdGlvbiAxMjsgcHJvdmlkZWQsIHRoYXQgaWYgdGhlIEZBQSBpcyBpbmFwcGxpY2FibGUgZm9yIGFueSByZWFzb24sIHRoZSBhcHBsaWNhYmxlIGdvdmVybmluZyBsYXcgaWRlbnRpZmllZCBpbiB0aGUgdGFibGUgaW4gU2VjdGlvbiAxMyBzaGFsbCBhcHBseSwgaW5jbHVkaW5nIHdpdGggcmVzcGVjdCB0byBEZWxhd2FyZSBsYXcsIERlbC4gQ29kZSB0aXQuIDEwICZzZWN0OyA1NzAxIGV0IHNlcSwgd2l0aG91dCByZWdhcmQgdG8gY2hvaWNlIG9mIGxhdyBwcmluY2lwbGVzLiAoVGhlIEFBQSBSdWxlcyBhcmUgYXZhaWxhYmxlIGF0IGFkci5vcmcgb3IgYnkgY2FsbGluZyB0aGUgQUFBIGF0IDEtODAwLTc3OC03ODc5LikgVW5sZXNzIHlvdSBhbmQgd2UgbXV0dWFsbHkgYWdyZWUgb3RoZXJ3aXNlLCBhbnkgaW4tcGVyc29uIGFyYml0cmF0aW9uIGhlYXJpbmdzIGJldHdlZW4geW91IGFuZCB1cyB3aWxsIHRha2UgcGxhY2UgaW4gdGhlIGFwcGxpY2FibGUganVyaXNkaWN0aW9uIGxpc3RlZCBpbiB0aGUgdGFibGUgaW4gU2VjdGlvbiAxMyBiZWxvdy48L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxvbCBzdGFydD0iODQ1Ij4NCjxsaT5JZiB0aGUgbG9jYXRpb24gb2YgdGhlIGJ1c2luZXNzIGFkZHJlc3Mgb2YgdGhlIENsaWVudCwgb3Igb3RoZXIgYnVzaW5lc3Mgb24gd2hvc2Ugd2Vic2l0ZSB0aGVzZSBUZXJtcyBhcHBlYXIsIGlzIGluIENhbmFkYSwgYXJiaXRyYXRpb24gd2lsbCBiZSBhZG1pbmlzdGVyZWQgYnkgdGhlIEludGVybmF0aW9uYWwgQ2VudHJlIGZvciBEaXNwdXRlIFJlc29sdXRpb24gQ2FuYWRhICgmbGRxdW87SUNEUiBDYW5hZGEmcmRxdW87KSBpbiBhY2NvcmRhbmNlIHdpdGggdGhlIENhbmFkaWFuIEFyYml0cmF0aW9uIFJ1bGVzICh0aGUgJmxkcXVvO0lDRFIgQ2FuYWRhIEFyYml0cmF0aW9uIFJ1bGVzJnJkcXVvOykgdGhlbiBpbiBlZmZlY3QsIGV4Y2VwdCBhcyBtb2RpZmllZCBieSB0aGlzIFNlY3Rpb24uIChUaGUgSUNEUiBDYW5hZGEgQXJiaXRyYXRpb24gUnVsZXMgYXJlIGF2YWlsYWJsZSBhdCBJQ0RSLm9yZyBvciBieSBjYWxsaW5nIHRoZSBJQ0RSIENhbmFkYSBhdCAxLTg0NC04NTktMDg0NS4pIFRoZSBzZWF0IG9mIGFyYml0cmF0aW9uIHNoYWxsIGJlIFRvcm9udG8sIE9udGFyaW8uIFVubGVzcyB5b3UgYW5kIHdlIG11dHVhbGx5IGFncmVlIG90aGVyd2lzZSwgYW55IGluLXBlcnNvbiBhcmJpdHJhdGlvbiBoZWFyaW5ncyBiZXR3ZWVuIHlvdSBhbmQgdXMgd2lsbCB0YWtlIHBsYWNlIGluIHRoZSBhcHBsaWNhYmxlIGp1cmlzZGljdGlvbiBsaXN0ZWQgaW4gdGhlIHRhYmxlIGluIFNlY3Rpb24gMTMgYmVsb3cuPC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+RXhjZXB0IGFzIHByb3ZpZGVkIGhlcmVpbiwgdGhlIGFyYml0cmF0b3Igd2lsbCBoYXZlIGV4Y2x1c2l2ZSBhdXRob3JpdHkgdG8gcmVzb2x2ZSBhbnkgZGlzcHV0ZSByZWxhdGluZyB0byBhcmJpdHJhYmlsaXR5IGFuZC9vciBlbmZvcmNlYWJpbGl0eSBvZiB0aGlzIGFyYml0cmF0aW9uIHByb3Zpc2lvbiwgaW5jbHVkaW5nIGFueSB1bmNvbnNjaW9uYWJpbGl0eSBjaGFsbGVuZ2Ugb3IgYW55IG90aGVyIGNoYWxsZW5nZSB0aGF0IHRoZSBhcmJpdHJhdGlvbiBwcm92aXNpb24gb3IgdGhlIFRlcm1zIGFyZSB2b2lkLCB2b2lkYWJsZSBvciBvdGhlcndpc2UgaW52YWxpZC4gVGhlIGFyYml0cmF0b3Igd2lsbCBiZSBlbXBvd2VyZWQgdG8gZ3JhbnQgd2hhdGV2ZXIgcmVsaWVmIHdvdWxkIGJlIGF2YWlsYWJsZSBpbiBjb3VydCB1bmRlciBsYXcgb3IgaW4gZXF1aXR5LiZuYnNwOyBBbnkgYXdhcmQgb2YgdGhlIGFyYml0cmF0b3Iocykgd2lsbCBiZSBmaW5hbCBhbmQgYmluZGluZyBvbiBlYWNoIG9mIHRoZSBwYXJ0aWVzIGFuZCBtYXkgYmUgZW50ZXJlZCBhcyBhIGp1ZGdtZW50IGluIGFueSBjb3VydCBvZiBjb21wZXRlbnQganVyaXNkaWN0aW9uLiBZb3UgYW5kIHdlIGFncmVlIHRoYXQgbmVpdGhlciBwYXJ0eSBzaGFsbCBhcHBlYWwgYW55IGF3YXJkIG9mIHRoZSBhcmJpdHJhdG9yLCBpbmNsdWRpbmcgYW55IGFwcGVhbCBvbiBhIHF1ZXN0aW9uIG9mIGxhdywgcXVlc3Rpb24gb2YgZmFjdCBvciBxdWVzdGlvbiBvZiBtaXhlZCBmYWN0IGFuZCBsYXcuJm5ic3A7PC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+V2Ugd2lsbCBiZSByZXNwb25zaWJsZSBmb3IgcGF5aW5nIGFueSBpbmRpdmlkdWFsIGNvbnN1bWVyJnJzcXVvO3MgYXJiaXRyYXRpb24vYXJiaXRyYXRvciBmZWVzLiBJZiBhbiBpbmRpdmlkdWFsIGNvbnN1bWVyIHByZXZhaWxzIG9uIGFueSBjbGFpbSB0aGF0IGFmZm9yZHMgdGhlIHByZXZhaWxpbmcgcGFydHkgYXR0b3JuZXlzJyBmZWVzLCB0aGUgYXJiaXRyYXRvciBtYXkgYXdhcmQgcmVhc29uYWJsZSBmZWVzIHRvIHlvdSB1bmRlciB0aGUgc3RhbmRhcmRzIGZvciBmZWUgc2hpZnRpbmcgcHJvdmlkZWQgYnkgbGF3LiZuYnNwOyBGb3IgdGhlIGF2b2lkYW5jZSBvZiBkb3VidCwgdGhpcyBTZWN0aW9uIDEyKEUpIHNoYWxsIG9ubHkgYXBwbHkgdG8gaW5kaXZpZHVhbCBjb25zdW1lcnMuJm5ic3A7PC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+WW91IGFncmVlIHRvIGFuIGFyYml0cmF0aW9uIG9uIGFuIGluZGl2aWR1YWwgYmFzaXMuIEluIGFueSBkaXNwdXRlLCBORUlUSEVSIFlPVSBOT1IgVFJJQlVURSBURUNITk9MT0dZIFdJTEwgQkUgRU5USVRMRUQgVE8gSk9JTiBPUiBDT05TT0xJREFURSBDTEFJTVMgQlkgT1IgQUdBSU5TVCBPVEhFUiBDVVNUT01FUlMgSU4gQ09VUlQgT1IgSU4gQVJCSVRSQVRJT04gT1IgT1RIRVJXSVNFIFBBUlRJQ0lQQVRFIElOIEFOWSBDTEFJTSBBUyBBIENMQVNTIFJFUFJFU0VOVEFUSVZFLCBDTEFTUyBNRU1CRVIgT1IgSU4gQSBQUklWQVRFIEFUVE9STkVZIEdFTkVSQUwgQ0FQQUNJVFkuJm5ic3A7IFRoZSBhcmJpdHJhbCB0cmlidW5hbCBzaGFsbCBub3QgY29uc29saWRhdGUgbW9yZSB0aGFuIG9uZSBwZXJzb24ncyBjbGFpbXMgYW5kIHNoYWxsIG5vdCBvdGhlcndpc2UgcHJlc2lkZSBvdmVyIGFueSBmb3JtIG9mIGEgcmVwcmVzZW50YXRpdmUgb3IgY2xhc3MgcHJvY2VlZGluZy4mbmJzcDsgVGhlIGFyYml0cmFsIHRyaWJ1bmFsIGhhcyBubyBwb3dlciB0byBjb25zaWRlciB0aGUgZW5mb3JjZWFiaWxpdHkgb2YgdGhpcyBjbGFzcyBhcmJpdHJhdGlvbiB3YWl2ZXIgYW5kIGFueSBjaGFsbGVuZ2UgdG8gdGhlIGNsYXNzIGFyYml0cmF0aW9uIHdhaXZlciBtYXkgb25seSBiZSByYWlzZWQgaW4gYSBjb3VydCBvZiBjb21wZXRlbnQganVyaXNkaWN0aW9uIGxvY2F0ZWQgaW4gdGhlIGp1cmlzZGljdGlvbiBzZXQgZm9ydGggaW4gU2VjdGlvbiAxMyBiZWxvdy4mbmJzcDs8L2xpPg0KPC9vbD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT5JZiBhbnkgcHJvdmlzaW9uIG9mIHRoaXMgU2VjdGlvbiBpcyBmb3VuZCB1bmVuZm9yY2VhYmxlLCB0aGUgdW5lbmZvcmNlYWJsZSBwcm92aXNpb24gd2lsbCBiZSBzZXZlcmVkIGFuZCB0aGUgcmVtYWluaW5nIGFyYml0cmF0aW9uIHRlcm1zIHdpbGwgYmUgZW5mb3JjZWQ7IHByb3ZpZGVkLCB0aGF0IGluIHRoZSBldmVudCBzdWJzZWN0aW9uIChGKSBpcyBmb3VuZCB0byBiZSB1bmVuZm9yY2VhYmxlLCBhbGwgb2YgdGhpcyBTZWN0aW9uIDEyIHNoYWxsIGJlIGRlZW1lZCBudWxsIGFuZCB2b2lkIGFuZCBvZiBubyBlZmZlY3QuPC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+PHN0cm9uZz5Db250cmFjdGluZyBFbnRpdHk7IEdvdmVybmluZyBMYXcuPC9zdHJvbmc+Jm5ic3A7IEFsbCByZWZlcmVuY2VzIHRvICZsZHF1bztUcmlidXRlIFRlY2hub2xvZ3ksJnJkcXVvOyAmbGRxdW87d2UsJnJkcXVvOyAmbGRxdW87dXMmcmRxdW87IG9yICZsZHF1bztvdXImcmRxdW87IGluIHRoZSBUZXJtcyByZWZlciB0byB0aGUgYXBwbGljYWJsZSBlbnRpdHkgc3BlY2lmaWVkIGluIHRoZSB0YWJsZSBiZWxvdywgd2hpY2ggaXMgYmFzZWQgb24gdGhlIGxvY2F0aW9uIG9mIHRoZSBidXNpbmVzcyBhZGRyZXNzIG9mIHRoZSBDbGllbnQgb3Igb3RoZXIgYnVzaW5lc3Mgb24gd2hvc2Ugd2Vic2l0ZSB0aGVzZSBUZXJtcyBhcHBlYXIsIGFzIHBvc3RlZCBvbiBzdWNoIHdlYnNpdGUuIEFkZGl0aW9uYWxseSwgdGhlc2UgVGVybXMgYXJlIGdvdmVybmVkIGJ5IHRoZSBsYXdzIG9mIHRoZSBzdGF0ZSBvciBwcm92aW5jZSBpZGVudGlmaWVkIGluIHRoZSB0YWJsZSBiZWxvdywgYWdhaW4gYmFzZWQgb24gdGhlIGxvY2F0aW9uIG9mIHRoZSBidXNpbmVzcyBhZGRyZXNzIG9mIHRoZSBDbGllbnQgb3Igb3RoZXIgYnVzaW5lc3Mgb24gd2hvc2Ugd2Vic2l0ZSB0aGVzZSBUZXJtcyBhcHBlYXIsIGFuZCB3aXRob3V0IHJlZ2FyZCB0byBjb25mbGljdCBvZiBsYXcgcHJpbmNpcGxlcy4mbmJzcDsgVG8gdGhlIGV4dGVudCB0aGF0IGFueSBsYXdzdWl0IG9yIGNvdXJ0IHByb2NlZWRpbmcgaXMgcGVybWl0dGVkIGhlcmV1bmRlciwgeW91IGFuZCBUcmlidXRlIFRlY2hub2xvZ3kgYWdyZWUgdG8gc3VibWl0IHRvIHRoZSBleGNsdXNpdmUgcGVyc29uYWwganVyaXNkaWN0aW9uIG9mIHRoZSBjb3VydHMgbG9jYXRlZCBpbiBhbmQgZm9yIHRoZSAmcmRxdW87RXhjbHVzaXZlIEp1cmlzZGljdGlvbiZyZHF1bzsgaWRlbnRpZmllZCBpbiB0aGUgdGFibGUgYmVsb3csIGZvciB0aGUgcHVycG9zZSBvZiBsaXRpZ2F0aW5nIGFsbCBzdWNoIGRpc3B1dGVzLiZuYnNwOyBBbnkgY2F1c2Ugb2YgYWN0aW9uIG9yIGNsYWltIHdpdGggcmVzcGVjdCB0byB0aGUgU2l0ZXMgb3IgdGhlIFNlcnZpY2VzIG11c3QgYmUgY29tbWVuY2VkIHdpdGhpbiB0d28gKDIpIHllYXJzIGFmdGVyIHRoZSBhY3Rpb24gb3IgY2xhaW0gYXJpc2VzIG9yIGlzIGRpc2NvdmVyZWQuPC9saT4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8dGFibGU+DQo8dGJvZHk+DQo8dHI+DQo8dGQgd2lkdGg9IjEzNiI+DQo8cD48c3Ryb25nPkxvY2F0aW9uIG9mIEJ1c2luZXNzIEFkZHJlc3M8L3N0cm9uZz48L3A+DQo8L3RkPg0KPHRkIHdpZHRoPSIxNjEiPg0KPHA+PHN0cm9uZz5BcHBsaWNhYmxlIENvbnRyYWN0aW5nIEVudGl0eTwvc3Ryb25nPjwvcD4NCjwvdGQ+DQo8dGQgd2lkdGg9IjEwNyI+DQo8cD48c3Ryb25nPkdvdmVybmluZyBMYXc8L3N0cm9uZz48L3A+DQo8L3RkPg0KPHRkIHdpZHRoPSIxNjAiPg0KPHA+PHN0cm9uZz5FeGNsdXNpdmUgSnVyaXNkaWN0aW9uPC9zdHJvbmc+PC9wPg0KPC90ZD4NCjwvdHI+DQo8dHI+DQo8dGQgd2lkdGg9IjEzNiI+DQo8cD5DYW5hZGE8L3A+DQo8L3RkPg0KPHRkIHdpZHRoPSIxNjEiPg0KPHA+VHJpYnV0ZSBUZWNobm9sb2d5IENhbmFkYSwgVUxDLCBhIEJyaXRpc2ggQ29sdW1iaWEgdW5saW1pdGVkIGxpYWJpbGl0eSBjb21wYW55PC9wPg0KPC90ZD4NCjx0ZCB3aWR0aD0iMTA3Ij4NCjxwPk9udGFyaW88L3A+DQo8L3RkPg0KPHRkIHdpZHRoPSIxNjAiPg0KPHA+VG9yb250bywgT250YXJpbzwvcD4NCjwvdGQ+DQo8L3RyPg0KPHRyPg0KPHRkIHdpZHRoPSIxMzYiPg0KPHA+VW5pdGVkIFN0YXRlcyBhbmQgdGhlIHJlc3Qgb2YgdGhlIHdvcmxkIG91dHNpZGUgQ2FuYWRhPC9wPg0KPC90ZD4NCjx0ZCB3aWR0aD0iMTYxIj4NCjxwPlRyaWJ1dGUgVGVjaG5vbG9neSBVUywgTExDLCBhIERlbGF3YXJlIGxpbWl0ZWQgbGlhYmlsaXR5IGNvbXBhbnk8L3A+DQo8L3RkPg0KPHRkIHdpZHRoPSIxMDciPg0KPHA+RGVsYXdhcmU8L3A+DQo8L3RkPg0KPHRkIHdpZHRoPSIxNjAiPg0KPHA+TWFkaXNvbiwgV2lzY29uc2luPC9wPg0KPC90ZD4NCjwvdHI+DQo8L3Rib2R5Pg0KPC90YWJsZT4NCjxwPiZuYnNwOzwvcD4NCjxwPiZuYnNwOzwvcD4NCjxvbD4NCjxsaT48c3Ryb25nPk1vZGlmaWNhdGlvbiBvZiB0aGUgU2l0ZXMgYW5kIFNlcnZpY2VzLjwvc3Ryb25nPiZuYnNwO1RyaWJ1dGUgVGVjaG5vbG9neSByZXNlcnZlcyB0aGUgcmlnaHQgdG8gbW9kaWZ5IG9yIGRpc2NvbnRpbnVlLCB0ZW1wb3JhcmlseSBvciBwZXJtYW5lbnRseSwgc29tZSBvciBhbGwgb2YgdGhlIFNpdGVzIGFuZCBTZXJ2aWNlcyBhdCBhbnkgdGltZSB3aXRob3V0IGFueSBub3RpY2Ugb3IgZnVydGhlciBvYmxpZ2F0aW9uIHRvIHlvdS4gWW91IGFncmVlIHRoYXQgVHJpYnV0ZSBUZWNobm9sb2d5IHdpbGwgbm90IGJlIGxpYWJsZSB0byB5b3Ugb3IgdG8gYW55IHRoaXJkIHBhcnR5IGZvciBhbnkgbW9kaWZpY2F0aW9uLCBzdXNwZW5zaW9uLCBvciBkaXNjb250aW51YW5jZSBvZiBhbnkgb2YgdGhlIFNpdGVzIG9yIFNlcnZpY2VzLjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPG9sPg0KPGxpPjxzdHJvbmc+R2VuZXJhbC48L3N0cm9uZz48L2xpPg0KPC9vbD4NCjxvbD4NCjxvbD4NCjxsaT48dT5FbnRpcmUgQWdyZWVtZW50PC91Pi4gVW5sZXNzIG90aGVyd2lzZSBleHByZXNzbHkgc3RhdGVkIGhlcmVpbiBvciBhbm90aGVyIHdyaXR0ZW4gYWdyZWVtZW50IGJldHdlZW4geW91IGFuZCBUcmlidXRlIFRlY2hub2xvZ3ksIHRoZXNlIFRlcm1zIGNvbnN0aXR1dGUgdGhlIGVudGlyZSBhbmQgZXhjbHVzaXZlIHVuZGVyc3RhbmRpbmcgYW5kIGFncmVlbWVudCBiZXR3ZWVuIHlvdSBhbmQgVHJpYnV0ZSBUZWNobm9sb2d5IHJlZ2FyZGluZyB5b3VyIHVzZSBvZiBhbmQgYWNjZXNzIHRvIHRoZSBTaXRlcyBhbmQgU2VydmljZXMsIGFuZCBleGNlcHQgYXMgZXhwcmVzc2x5IHBlcm1pdHRlZCBhYm92ZSBtYXkgb25seSBiZSBhbWVuZGVkIGJ5IGEgd3JpdHRlbiBhZ3JlZW1lbnQgc2lnbmVkIGJ5IGF1dGhvcml6ZWQgcmVwcmVzZW50YXRpdmVzIG9mIHRoZSBwYXJ0aWVzLjwvbGk+DQo8bGk+PHU+Tm8gV2FpdmVyPC91Pi4gVGhlIGZhaWx1cmUgdG8gcmVxdWlyZSBwZXJmb3JtYW5jZSBvZiBhbnkgcHJvdmlzaW9uIHNoYWxsIG5vdCBhZmZlY3Qgb3VyIHJpZ2h0IHRvIHJlcXVpcmUgcGVyZm9ybWFuY2UgYXQgYW55IHRpbWUgdGhlcmVhZnRlciwgbm9yIHNoYWxsIGEgd2FpdmVyIG9mIGFueSBicmVhY2ggb3IgZGVmYXVsdCBvZiB0aGUgVGVybXMgY29uc3RpdHV0ZSBhIHdhaXZlciBvZiBhbnkgc3Vic2VxdWVudCBicmVhY2ggb3IgZGVmYXVsdCBvciBhIHdhaXZlciBvZiB0aGUgcHJvdmlzaW9uIGl0c2VsZi48L2xpPg0KPGxpPjx1PlBhcmFncmFwaCBIZWFkZXJzPC91Pi4gVXNlIG9mIHBhcmFncmFwaCBoZWFkZXJzIGluIHRoZSBUZXJtcyBpcyBmb3IgY29udmVuaWVuY2Ugb25seSBhbmQgc2hhbGwgbm90IGhhdmUgYW55IGltcGFjdCBvbiB0aGUgaW50ZXJwcmV0YXRpb24gb2YgcGFydGljdWxhciBwcm92aXNpb25zLjwvbGk+DQo8bGk+PHU+U2V2ZXJhYmlsaXR5PC91Pi4gSW4gdGhlIGV2ZW50IHRoYXQgYW55IHBhcnQgb2YgdGhlIFRlcm1zIGlzIGhlbGQgdG8gYmUgaW52YWxpZCBvciB1bmVuZm9yY2VhYmxlLCB0aGUgdW5lbmZvcmNlYWJsZSBwYXJ0IHNoYWxsIGJlIGdpdmVuIGVmZmVjdCB0byB0aGUgZ3JlYXRlc3QgZXh0ZW50IHBvc3NpYmxlIGFuZCB0aGUgcmVtYWluaW5nIHBhcnRzIHdpbGwgcmVtYWluIGluIGZ1bGwgZm9yY2UgYW5kIGVmZmVjdC48L2xpPg0KPC9vbD4NCjwvb2w+DQo8cD4mbmJzcDs8L3A+DQo8b2w+DQo8bGk+PHN0cm9uZz5Ob3RpY2UgdG8gQ2FsaWZvcm5pYSBSZXNpZGVudHMuPC9zdHJvbmc+Jm5ic3A7VW5kZXIgQ2FsaWZvcm5pYSBDaXZpbCBDb2RlIFNlY3Rpb24gMTc4OS4zLCB5b3UgbWF5IGNvbnRhY3QgdGhlIENvbXBsYWludCBBc3Npc3RhbmNlIFVuaXQgb2YgdGhlIERpdmlzaW9uIG9mIENvbnN1bWVyIFNlcnZpY2VzIG9mIHRoZSBDYWxpZm9ybmlhIERlcGFydG1lbnQgb2YgQ29uc3VtZXIgQWZmYWlycyBpbiB3cml0aW5nIGF0IDE2MjUgTi4gTWFya2V0IEJsdmQuLCBTdWl0ZSBOLTExMiwgU2FjcmFtZW50bywgQ2FsaWZvcm5pYSA5NTgzNCwgb3IgYnkgdGVsZXBob25lIGF0ICg4MDApIDk1Mi01MjEwIGluIG9yZGVyIHRvIHJlc29sdmUgYSBjb21wbGFpbnQgcmVnYXJkaW5nIHRoZSBzZXJ2aWNlIG9yIHRvIHJlY2VpdmUgZnVydGhlciBpbmZvcm1hdGlvbiByZWdhcmRpbmcgdXNlIG9mIHRoZSBzZXJ2aWNlLjwvbGk+DQo8L29sPg0KPHA+Jm5ic3A7PC9wPg0KPC9kaXY+DQo8ZGl2IGlkPSIxNTc1OTQ5NjI0IiBjbGFzcz0iZG1OZXdQYXJhZ3JhcGgiIGRhdGEtZWxlbWVudC10eXBlPSJwYXJhZ3JhcGgiIGRhdGEtdmVyc2lvbj0iNSI+PC9kaXY+
PHA+V2UgYXJlIGNvbW1pdHRlZCB0byBpbXByb3ZpbmcgYW5kIG1haW50YWluaW5nIGEgd2Vic2l0ZSB0aGF0IGlzIGFjY2Vzc2libGUgdG8gdGhlIHdpZGVzdCBwb3NzaWJsZSBhdWRpZW5jZSwgcmVnYXJkbGVzcyBvZiB0ZWNobm9sb2d5IG9yIGFiaWxpdHkuIElmIHlvdSBleHBlcmllbmNlIGFueSBkaWZmaWN1bHR5IGluIGFjY2Vzc2luZyBhbnkgcGFydCBvZiB0aGlzIHdlYnNpdGUsIHBsZWFzZSBmZWVsIGZyZWUgdG8gY2FsbCBvdXIgd2Vic2l0ZSBwcm92aWRlciBhdCA4NDQtMjAwLTYwMjAgb3IgZW1haWwgdGhlbSBhdCB3ZWJzaXRlc0B0cmlidXRldGVjaC5jb20sIG9yIGNvbnRhY3QgdXMgZGlyZWN0bHkuIE5vdGUgdGhhdCBvdXIgZWZmb3J0cyBhcmUgb25nb2luZywgYW5kIHdlIGFyZSBjb21taXR0ZWQgdG8gcHJvdmlkaW5nIHRoZSBpbmZvcm1hdGlvbiwgaXRlbSwgb3IgdHJhbnNhY3Rpb24geW91IHNlZWsgdGhyb3VnaCBhbiBhbHRlcm5hdGUgY29tbXVuaWNhdGlvbiBtZXRob2QgdGhhdCBpcyBhY2Nlc3NpYmxlIGZvciB5b3UuPC9wPg==