[fusion_builder_container type=”flex” hundred_percent=”no” hundred_percent_height=”no” hundred_percent_height_scroll=”no” align_content=”stretch” flex_align_items=”flex-start” flex_justify_content=”flex-start” hundred_percent_height_center_content=”yes” equal_height_columns=”no” container_tag=”div” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” status=”published” border_sizes=”” border_style=”solid” spacing_medium=”” spacing_small=”” padding_dimensions_medium=”” padding_dimensions_small=”” box_shadow=”no” box_shadow_blur=”0″ box_shadow_spread=”0″ gradient_start_color=”” gradient_end_color=”” gradient_start_position=”0″ gradient_end_position=”100″ gradient_type=”linear” radial_direction=”center center” linear_angle=”180″ background_position=”center center” background_repeat=”no-repeat” fade=”no” background_parallax=”none” enable_mobile=”no” parallax_speed=”0.3″ background_blend_mode=”none” video_aspect_ratio=”16:9″ video_loop=”yes” video_mute=”yes” absolute=”off” absolute_devices=”small,medium,large” sticky=”off” sticky_devices=”small-visibility,medium-visibility,large-visibility” sticky_transition_offset=”0″ scroll_offset=”0″ animation_direction=”left” animation_speed=”0.3″ filter_hue=”0″ filter_saturation=”100″ filter_brightness=”100″ filter_contrast=”100″ filter_invert=”0″ filter_sepia=”0″ filter_opacity=”100″ filter_blur=”0″ filter_hue_hover=”0″ filter_saturation_hover=”100″ filter_brightness_hover=”100″ filter_contrast_hover=”100″ filter_invert_hover=”0″ filter_sepia_hover=”0″ filter_opacity_hover=”100″ filter_blur_hover=”0″][fusion_builder_row][fusion_builder_column type=”1_1″ layout=”1_1″ align_self=”center” content_layout=”column” align_content=”flex-start” content_wrap=”wrap” spacing=”” center_content=”no” link=”” target=”_self” min_height=”” hide_on_mobile=”small-visibility,medium-visibility,large-visibility” sticky_display=”normal,sticky” class=”” id=”” type_medium=”” type_small=”” order_medium=”0″ order_small=”0″ dimension_spacing_medium=”” dimension_spacing_small=”” dimension_spacing=”” dimension_margin_medium=”” dimension_margin_small=”” margin_top=”” margin_bottom=”” padding_medium=”” padding_small=”” padding_top=”” padding_right=”” padding_bottom=”” padding_left=”” hover_type=”none” border_sizes=”” border_color=”” border_style=”solid” border_radius=”” box_shadow=”no” dimension_box_shadow=”” box_shadow_blur=”0″ box_shadow_spread=”0″ box_shadow_color=”” box_shadow_style=”” background_type=”single” gradient_start_color=”” gradient_end_color=”” gradient_start_position=”0″ gradient_end_position=”100″ gradient_type=”linear” radial_direction=”center center” linear_angle=”180″ background_color=”” background_image=”” background_image_id=”” background_position=”left top” background_repeat=”no-repeat” background_blend_mode=”none” animation_type=”” animation_direction=”left” animation_speed=”0.3″ animation_offset=”” filter_type=”regular” filter_hue=”0″ filter_saturation=”100″ filter_brightness=”100″ filter_contrast=”100″ filter_invert=”0″ filter_sepia=”0″ filter_opacity=”100″ filter_blur=”0″ filter_hue_hover=”0″ filter_saturation_hover=”100″ filter_brightness_hover=”100″ filter_contrast_hover=”100″ filter_invert_hover=”0″ filter_sepia_hover=”0″ filter_opacity_hover=”100″ filter_blur_hover=”0″ last=”true” border_position=”all” type=”1_1″ first=”true”][fusion_code]PGgxPlByaXZhY3kgUG9saWN5PC9oMT4KPHA+TGFzdCB1cGRhdGVkOiBKdWx5IDI2LCAyMDIwPC9wPgo8cD5UaGlzIFByaXZhY3kgUG9saWN5IGRlc2NyaWJlcyBPdXIgcG9saWNpZXMgYW5kIHByb2NlZHVyZXMgb24gdGhlIGNvbGxlY3Rpb24sIHVzZSBhbmQgZGlzY2xvc3VyZSBvZiBZb3VyIGluZm9ybWF0aW9uIHdoZW4gWW91IHVzZSB0aGUgU2VydmljZSBhbmQgdGVsbHMgWW91IGFib3V0IFlvdXIgcHJpdmFjeSByaWdodHMgYW5kIGhvdyB0aGUgbGF3IHByb3RlY3RzIFlvdS48L3A+CjxwPldlIHVzZSBZb3VyIFBlcnNvbmFsIGRhdGEgdG8gcHJvdmlkZSBhbmQgaW1wcm92ZSB0aGUgU2VydmljZS4gQnkgdXNpbmcgdGhlIFNlcnZpY2UsIFlvdSBhZ3JlZSB0byB0aGUgY29sbGVjdGlvbiBhbmQgdXNlIG9mIGluZm9ybWF0aW9uIGluIGFjY29yZGFuY2Ugd2l0aCB0aGlzIFByaXZhY3kgUG9saWN5LjwvcD4KPGgxPkludGVycHJldGF0aW9uIGFuZCBEZWZpbml0aW9uczwvaDE+CjxoMj5JbnRlcnByZXRhdGlvbjwvaDI+CjxwPlRoZSB3b3JkcyBvZiB3aGljaCB0aGUgaW5pdGlhbCBsZXR0ZXIgaXMgY2FwaXRhbGl6ZWQgaGF2ZSBtZWFuaW5ncyBkZWZpbmVkIHVuZGVyIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucy4gVGhlIGZvbGxvd2luZyBkZWZpbml0aW9ucyBzaGFsbCBoYXZlIHRoZSBzYW1lIG1lYW5pbmcgcmVnYXJkbGVzcyBvZiB3aGV0aGVyIHRoZXkgYXBwZWFyIGluIHNpbmd1bGFyIG9yIGluIHBsdXJhbC48L3A+CjxoMj5EZWZpbml0aW9uczwvaDI+CjxwPkZvciB0aGUgcHVycG9zZXMgb2YgdGhpcyBQcml2YWN5IFBvbGljeTo8L3A+Cjx1bD4KPGxpPgo8cD48c3Ryb25nPkFjY291bnQ8L3N0cm9uZz4gbWVhbnMgYSB1bmlxdWUgYWNjb3VudCBjcmVhdGVkIGZvciBZb3UgdG8gYWNjZXNzIG91ciBTZXJ2aWNlIG9yIHBhcnRzIG9mIG91ciBTZXJ2aWNlLjwvcD4KPC9saT4KPGxpPgo8cD48c3Ryb25nPkJ1c2luZXNzPC9zdHJvbmc+LCBmb3IgdGhlIHB1cnBvc2Ugb2YgdGhlIENDUEEgKENhbGlmb3JuaWEgQ29uc3VtZXIgUHJpdmFjeSBBY3QpLCByZWZlcnMgdG8gdGhlIENvbXBhbnkgYXMgdGhlIGxlZ2FsIGVudGl0eSB0aGF0IGNvbGxlY3RzIENvbnN1bWVycycgcGVyc29uYWwgaW5mb3JtYXRpb24gYW5kIGRldGVybWluZXMgdGhlIHB1cnBvc2VzIGFuZCBtZWFucyBvZiB0aGUgcHJvY2Vzc2luZyBvZiBDb25zdW1lcnMnIHBlcnNvbmFsIGluZm9ybWF0aW9uLCBvciBvbiBiZWhhbGYgb2Ygd2hpY2ggc3VjaCBpbmZvcm1hdGlvbiBpcyBjb2xsZWN0ZWQgYW5kIHRoYXQgYWxvbmUsIG9yIGpvaW50bHkgd2l0aCBvdGhlcnMsIGRldGVybWluZXMgdGhlIHB1cnBvc2VzIGFuZCBtZWFucyBvZiB0aGUgcHJvY2Vzc2luZyBvZiBjb25zdW1lcnMnIHBlcnNvbmFsIGluZm9ybWF0aW9uLCB0aGF0IGRvZXMgYnVzaW5lc3MgaW4gdGhlIFN0YXRlIG9mIENhbGlmb3JuaWEuPC9wPgo8L2xpPgo8bGk+CjxwPjxzdHJvbmc+Q29tcGFueTwvc3Ryb25nPiAocmVmZXJyZWQgdG8gYXMgZWl0aGVyICZxdW90O3RoZSBDb21wYW55JnF1b3Q7LCAmcXVvdDtXZSZxdW90OywgJnF1b3Q7VXMmcXVvdDsgb3IgJnF1b3Q7T3VyJnF1b3Q7IGluIHRoaXMgQWdyZWVtZW50KSByZWZlcnMgdG8gRmFsY29uZSBCYWJpbiBFbnRlcnByaXNlcywgMTMwMDEgTW9ybmluZ3NpZGUgV2F5LCBMb3MgQW5nZWxlcywgQ0EgOTAwNjYuPC9wPgo8cD5Gb3IgdGhlIHB1cnBvc2Ugb2YgdGhlIEdEUFIsIHRoZSBDb21wYW55IGlzIHRoZSBEYXRhIENvbnRyb2xsZXIuPC9wPgo8L2xpPgo8bGk+CjxwPjxzdHJvbmc+Q29uc3VtZXI8L3N0cm9uZz4sIGZvciB0aGUgcHVycG9zZSBvZiB0aGUgQ0NQQSAoQ2FsaWZvcm5pYSBDb25zdW1lciBQcml2YWN5IEFjdCksIG1lYW5zIGEgbmF0dXJhbCBwZXJzb24gd2hvIGlzIGEgQ2FsaWZvcm5pYSByZXNpZGVudC4gQSByZXNpZGVudCwgYXMgZGVmaW5lZCBpbiB0aGUgbGF3LCBpbmNsdWRlcyAoMSkgZXZlcnkgaW5kaXZpZHVhbCB3aG8gaXMgaW4gdGhlIFVTQSBmb3Igb3RoZXIgdGhhbiBhIHRlbXBvcmFyeSBvciB0cmFuc2l0b3J5IHB1cnBvc2UsIGFuZCAoMikgZXZlcnkgaW5kaXZpZHVhbCB3aG8gaXMgZG9taWNpbGVkIGluIHRoZSBVU0Egd2hvIGlzIG91dHNpZGUgdGhlIFVTQSBmb3IgYSB0ZW1wb3Jhcnkgb3IgdHJhbnNpdG9yeSBwdXJwb3NlLjwvcD4KPC9saT4KPGxpPgo8cD48c3Ryb25nPkNvb2tpZXM8L3N0cm9uZz4gYXJlIHNtYWxsIGZpbGVzIHRoYXQgYXJlIHBsYWNlZCBvbiBZb3VyIGNvbXB1dGVyLCBtb2JpbGUgZGV2aWNlIG9yIGFueSBvdGhlciBkZXZpY2UgYnkgYSB3ZWJzaXRlLCBjb250YWluaW5nIHRoZSBkZXRhaWxzIG9mIFlvdXIgYnJvd3NpbmcgaGlzdG9yeSBvbiB0aGF0IHdlYnNpdGUgYW1vbmcgaXRzIG1hbnkgdXNlcy48L3A+CjwvbGk+CjxsaT4KPHA+PHN0cm9uZz5Db3VudHJ5PC9zdHJvbmc+IHJlZmVycyB0bzogQ2FsaWZvcm5pYSwgIFVuaXRlZCBTdGF0ZXM8L3A+CjwvbGk+CjxsaT4KPHA+PHN0cm9uZz5EYXRhIENvbnRyb2xsZXI8L3N0cm9uZz4sIGZvciB0aGUgcHVycG9zZXMgb2YgdGhlIEdEUFIgKEdlbmVyYWwgRGF0YSBQcm90ZWN0aW9uIFJlZ3VsYXRpb24pLCByZWZlcnMgdG8gdGhlIENvbXBhbnkgYXMgdGhlIGxlZ2FsIHBlcnNvbiB3aGljaCBhbG9uZSBvciBqb2ludGx5IHdpdGggb3RoZXJzIGRldGVybWluZXMgdGhlIHB1cnBvc2VzIGFuZCBtZWFucyBvZiB0aGUgcHJvY2Vzc2luZyBvZiBQZXJzb25hbCBEYXRhLjwvcD4KPC9saT4KPGxpPgo8cD48c3Ryb25nPkRldmljZTwvc3Ryb25nPiBtZWFucyBhbnkgZGV2aWNlIHRoYXQgY2FuIGFjY2VzcyB0aGUgU2VydmljZSBzdWNoIGFzIGEgY29tcHV0ZXIsIGEgY2VsbHBob25lIG9yIGEgZGlnaXRhbCB0YWJsZXQuPC9wPgo8L2xpPgo8bGk+CjxwPjxzdHJvbmc+RG8gTm90IFRyYWNrPC9zdHJvbmc+IChETlQpIGlzIGEgY29uY2VwdCB0aGF0IGhhcyBiZWVuIHByb21vdGVkIGJ5IFVTIHJlZ3VsYXRvcnkgYXV0aG9yaXRpZXMsIGluIHBhcnRpY3VsYXIgdGhlIFUuUy4gRmVkZXJhbCBUcmFkZSBDb21taXNzaW9uIChGVEMpLCBmb3IgdGhlIEludGVybmV0IGluZHVzdHJ5IHRvIGRldmVsb3AgYW5kIGltcGxlbWVudCBhIG1lY2hhbmlzbSBmb3IgYWxsb3dpbmcgaW50ZXJuZXQgdXNlcnMgdG8gY29udHJvbCB0aGUgdHJhY2tpbmcgb2YgdGhlaXIgb25saW5lIGFjdGl2aXRpZXMgYWNyb3NzIHdlYnNpdGVzLjwvcD4KPC9saT4KPGxpPgo8cD48c3Ryb25nPlBlcnNvbmFsIERhdGE8L3N0cm9uZz4gaXMgYW55IGluZm9ybWF0aW9uIHRoYXQgcmVsYXRlcyB0byBhbiBpZGVudGlmaWVkIG9yIGlkZW50aWZpYWJsZSBpbmRpdmlkdWFsLjwvcD4KPHA+Rm9yIHRoZSBwdXJwb3NlcyBmb3IgR0RQUiwgUGVyc29uYWwgRGF0YSBtZWFucyBhbnkgaW5mb3JtYXRpb24gcmVsYXRpbmcgdG8gWW91IHN1Y2ggYXMgYSBuYW1lLCBhbiBpZGVudGlmaWNhdGlvbiBudW1iZXIsIGxvY2F0aW9uIGRhdGEsIG9ubGluZSBpZGVudGlmaWVyIG9yIHRvIG9uZSBvciBtb3JlIGZhY3RvcnMgc3BlY2lmaWMgdG8gdGhlIHBoeXNpY2FsLCBwaHlzaW9sb2dpY2FsLCBnZW5ldGljLCBtZW50YWwsIGVjb25vbWljLCBjdWx0dXJhbCBvciBzb2NpYWwgaWRlbnRpdHkuPC9wPgo8cD5Gb3IgdGhlIHB1cnBvc2VzIG9mIHRoZSBDQ1BBLCBQZXJzb25hbCBEYXRhIG1lYW5zIGFueSBpbmZvcm1hdGlvbiB0aGF0IGlkZW50aWZpZXMsIHJlbGF0ZXMgdG8sIGRlc2NyaWJlcyBvciBpcyBjYXBhYmxlIG9mIGJlaW5nIGFzc29jaWF0ZWQgd2l0aCwgb3IgY291bGQgcmVhc29uYWJseSBiZSBsaW5rZWQsIGRpcmVjdGx5IG9yIGluZGlyZWN0bHksIHdpdGggWW91LjwvcD4KPC9saT4KPGxpPgo8cD48c3Ryb25nPlNhbGU8L3N0cm9uZz4sIGZvciB0aGUgcHVycG9zZSBvZiB0aGUgQ0NQQSAoQ2FsaWZvcm5pYSBDb25zdW1lciBQcml2YWN5IEFjdCksIG1lYW5zIHNlbGxpbmcsIHJlbnRpbmcsIHJlbGVhc2luZywgZGlzY2xvc2luZywgZGlzc2VtaW5hdGluZywgbWFraW5nIGF2YWlsYWJsZSwgdHJhbnNmZXJyaW5nLCBvciBvdGhlcndpc2UgY29tbXVuaWNhdGluZyBvcmFsbHksIGluIHdyaXRpbmcsIG9yIGJ5IGVsZWN0cm9uaWMgb3Igb3RoZXIgbWVhbnMsIGEgQ29uc3VtZXIncyBQZXJzb25hbCBpbmZvcm1hdGlvbiB0byBhbm90aGVyIGJ1c2luZXNzIG9yIGEgdGhpcmQgcGFydHkgZm9yIG1vbmV0YXJ5IG9yIG90aGVyIHZhbHVhYmxlIGNvbnNpZGVyYXRpb24uPC9wPgo8L2xpPgo8bGk+CjxwPjxzdHJvbmc+U2VydmljZTwvc3Ryb25nPiByZWZlcnMgdG8gdGhlIFdlYnNpdGUuPC9wPgo8L2xpPgo8bGk+CjxwPjxzdHJvbmc+U2VydmljZSBQcm92aWRlcjwvc3Ryb25nPiBtZWFucyBhbnkgbmF0dXJhbCBvciBsZWdhbCBwZXJzb24gd2hvIHByb2Nlc3NlcyB0aGUgZGF0YSBvbiBiZWhhbGYgb2YgdGhlIENvbXBhbnkuIEl0IHJlZmVycyB0byB0aGlyZC1wYXJ0eSBjb21wYW5pZXMgb3IgaW5kaXZpZHVhbHMgZW1wbG95ZWQgYnkgdGhlIENvbXBhbnkgdG8gZmFjaWxpdGF0ZSB0aGUgU2VydmljZSwgdG8gcHJvdmlkZSB0aGUgU2VydmljZSBvbiBiZWhhbGYgb2YgdGhlIENvbXBhbnksIHRvIHBlcmZvcm0gc2VydmljZXMgcmVsYXRlZCB0byB0aGUgU2VydmljZSBvciB0byBhc3Npc3QgdGhlIENvbXBhbnkgaW4gYW5hbHl6aW5nIGhvdyB0aGUgU2VydmljZSBpcyB1c2VkLgpGb3IgdGhlIHB1cnBvc2Ugb2YgdGhlIEdEUFIsIFNlcnZpY2UgUHJvdmlkZXJzIGFyZSBjb25zaWRlcmVkIERhdGEgUHJvY2Vzc29ycy48L3A+CjwvbGk+CjxsaT4KPHA+PHN0cm9uZz5UaGlyZC1wYXJ0eSBTb2NpYWwgTWVkaWEgU2VydmljZTwvc3Ryb25nPiByZWZlcnMgdG8gYW55IHdlYnNpdGUgb3IgYW55IHNvY2lhbCBuZXR3b3JrIHdlYnNpdGUgdGhyb3VnaCB3aGljaCBhIFVzZXIgY2FuIGxvZyBpbiBvciBjcmVhdGUgYW4gYWNjb3VudCB0byB1c2UgdGhlIFNlcnZpY2UuPC9wPgo8L2xpPgo8bGk+CjxwPjxzdHJvbmc+VXNhZ2UgRGF0YTwvc3Ryb25nPiByZWZlcnMgdG8gZGF0YSBjb2xsZWN0ZWQgYXV0b21hdGljYWxseSwgZWl0aGVyIGdlbmVyYXRlZCBieSB0aGUgdXNlIG9mIHRoZSBTZXJ2aWNlIG9yIGZyb20gdGhlIFNlcnZpY2UgaW5mcmFzdHJ1Y3R1cmUgaXRzZWxmIChmb3IgZXhhbXBsZSwgdGhlIGR1cmF0aW9uIG9mIGEgcGFnZSB2aXNpdCkuPC9wPgo8L2xpPgo8bGk+CjxwPjxzdHJvbmc+V2Vic2l0ZTwvc3Ryb25nPiByZWZlcnMgdG8gSGVhbCBmcm9tIHRoZSBBZmZhaXIsIGFjY2Vzc2libGUgZnJvbSA8YSBocmVmPSJodHRwczolNUN3d3cuaGVhbGZyb210aGVhZmZhaXIuY29tIiByZWw9ImV4dGVybmFsIG5vZm9sbG93IG5vb3BlbmVyIiB0YXJnZXQ9Il9ibGFuayI+aHR0cHM6XHd3dy5oZWFsZnJvbXRoZWFmZmFpci5jb208L2E+PC9wPgo8L2xpPgo8bGk+CjxwPjxzdHJvbmc+WW91PC9zdHJvbmc+IG1lYW5zIHRoZSBpbmRpdmlkdWFsIGFjY2Vzc2luZyBvciB1c2luZyB0aGUgU2VydmljZSwgb3IgdGhlIGNvbXBhbnksIG9yIG90aGVyIGxlZ2FsIGVudGl0eSBvbiBiZWhhbGYgb2Ygd2hpY2ggc3VjaCBpbmRpdmlkdWFsIGlzIGFjY2Vzc2luZyBvciB1c2luZyB0aGUgU2VydmljZSwgYXMgYXBwbGljYWJsZS48L3A+CjxwPlVuZGVyIEdEUFIgKEdlbmVyYWwgRGF0YSBQcm90ZWN0aW9uIFJlZ3VsYXRpb24pLCBZb3UgY2FuIGJlIHJlZmVycmVkIHRvIGFzIHRoZSBEYXRhIFN1YmplY3Qgb3IgYXMgdGhlIFVzZXIgYXMgeW91IGFyZSB0aGUgaW5kaXZpZHVhbCB1c2luZyB0aGUgU2VydmljZS48L3A+CjwvbGk+CjwvdWw+CjxoMT5Db2xsZWN0aW5nIGFuZCBVc2luZyBZb3VyIFBlcnNvbmFsIERhdGE8L2gxPgo8aDI+VHlwZXMgb2YgRGF0YSBDb2xsZWN0ZWQ8L2gyPgo8aDM+UGVyc29uYWwgRGF0YTwvaDM+CjxwPldoaWxlIHVzaW5nIE91ciBTZXJ2aWNlLCBXZSBtYXkgYXNrIFlvdSB0byBwcm92aWRlIFVzIHdpdGggY2VydGFpbiBwZXJzb25hbGx5IGlkZW50aWZpYWJsZSBpbmZvcm1hdGlvbiB0aGF0IGNhbiBiZSB1c2VkIHRvIGNvbnRhY3Qgb3IgaWRlbnRpZnkgWW91LiBQZXJzb25hbGx5IGlkZW50aWZpYWJsZSBpbmZvcm1hdGlvbiBtYXkgaW5jbHVkZSwgYnV0IGlzIG5vdCBsaW1pdGVkIHRvOjwvcD4KPHVsPgo8bGk+CjxwPkVtYWlsIGFkZHJlc3M8L3A+CjwvbGk+CjxsaT4KPHA+Rmlyc3QgbmFtZSBhbmQgbGFzdCBuYW1lPC9wPgo8L2xpPgo8bGk+CjxwPlVzYWdlIERhdGE8L3A+CjwvbGk+CjwvdWw+CjxoMz5Vc2FnZSBEYXRhPC9oMz4KPHA+VXNhZ2UgRGF0YSBpcyBjb2xsZWN0ZWQgYXV0b21hdGljYWxseSB3aGVuIHVzaW5nIHRoZSBTZXJ2aWNlLjwvcD4KPHA+VXNhZ2UgRGF0YSBtYXkgaW5jbHVkZSBpbmZvcm1hdGlvbiBzdWNoIGFzIFlvdXIgRGV2aWNlJ3MgSW50ZXJuZXQgUHJvdG9jb2wgYWRkcmVzcyAoZS5nLiBJUCBhZGRyZXNzKSwgYnJvd3NlciB0eXBlLCBicm93c2VyIHZlcnNpb24sIHRoZSBwYWdlcyBvZiBvdXIgU2VydmljZSB0aGF0IFlvdSB2aXNpdCwgdGhlIHRpbWUgYW5kIGRhdGUgb2YgWW91ciB2aXNpdCwgdGhlIHRpbWUgc3BlbnQgb24gdGhvc2UgcGFnZXMsIHVuaXF1ZSBkZXZpY2UgaWRlbnRpZmllcnMgYW5kIG90aGVyIGRpYWdub3N0aWMgZGF0YS48L3A+CjxwPldoZW4gWW91IGFjY2VzcyB0aGUgU2VydmljZSBieSBvciB0aHJvdWdoIGEgbW9iaWxlIGRldmljZSwgV2UgbWF5IGNvbGxlY3QgY2VydGFpbiBpbmZvcm1hdGlvbiBhdXRvbWF0aWNhbGx5LCBpbmNsdWRpbmcsIGJ1dCBub3QgbGltaXRlZCB0bywgdGhlIHR5cGUgb2YgbW9iaWxlIGRldmljZSBZb3UgdXNlLCBZb3VyIG1vYmlsZSBkZXZpY2UgdW5pcXVlIElELCB0aGUgSVAgYWRkcmVzcyBvZiBZb3VyIG1vYmlsZSBkZXZpY2UsIFlvdXIgbW9iaWxlIG9wZXJhdGluZyBzeXN0ZW0sIHRoZSB0eXBlIG9mIG1vYmlsZSBJbnRlcm5ldCBicm93c2VyIFlvdSB1c2UsIHVuaXF1ZSBkZXZpY2UgaWRlbnRpZmllcnMgYW5kIG90aGVyIGRpYWdub3N0aWMgZGF0YS48L3A+CjxwPldlIG1heSBhbHNvIGNvbGxlY3QgaW5mb3JtYXRpb24gdGhhdCBZb3VyIGJyb3dzZXIgc2VuZHMgd2hlbmV2ZXIgWW91IHZpc2l0IG91ciBTZXJ2aWNlIG9yIHdoZW4gWW91IGFjY2VzcyB0aGUgU2VydmljZSBieSBvciB0aHJvdWdoIGEgbW9iaWxlIGRldmljZS48L3A+CjxoMz5UcmFja2luZyBUZWNobm9sb2dpZXMgYW5kIENvb2tpZXM8L2gzPgo8cD5XZSB1c2UgQ29va2llcyBhbmQgc2ltaWxhciB0cmFja2luZyB0ZWNobm9sb2dpZXMgdG8gdHJhY2sgdGhlIGFjdGl2aXR5IG9uIE91ciBTZXJ2aWNlIGFuZCBzdG9yZSBjZXJ0YWluIGluZm9ybWF0aW9uLiBUcmFja2luZyB0ZWNobm9sb2dpZXMgdXNlZCBhcmUgYmVhY29ucywgdGFncywgYW5kIHNjcmlwdHMgdG8gY29sbGVjdCBhbmQgdHJhY2sgaW5mb3JtYXRpb24gYW5kIHRvIGltcHJvdmUgYW5kIGFuYWx5emUgT3VyIFNlcnZpY2UuPC9wPgo8cD5Zb3UgY2FuIGluc3RydWN0IFlvdXIgYnJvd3NlciB0byByZWZ1c2UgYWxsIENvb2tpZXMgb3IgdG8gaW5kaWNhdGUgd2hlbiBhIENvb2tpZSBpcyBiZWluZyBzZW50LiBIb3dldmVyLCBpZiBZb3UgZG8gbm90IGFjY2VwdCBDb29raWVzLCBZb3UgbWF5IG5vdCBiZSBhYmxlIHRvIHVzZSBzb21lIHBhcnRzIG9mIG91ciBTZXJ2aWNlLjwvcD4KPHA+Q29va2llcyBjYW4gYmUgJnF1b3Q7UGVyc2lzdGVudCZxdW90OyBvciAmcXVvdDtTZXNzaW9uJnF1b3Q7IENvb2tpZXMuIFBlcnNpc3RlbnQgQ29va2llcyByZW1haW4gb24geW91ciBwZXJzb25hbCBjb21wdXRlciBvciBtb2JpbGUgZGV2aWNlIHdoZW4gWW91IGdvIG9mZmxpbmUsIHdoaWxlIFNlc3Npb24gQ29va2llcyBhcmUgZGVsZXRlZCBhcyBzb29uIGFzIFlvdSBjbG9zZSB5b3VyIHdlYiBicm93c2VyLiBMZWFybiBtb3JlIGFib3V0IGNvb2tpZXM6IDxhIGhyZWY9Imh0dHBzOi8vd3d3LnRlcm1zZmVlZC5jb20vYmxvZy9jb29raWVzLyIgdGFyZ2V0PSJfYmxhbmsiPkFsbCBBYm91dCBDb29raWVzPC9hPi48L3A+CjxwPldlIHVzZSBib3RoIHNlc3Npb24gYW5kIHBlcnNpc3RlbnQgQ29va2llcyBmb3IgdGhlIHB1cnBvc2VzIHNldCBvdXQgYmVsb3c6PC9wPgo8dWw+CjxsaT4KPHA+PHN0cm9uZz5OZWNlc3NhcnkgLyBFc3NlbnRpYWwgQ29va2llczwvc3Ryb25nPjwvcD4KPHA+VHlwZTogU2Vzc2lvbiBDb29raWVzPC9wPgo8cD5BZG1pbmlzdGVyZWQgYnk6IFVzPC9wPgo8cD5QdXJwb3NlOiBUaGVzZSBDb29raWVzIGFyZSBlc3NlbnRpYWwgdG8gcHJvdmlkZSBZb3Ugd2l0aCBzZXJ2aWNlcyBhdmFpbGFibGUgdGhyb3VnaCB0aGUgV2Vic2l0ZSBhbmQgdG8gZW5hYmxlIFlvdSB0byB1c2Ugc29tZSBvZiBpdHMgZmVhdHVyZXMuIFRoZXkgaGVscCB0byBhdXRoZW50aWNhdGUgdXNlcnMgYW5kIHByZXZlbnQgZnJhdWR1bGVudCB1c2Ugb2YgdXNlciBhY2NvdW50cy4gV2l0aG91dCB0aGVzZSBDb29raWVzLCB0aGUgc2VydmljZXMgdGhhdCBZb3UgaGF2ZSBhc2tlZCBmb3IgY2Fubm90IGJlIHByb3ZpZGVkLCBhbmQgV2Ugb25seSB1c2UgdGhlc2UgQ29va2llcyB0byBwcm92aWRlIFlvdSB3aXRoIHRob3NlIHNlcnZpY2VzLjwvcD4KPC9saT4KPGxpPgo8cD48c3Ryb25nPkNvb2tpZXMgUG9saWN5IC8gTm90aWNlIEFjY2VwdGFuY2UgQ29va2llczwvc3Ryb25nPjwvcD4KPHA+VHlwZTogUGVyc2lzdGVudCBDb29raWVzPC9wPgo8cD5BZG1pbmlzdGVyZWQgYnk6IFVzPC9wPgo8cD5QdXJwb3NlOiBUaGVzZSBDb29raWVzIGlkZW50aWZ5IGlmIHVzZXJzIGhhdmUgYWNjZXB0ZWQgdGhlIHVzZSBvZiBjb29raWVzIG9uIHRoZSBXZWJzaXRlLjwvcD4KPC9saT4KPGxpPgo8cD48c3Ryb25nPkZ1bmN0aW9uYWxpdHkgQ29va2llczwvc3Ryb25nPjwvcD4KPHA+VHlwZTogUGVyc2lzdGVudCBDb29raWVzPC9wPgo8cD5BZG1pbmlzdGVyZWQgYnk6IFVzPC9wPgo8cD5QdXJwb3NlOiBUaGVzZSBDb29raWVzIGFsbG93IHVzIHRvIHJlbWVtYmVyIGNob2ljZXMgWW91IG1ha2Ugd2hlbiBZb3UgdXNlIHRoZSBXZWJzaXRlLCBzdWNoIGFzIHJlbWVtYmVyaW5nIHlvdXIgbG9naW4gZGV0YWlscyBvciBsYW5ndWFnZSBwcmVmZXJlbmNlLiBUaGUgcHVycG9zZSBvZiB0aGVzZSBDb29raWVzIGlzIHRvIHByb3ZpZGUgWW91IHdpdGggYSBtb3JlIHBlcnNvbmFsIGV4cGVyaWVuY2UgYW5kIHRvIGF2b2lkIFlvdSBoYXZpbmcgdG8gcmUtZW50ZXIgeW91ciBwcmVmZXJlbmNlcyBldmVyeSB0aW1lIFlvdSB1c2UgdGhlIFdlYnNpdGUuPC9wPgo8L2xpPgo8bGk+CjxwPjxzdHJvbmc+VHJhY2tpbmcgYW5kIFBlcmZvcm1hbmNlIENvb2tpZXM8L3N0cm9uZz48L3A+CjxwPlR5cGU6IFBlcnNpc3RlbnQgQ29va2llczwvcD4KPHA+QWRtaW5pc3RlcmVkIGJ5OiBUaGlyZC1QYXJ0aWVzPC9wPgo8cD5QdXJwb3NlOiBUaGVzZSBDb29raWVzIGFyZSB1c2VkIHRvIHRyYWNrIGluZm9ybWF0aW9uIGFib3V0IHRyYWZmaWMgdG8gdGhlIFdlYnNpdGUgYW5kIGhvdyB1c2VycyB1c2UgdGhlIFdlYnNpdGUuIFRoZSBpbmZvcm1hdGlvbiBnYXRoZXJlZCB2aWEgdGhlc2UgQ29va2llcyBtYXkgZGlyZWN0bHkgb3IgaW5kaXJlY3RseSBpZGVudGlmeSB5b3UgYXMgYW4gaW5kaXZpZHVhbCB2aXNpdG9yLiBUaGlzIGlzIGJlY2F1c2UgdGhlIGluZm9ybWF0aW9uIGNvbGxlY3RlZCBpcyB0eXBpY2FsbHkgbGlua2VkIHRvIGEgcHNldWRvbnltb3VzIGlkZW50aWZpZXIgYXNzb2NpYXRlZCB3aXRoIHRoZSBkZXZpY2UgeW91IHVzZSB0byBhY2Nlc3MgdGhlIFdlYnNpdGUuIFdlIG1heSBhbHNvIHVzZSB0aGVzZSBDb29raWVzIHRvIHRlc3QgbmV3IGFkdmVydGlzZW1lbnRzLCBwYWdlcywgZmVhdHVyZXMgb3IgbmV3IGZ1bmN0aW9uYWxpdHkgb2YgdGhlIFdlYnNpdGUgdG8gc2VlIGhvdyBvdXIgdXNlcnMgcmVhY3QgdG8gdGhlbS48L3A+CjwvbGk+CjwvdWw+CjxwPkZvciBtb3JlIGluZm9ybWF0aW9uIGFib3V0IHRoZSBjb29raWVzIHdlIHVzZSBhbmQgeW91ciBjaG9pY2VzIHJlZ2FyZGluZyBjb29raWVzLCBwbGVhc2UgdmlzaXQgb3VyIENvb2tpZXMgUG9saWN5IG9yIHRoZSBDb29raWVzIHNlY3Rpb24gb2Ygb3VyIFByaXZhY3kgUG9saWN5LjwvcD4KPGgyPlVzZSBvZiBZb3VyIFBlcnNvbmFsIERhdGE8L2gyPgo8cD5UaGUgQ29tcGFueSBtYXkgdXNlIFBlcnNvbmFsIERhdGEgZm9yIHRoZSBmb2xsb3dpbmcgcHVycG9zZXM6PC9wPgo8dWw+CjxsaT48c3Ryb25nPlRvIHByb3ZpZGUgYW5kIG1haW50YWluIG91ciBTZXJ2aWNlPC9zdHJvbmc+LCBpbmNsdWRpbmcgdG8gbW9uaXRvciB0aGUgdXNhZ2Ugb2Ygb3VyIFNlcnZpY2UuPC9saT4KPGxpPjxzdHJvbmc+VG8gbWFuYWdlIFlvdXIgQWNjb3VudDo8L3N0cm9uZz4gdG8gbWFuYWdlIFlvdXIgcmVnaXN0cmF0aW9uIGFzIGEgdXNlciBvZiB0aGUgU2VydmljZS4gVGhlIFBlcnNvbmFsIERhdGEgWW91IHByb3ZpZGUgY2FuIGdpdmUgWW91IGFjY2VzcyB0byBkaWZmZXJlbnQgZnVuY3Rpb25hbGl0aWVzIG9mIHRoZSBTZXJ2aWNlIHRoYXQgYXJlIGF2YWlsYWJsZSB0byBZb3UgYXMgYSByZWdpc3RlcmVkIHVzZXIuPC9saT4KPGxpPjxzdHJvbmc+Rm9yIHRoZSBwZXJmb3JtYW5jZSBvZiBhIGNvbnRyYWN0Ojwvc3Ryb25nPiB0aGUgZGV2ZWxvcG1lbnQsIGNvbXBsaWFuY2UgYW5kIHVuZGVydGFraW5nIG9mIHRoZSBwdXJjaGFzZSBjb250cmFjdCBmb3IgdGhlIHByb2R1Y3RzLCBpdGVtcyBvciBzZXJ2aWNlcyBZb3UgaGF2ZSBwdXJjaGFzZWQgb3Igb2YgYW55IG90aGVyIGNvbnRyYWN0IHdpdGggVXMgdGhyb3VnaCB0aGUgU2VydmljZS48L2xpPgo8bGk+PHN0cm9uZz5UbyBjb250YWN0IFlvdTo8L3N0cm9uZz4gVG8gY29udGFjdCBZb3UgYnkgZW1haWwsIHRlbGVwaG9uZSBjYWxscywgU01TLCBvciBvdGhlciBlcXVpdmFsZW50IGZvcm1zIG9mIGVsZWN0cm9uaWMgY29tbXVuaWNhdGlvbiwgc3VjaCBhcyBhIG1vYmlsZSBhcHBsaWNhdGlvbidzIHB1c2ggbm90aWZpY2F0aW9ucyByZWdhcmRpbmcgdXBkYXRlcyBvciBpbmZvcm1hdGl2ZSBjb21tdW5pY2F0aW9ucyByZWxhdGVkIHRvIHRoZSBmdW5jdGlvbmFsaXRpZXMsIHByb2R1Y3RzIG9yIGNvbnRyYWN0ZWQgc2VydmljZXMsIGluY2x1ZGluZyB0aGUgc2VjdXJpdHkgdXBkYXRlcywgd2hlbiBuZWNlc3Nhcnkgb3IgcmVhc29uYWJsZSBmb3IgdGhlaXIgaW1wbGVtZW50YXRpb24uPC9saT4KPGxpPjxzdHJvbmc+VG8gcHJvdmlkZSBZb3U8L3N0cm9uZz4gd2l0aCBuZXdzLCBzcGVjaWFsIG9mZmVycyBhbmQgZ2VuZXJhbCBpbmZvcm1hdGlvbiBhYm91dCBvdGhlciBnb29kcywgc2VydmljZXMgYW5kIGV2ZW50cyB3aGljaCB3ZSBvZmZlciB0aGF0IGFyZSBzaW1pbGFyIHRvIHRob3NlIHRoYXQgeW91IGhhdmUgYWxyZWFkeSBwdXJjaGFzZWQgb3IgZW5xdWlyZWQgYWJvdXQgdW5sZXNzIFlvdSBoYXZlIG9wdGVkIG5vdCB0byByZWNlaXZlIHN1Y2ggaW5mb3JtYXRpb24uPC9saT4KPGxpPjxzdHJvbmc+VG8gbWFuYWdlIFlvdXIgcmVxdWVzdHM6PC9zdHJvbmc+IFRvIGF0dGVuZCBhbmQgbWFuYWdlIFlvdXIgcmVxdWVzdHMgdG8gVXMuPC9saT4KPC91bD4KPHA+V2UgbWF5IHNoYXJlIHlvdXIgcGVyc29uYWwgaW5mb3JtYXRpb24gaW4gdGhlIGZvbGxvd2luZyBzaXR1YXRpb25zOjwvcD4KPHVsPgo8bGk+PHN0cm9uZz5XaXRoIFNlcnZpY2UgUHJvdmlkZXJzOjwvc3Ryb25nPiBXZSBtYXkgc2hhcmUgWW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiB3aXRoIFNlcnZpY2UgUHJvdmlkZXJzIHRvIG1vbml0b3IgYW5kIGFuYWx5emUgdGhlIHVzZSBvZiBvdXIgU2VydmljZSwgZm9yIHBheW1lbnQgcHJvY2Vzc2luZywgIHRvIGNvbnRhY3QgWW91LjwvbGk+CjxsaT48c3Ryb25nPkZvciBCdXNpbmVzcyB0cmFuc2ZlcnM6PC9zdHJvbmc+IFdlIG1heSBzaGFyZSBvciB0cmFuc2ZlciBZb3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGluIGNvbm5lY3Rpb24gd2l0aCwgb3IgZHVyaW5nIG5lZ290aWF0aW9ucyBvZiwgYW55IG1lcmdlciwgc2FsZSBvZiBDb21wYW55IGFzc2V0cywgZmluYW5jaW5nLCBvciBhY3F1aXNpdGlvbiBvZiBhbGwgb3IgYSBwb3J0aW9uIG9mIG91ciBidXNpbmVzcyB0byBhbm90aGVyIGNvbXBhbnkuPC9saT4KPGxpPjxzdHJvbmc+V2l0aCBBZmZpbGlhdGVzOjwvc3Ryb25nPiBXZSBtYXkgc2hhcmUgWW91ciBpbmZvcm1hdGlvbiB3aXRoIE91ciBhZmZpbGlhdGVzLCBpbiB3aGljaCBjYXNlIHdlIHdpbGwgcmVxdWlyZSB0aG9zZSBhZmZpbGlhdGVzIHRvIGhvbm9yIHRoaXMgUHJpdmFjeSBQb2xpY3kuIEFmZmlsaWF0ZXMgaW5jbHVkZSBPdXIgcGFyZW50IGNvbXBhbnkgYW5kIGFueSBvdGhlciBzdWJzaWRpYXJpZXMsIGpvaW50IHZlbnR1cmUgcGFydG5lcnMgb3Igb3RoZXIgY29tcGFuaWVzIHRoYXQgV2UgY29udHJvbCBvciB0aGF0IGFyZSB1bmRlciBjb21tb24gY29udHJvbCB3aXRoIFVzLjwvbGk+CjxsaT48c3Ryb25nPldpdGggQnVzaW5lc3MgcGFydG5lcnM6PC9zdHJvbmc+IFdlIG1heSBzaGFyZSBZb3VyIGluZm9ybWF0aW9uIHdpdGggT3VyIGJ1c2luZXNzIHBhcnRuZXJzIHRvIG9mZmVyIFlvdSBjZXJ0YWluIHByb2R1Y3RzLCBzZXJ2aWNlcyBvciBwcm9tb3Rpb25zLjwvbGk+CjxsaT48c3Ryb25nPldpdGggb3RoZXIgdXNlcnM6PC9zdHJvbmc+IHdoZW4gWW91IHNoYXJlIHBlcnNvbmFsIGluZm9ybWF0aW9uIG9yIG90aGVyd2lzZSBpbnRlcmFjdCBpbiB0aGUgcHVibGljIGFyZWFzIHdpdGggb3RoZXIgdXNlcnMsIHN1Y2ggaW5mb3JtYXRpb24gbWF5IGJlIHZpZXdlZCBieSBhbGwgdXNlcnMgYW5kIG1heSBiZSBwdWJsaWNseSBkaXN0cmlidXRlZCBvdXRzaWRlLiBJZiBZb3UgaW50ZXJhY3Qgd2l0aCBvdGhlciB1c2VycyBvciByZWdpc3RlciB0aHJvdWdoIGEgVGhpcmQtUGFydHkgU29jaWFsIE1lZGlhIFNlcnZpY2UsIFlvdXIgY29udGFjdHMgb24gdGhlIFRoaXJkLVBhcnR5IFNvY2lhbCBNZWRpYSBTZXJ2aWNlIG1heSBzZWUgWW91ciBuYW1lLCBwcm9maWxlLCBwaWN0dXJlcyBhbmQgZGVzY3JpcHRpb24gb2YgWW91ciBhY3Rpdml0eS4gU2ltaWxhcmx5LCBvdGhlciB1c2VycyB3aWxsIGJlIGFibGUgdG8gdmlldyBkZXNjcmlwdGlvbnMgb2YgWW91ciBhY3Rpdml0eSwgY29tbXVuaWNhdGUgd2l0aCBZb3UgYW5kIHZpZXcgWW91ciBwcm9maWxlLjwvbGk+CjwvdWw+CjxoMj5SZXRlbnRpb24gb2YgWW91ciBQZXJzb25hbCBEYXRhPC9oMj4KPHA+VGhlIENvbXBhbnkgd2lsbCByZXRhaW4gWW91ciBQZXJzb25hbCBEYXRhIG9ubHkgZm9yIGFzIGxvbmcgYXMgaXMgbmVjZXNzYXJ5IGZvciB0aGUgcHVycG9zZXMgc2V0IG91dCBpbiB0aGlzIFByaXZhY3kgUG9saWN5LiBXZSB3aWxsIHJldGFpbiBhbmQgdXNlIFlvdXIgUGVyc29uYWwgRGF0YSB0byB0aGUgZXh0ZW50IG5lY2Vzc2FyeSB0byBjb21wbHkgd2l0aCBvdXIgbGVnYWwgb2JsaWdhdGlvbnMgKGZvciBleGFtcGxlLCBpZiB3ZSBhcmUgcmVxdWlyZWQgdG8gcmV0YWluIHlvdXIgZGF0YSB0byBjb21wbHkgd2l0aCBhcHBsaWNhYmxlIGxhd3MpLCByZXNvbHZlIGRpc3B1dGVzLCBhbmQgZW5mb3JjZSBvdXIgbGVnYWwgYWdyZWVtZW50cyBhbmQgcG9saWNpZXMuPC9wPgo8cD5UaGUgQ29tcGFueSB3aWxsIGFsc28gcmV0YWluIFVzYWdlIERhdGEgZm9yIGludGVybmFsIGFuYWx5c2lzIHB1cnBvc2VzLiBVc2FnZSBEYXRhIGlzIGdlbmVyYWxseSByZXRhaW5lZCBmb3IgYSBzaG9ydGVyIHBlcmlvZCBvZiB0aW1lLCBleGNlcHQgd2hlbiB0aGlzIGRhdGEgaXMgdXNlZCB0byBzdHJlbmd0aGVuIHRoZSBzZWN1cml0eSBvciB0byBpbXByb3ZlIHRoZSBmdW5jdGlvbmFsaXR5IG9mIE91ciBTZXJ2aWNlLCBvciBXZSBhcmUgbGVnYWxseSBvYmxpZ2F0ZWQgdG8gcmV0YWluIHRoaXMgZGF0YSBmb3IgbG9uZ2VyIHRpbWUgcGVyaW9kcy48L3A+CjxoMj5UcmFuc2ZlciBvZiBZb3VyIFBlcnNvbmFsIERhdGE8L2gyPgo8cD5Zb3VyIGluZm9ybWF0aW9uLCBpbmNsdWRpbmcgUGVyc29uYWwgRGF0YSwgaXMgcHJvY2Vzc2VkIGF0IHRoZSBDb21wYW55J3Mgb3BlcmF0aW5nIG9mZmljZXMgYW5kIGluIGFueSBvdGhlciBwbGFjZXMgd2hlcmUgdGhlIHBhcnRpZXMgaW52b2x2ZWQgaW4gdGhlIHByb2Nlc3NpbmcgYXJlIGxvY2F0ZWQuIEl0IG1lYW5zIHRoYXQgdGhpcyBpbmZvcm1hdGlvbiBtYXkgYmUgdHJhbnNmZXJyZWQgdG8g4oCUIGFuZCBtYWludGFpbmVkIG9uIOKAlCBjb21wdXRlcnMgbG9jYXRlZCBvdXRzaWRlIG9mIFlvdXIgc3RhdGUsIHByb3ZpbmNlLCBjb3VudHJ5IG9yIG90aGVyIGdvdmVybm1lbnRhbCBqdXJpc2RpY3Rpb24gd2hlcmUgdGhlIGRhdGEgcHJvdGVjdGlvbiBsYXdzIG1heSBkaWZmZXIgdGhhbiB0aG9zZSBmcm9tIFlvdXIganVyaXNkaWN0aW9uLjwvcD4KPHA+WW91ciBjb25zZW50IHRvIHRoaXMgUHJpdmFjeSBQb2xpY3kgZm9sbG93ZWQgYnkgWW91ciBzdWJtaXNzaW9uIG9mIHN1Y2ggaW5mb3JtYXRpb24gcmVwcmVzZW50cyBZb3VyIGFncmVlbWVudCB0byB0aGF0IHRyYW5zZmVyLjwvcD4KPHA+VGhlIENvbXBhbnkgd2lsbCB0YWtlIGFsbCBzdGVwcyByZWFzb25hYmx5IG5lY2Vzc2FyeSB0byBlbnN1cmUgdGhhdCBZb3VyIGRhdGEgaXMgdHJlYXRlZCBzZWN1cmVseSBhbmQgaW4gYWNjb3JkYW5jZSB3aXRoIHRoaXMgUHJpdmFjeSBQb2xpY3kgYW5kIG5vIHRyYW5zZmVyIG9mIFlvdXIgUGVyc29uYWwgRGF0YSB3aWxsIHRha2UgcGxhY2UgdG8gYW4gb3JnYW5pemF0aW9uIG9yIGEgY291bnRyeSB1bmxlc3MgdGhlcmUgYXJlIGFkZXF1YXRlIGNvbnRyb2xzIGluIHBsYWNlIGluY2x1ZGluZyB0aGUgc2VjdXJpdHkgb2YgWW91ciBkYXRhIGFuZCBvdGhlciBwZXJzb25hbCBpbmZvcm1hdGlvbi48L3A+CjxoMj5EaXNjbG9zdXJlIG9mIFlvdXIgUGVyc29uYWwgRGF0YTwvaDI+CjxoMz5CdXNpbmVzcyBUcmFuc2FjdGlvbnM8L2gzPgo8cD5JZiB0aGUgQ29tcGFueSBpcyBpbnZvbHZlZCBpbiBhIG1lcmdlciwgYWNxdWlzaXRpb24gb3IgYXNzZXQgc2FsZSwgWW91ciBQZXJzb25hbCBEYXRhIG1heSBiZSB0cmFuc2ZlcnJlZC4gV2Ugd2lsbCBwcm92aWRlIG5vdGljZSBiZWZvcmUgWW91ciBQZXJzb25hbCBEYXRhIGlzIHRyYW5zZmVycmVkIGFuZCBiZWNvbWVzIHN1YmplY3QgdG8gYSBkaWZmZXJlbnQgUHJpdmFjeSBQb2xpY3kuPC9wPgo8aDM+TGF3IGVuZm9yY2VtZW50PC9oMz4KPHA+VW5kZXIgY2VydGFpbiBjaXJjdW1zdGFuY2VzLCB0aGUgQ29tcGFueSBtYXkgYmUgcmVxdWlyZWQgdG8gZGlzY2xvc2UgWW91ciBQZXJzb25hbCBEYXRhIGlmIHJlcXVpcmVkIHRvIGRvIHNvIGJ5IGxhdyBvciBpbiByZXNwb25zZSB0byB2YWxpZCByZXF1ZXN0cyBieSBwdWJsaWMgYXV0aG9yaXRpZXMgKGUuZy4gYSBjb3VydCBvciBhIGdvdmVybm1lbnQgYWdlbmN5KS48L3A+CjxoMz5PdGhlciBsZWdhbCByZXF1aXJlbWVudHM8L2gzPgo8cD5UaGUgQ29tcGFueSBtYXkgZGlzY2xvc2UgWW91ciBQZXJzb25hbCBEYXRhIGluIHRoZSBnb29kIGZhaXRoIGJlbGllZiB0aGF0IHN1Y2ggYWN0aW9uIGlzIG5lY2Vzc2FyeSB0bzo8L3A+Cjx1bD4KPGxpPkNvbXBseSB3aXRoIGEgbGVnYWwgb2JsaWdhdGlvbjwvbGk+CjxsaT5Qcm90ZWN0IGFuZCBkZWZlbmQgdGhlIHJpZ2h0cyBvciBwcm9wZXJ0eSBvZiB0aGUgQ29tcGFueTwvbGk+CjxsaT5QcmV2ZW50IG9yIGludmVzdGlnYXRlIHBvc3NpYmxlIHdyb25nZG9pbmcgaW4gY29ubmVjdGlvbiB3aXRoIHRoZSBTZXJ2aWNlPC9saT4KPGxpPlByb3RlY3QgdGhlIHBlcnNvbmFsIHNhZmV0eSBvZiBVc2VycyBvZiB0aGUgU2VydmljZSBvciB0aGUgcHVibGljPC9saT4KPGxpPlByb3RlY3QgYWdhaW5zdCBsZWdhbCBsaWFiaWxpdHk8L2xpPgo8L3VsPgo8aDI+U2VjdXJpdHkgb2YgWW91ciBQZXJzb25hbCBEYXRhPC9oMj4KPHA+VGhlIHNlY3VyaXR5IG9mIFlvdXIgUGVyc29uYWwgRGF0YSBpcyBpbXBvcnRhbnQgdG8gVXMsIGJ1dCByZW1lbWJlciB0aGF0IG5vIG1ldGhvZCBvZiB0cmFuc21pc3Npb24gb3ZlciB0aGUgSW50ZXJuZXQsIG9yIG1ldGhvZCBvZiBlbGVjdHJvbmljIHN0b3JhZ2UgaXMgMTAwJSBzZWN1cmUuIFdoaWxlIFdlIHN0cml2ZSB0byB1c2UgY29tbWVyY2lhbGx5IGFjY2VwdGFibGUgbWVhbnMgdG8gcHJvdGVjdCBZb3VyIFBlcnNvbmFsIERhdGEsIFdlIGNhbm5vdCBndWFyYW50ZWUgaXRzIGFic29sdXRlIHNlY3VyaXR5LjwvcD4KPGgxPkRldGFpbGVkIEluZm9ybWF0aW9uIG9uIHRoZSBQcm9jZXNzaW5nIG9mIFlvdXIgUGVyc29uYWwgRGF0YTwvaDE+CjxwPlNlcnZpY2UgUHJvdmlkZXJzIGhhdmUgYWNjZXNzIHRvIFlvdXIgUGVyc29uYWwgRGF0YSBvbmx5IHRvIHBlcmZvcm0gdGhlaXIgdGFza3Mgb24gT3VyIGJlaGFsZiBhbmQgYXJlIG9ibGlnYXRlZCBub3QgdG8gZGlzY2xvc2Ugb3IgdXNlIGl0IGZvciBhbnkgb3RoZXIgcHVycG9zZS48L3A+CjxoMj5BbmFseXRpY3M8L2gyPgo8cD5XZSBtYXkgdXNlIHRoaXJkLXBhcnR5IFNlcnZpY2UgcHJvdmlkZXJzIHRvIG1vbml0b3IgYW5kIGFuYWx5emUgdGhlIHVzZSBvZiBvdXIgU2VydmljZS48L3A+Cjx1bD4KPGxpPgo8cD48c3Ryb25nPkdvb2dsZSBBbmFseXRpY3M8L3N0cm9uZz48L3A+CjxwPkdvb2dsZSBBbmFseXRpY3MgaXMgYSB3ZWIgYW5hbHl0aWNzIHNlcnZpY2Ugb2ZmZXJlZCBieSBHb29nbGUgdGhhdCB0cmFja3MgYW5kIHJlcG9ydHMgd2Vic2l0ZSB0cmFmZmljLiBHb29nbGUgdXNlcyB0aGUgZGF0YSBjb2xsZWN0ZWQgdG8gdHJhY2sgYW5kIG1vbml0b3IgdGhlIHVzZSBvZiBvdXIgU2VydmljZS4gVGhpcyBkYXRhIGlzIHNoYXJlZCB3aXRoIG90aGVyIEdvb2dsZSBzZXJ2aWNlcy4gR29vZ2xlIG1heSB1c2UgdGhlIGNvbGxlY3RlZCBkYXRhIHRvIGNvbnRleHR1YWxpemUgYW5kIHBlcnNvbmFsaXplIHRoZSBhZHMgb2YgaXRzIG93biBhZHZlcnRpc2luZyBuZXR3b3JrLjwvcD4KPHA+WW91IGNhbiBvcHQtb3V0IG9mIGhhdmluZyBtYWRlIHlvdXIgYWN0aXZpdHkgb24gdGhlIFNlcnZpY2UgYXZhaWxhYmxlIHRvIEdvb2dsZSBBbmFseXRpY3MgYnkgaW5zdGFsbGluZyB0aGUgR29vZ2xlIEFuYWx5dGljcyBvcHQtb3V0IGJyb3dzZXIgYWRkLW9uLiBUaGUgYWRkLW9uIHByZXZlbnRzIHRoZSBHb29nbGUgQW5hbHl0aWNzIEphdmFTY3JpcHQgKGdhLmpzLCBhbmFseXRpY3MuanMgYW5kIGRjLmpzKSBmcm9tIHNoYXJpbmcgaW5mb3JtYXRpb24gd2l0aCBHb29nbGUgQW5hbHl0aWNzIGFib3V0IHZpc2l0cyBhY3Rpdml0eS48L3A+CjxwPkZvciBtb3JlIGluZm9ybWF0aW9uIG9uIHRoZSBwcml2YWN5IHByYWN0aWNlcyBvZiBHb29nbGUsIHBsZWFzZSB2aXNpdCB0aGUgR29vZ2xlIFByaXZhY3kgJmFtcDsgVGVybXMgd2ViIHBhZ2U6IDxhIGhyZWY9Imh0dHBzOi8vcG9saWNpZXMuZ29vZ2xlLmNvbS9wcml2YWN5IiByZWw9ImV4dGVybmFsIG5vZm9sbG93IG5vb3BlbmVyIiB0YXJnZXQ9Il9ibGFuayI+aHR0cHM6Ly9wb2xpY2llcy5nb29nbGUuY29tL3ByaXZhY3k8L2E+PC9wPgo8L2xpPgo8L3VsPgo8aDI+RW1haWwgTWFya2V0aW5nPC9oMj4KPHA+V2UgbWF5IHVzZSBZb3VyIFBlcnNvbmFsIERhdGEgdG8gY29udGFjdCBZb3Ugd2l0aCBuZXdzbGV0dGVycywgbWFya2V0aW5nIG9yIHByb21vdGlvbmFsIG1hdGVyaWFscyBhbmQgb3RoZXIgaW5mb3JtYXRpb24gdGhhdCBtYXkgYmUgb2YgaW50ZXJlc3QgdG8gWW91LiBZb3UgbWF5IG9wdC1vdXQgb2YgcmVjZWl2aW5nIGFueSwgb3IgYWxsLCBvZiB0aGVzZSBjb21tdW5pY2F0aW9ucyBmcm9tIFVzIGJ5IGZvbGxvd2luZyB0aGUgdW5zdWJzY3JpYmUgbGluayBvciBpbnN0cnVjdGlvbnMgcHJvdmlkZWQgaW4gYW55IGVtYWlsIFdlIHNlbmQgb3IgYnkgY29udGFjdGluZyBVcy48L3A+CjxwPldlIG1heSB1c2UgRW1haWwgTWFya2V0aW5nIFNlcnZpY2UgUHJvdmlkZXJzIHRvIG1hbmFnZSBhbmQgc2VuZCBlbWFpbHMgdG8gWW91LjwvcD4KPHVsPgo8bGk+CjxwPjxzdHJvbmc+TWFpbGNoaW1wPC9zdHJvbmc+PC9wPgo8cD5NYWlsY2hpbXAgaXMgYW4gZW1haWwgbWFya2V0aW5nIHNlbmRpbmcgc2VydmljZSBwcm92aWRlZCBieSBUaGUgUm9ja2V0IFNjaWVuY2UgR3JvdXAgTExDLjwvcD4KPHA+Rm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhlIHByaXZhY3kgcHJhY3RpY2VzIG9mIE1haWxjaGltcCwgcGxlYXNlIHZpc2l0IHRoZWlyIFByaXZhY3kgcG9saWN5OiA8YSBocmVmPSJodHRwczovL21haWxjaGltcC5jb20vbGVnYWwvcHJpdmFjeS8iIHJlbD0iZXh0ZXJuYWwgbm9mb2xsb3cgbm9vcGVuZXIiIHRhcmdldD0iX2JsYW5rIj5odHRwczovL21haWxjaGltcC5jb20vbGVnYWwvcHJpdmFjeS88L2E+PC9wPgo8L2xpPgo8L3VsPgo8aDI+UGF5bWVudHM8L2gyPgo8cD5XZSBtYXkgcHJvdmlkZSBwYWlkIHByb2R1Y3RzIGFuZC9vciBzZXJ2aWNlcyB3aXRoaW4gdGhlIFNlcnZpY2UuIEluIHRoYXQgY2FzZSwgd2UgbWF5IHVzZSB0aGlyZC1wYXJ0eSBzZXJ2aWNlcyBmb3IgcGF5bWVudCBwcm9jZXNzaW5nIChlLmcuIHBheW1lbnQgcHJvY2Vzc29ycykuPC9wPgo8cD5XZSB3aWxsIG5vdCBzdG9yZSBvciBjb2xsZWN0IFlvdXIgcGF5bWVudCBjYXJkIGRldGFpbHMuIFRoYXQgaW5mb3JtYXRpb24gaXMgcHJvdmlkZWQgZGlyZWN0bHkgdG8gT3VyIHRoaXJkLXBhcnR5IHBheW1lbnQgcHJvY2Vzc29ycyB3aG9zZSB1c2Ugb2YgWW91ciBwZXJzb25hbCBpbmZvcm1hdGlvbiBpcyBnb3Zlcm5lZCBieSB0aGVpciBQcml2YWN5IFBvbGljeS4gVGhlc2UgcGF5bWVudCBwcm9jZXNzb3JzIGFkaGVyZSB0byB0aGUgc3RhbmRhcmRzIHNldCBieSBQQ0ktRFNTIGFzIG1hbmFnZWQgYnkgdGhlIFBDSSBTZWN1cml0eSBTdGFuZGFyZHMgQ291bmNpbCwgd2hpY2ggaXMgYSBqb2ludCBlZmZvcnQgb2YgYnJhbmRzIGxpa2UgVmlzYSwgTWFzdGVyY2FyZCwgQW1lcmljYW4gRXhwcmVzcyBhbmQgRGlzY292ZXIuIFBDSS1EU1MgcmVxdWlyZW1lbnRzIGhlbHAgZW5zdXJlIHRoZSBzZWN1cmUgaGFuZGxpbmcgb2YgcGF5bWVudCBpbmZvcm1hdGlvbi48L3A+Cjx1bD4KPGxpPgo8cD48c3Ryb25nPlNxdWFyZTwvc3Ryb25nPjwvcD4KPHA+VGhlaXIgUHJpdmFjeSBQb2xpY3kgY2FuIGJlIHZpZXdlZCBhdCA8YSBocmVmPSJodHRwczovL3NxdWFyZXVwLmNvbS9sZWdhbC9wcml2YWN5LW5vLWFjY291bnQiIHJlbD0iZXh0ZXJuYWwgbm9mb2xsb3cgbm9vcGVuZXIiIHRhcmdldD0iX2JsYW5rIj5odHRwczovL3NxdWFyZXVwLmNvbS9sZWdhbC9wcml2YWN5LW5vLWFjY291bnQ8L2E+PC9wPgo8L2xpPgo8L3VsPgo8aDE+R0RQUiBQcml2YWN5PC9oMT4KPGgyPkxlZ2FsIEJhc2lzIGZvciBQcm9jZXNzaW5nIFBlcnNvbmFsIERhdGEgdW5kZXIgR0RQUjwvaDI+CjxwPldlIG1heSBwcm9jZXNzIFBlcnNvbmFsIERhdGEgdW5kZXIgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOjwvcD4KPHVsPgo8bGk+PHN0cm9uZz5Db25zZW50Ojwvc3Ryb25nPiBZb3UgaGF2ZSBnaXZlbiBZb3VyIGNvbnNlbnQgZm9yIHByb2Nlc3NpbmcgUGVyc29uYWwgRGF0YSBmb3Igb25lIG9yIG1vcmUgc3BlY2lmaWMgcHVycG9zZXMuPC9saT4KPGxpPjxzdHJvbmc+UGVyZm9ybWFuY2Ugb2YgYSBjb250cmFjdDo8L3N0cm9uZz4gUHJvdmlzaW9uIG9mIFBlcnNvbmFsIERhdGEgaXMgbmVjZXNzYXJ5IGZvciB0aGUgcGVyZm9ybWFuY2Ugb2YgYW4gYWdyZWVtZW50IHdpdGggWW91IGFuZC9vciBmb3IgYW55IHByZS1jb250cmFjdHVhbCBvYmxpZ2F0aW9ucyB0aGVyZW9mLjwvbGk+CjxsaT48c3Ryb25nPkxlZ2FsIG9ibGlnYXRpb25zOjwvc3Ryb25nPiBQcm9jZXNzaW5nIFBlcnNvbmFsIERhdGEgaXMgbmVjZXNzYXJ5IGZvciBjb21wbGlhbmNlIHdpdGggYSBsZWdhbCBvYmxpZ2F0aW9uIHRvIHdoaWNoIHRoZSBDb21wYW55IGlzIHN1YmplY3QuPC9saT4KPGxpPjxzdHJvbmc+Vml0YWwgaW50ZXJlc3RzOjwvc3Ryb25nPiBQcm9jZXNzaW5nIFBlcnNvbmFsIERhdGEgaXMgbmVjZXNzYXJ5IGluIG9yZGVyIHRvIHByb3RlY3QgWW91ciB2aXRhbCBpbnRlcmVzdHMgb3Igb2YgYW5vdGhlciBuYXR1cmFsIHBlcnNvbi48L2xpPgo8bGk+PHN0cm9uZz5QdWJsaWMgaW50ZXJlc3RzOjwvc3Ryb25nPiBQcm9jZXNzaW5nIFBlcnNvbmFsIERhdGEgaXMgcmVsYXRlZCB0byBhIHRhc2sgdGhhdCBpcyBjYXJyaWVkIG91dCBpbiB0aGUgcHVibGljIGludGVyZXN0IG9yIGluIHRoZSBleGVyY2lzZSBvZiBvZmZpY2lhbCBhdXRob3JpdHkgdmVzdGVkIGluIHRoZSBDb21wYW55LjwvbGk+CjxsaT48c3Ryb25nPkxlZ2l0aW1hdGUgaW50ZXJlc3RzOjwvc3Ryb25nPiBQcm9jZXNzaW5nIFBlcnNvbmFsIERhdGEgaXMgbmVjZXNzYXJ5IGZvciB0aGUgcHVycG9zZXMgb2YgdGhlIGxlZ2l0aW1hdGUgaW50ZXJlc3RzIHB1cnN1ZWQgYnkgdGhlIENvbXBhbnkuPC9saT4KPC91bD4KPHA+SW4gYW55IGNhc2UsIHRoZSBDb21wYW55IHdpbGwgZ2xhZGx5IGhlbHAgdG8gY2xhcmlmeSB0aGUgc3BlY2lmaWMgbGVnYWwgYmFzaXMgdGhhdCBhcHBsaWVzIHRvIHRoZSBwcm9jZXNzaW5nLCBhbmQgaW4gcGFydGljdWxhciB3aGV0aGVyIHRoZSBwcm92aXNpb24gb2YgUGVyc29uYWwgRGF0YSBpcyBhIHN0YXR1dG9yeSBvciBjb250cmFjdHVhbCByZXF1aXJlbWVudCwgb3IgYSByZXF1aXJlbWVudCBuZWNlc3NhcnkgdG8gZW50ZXIgaW50byBhIGNvbnRyYWN0LjwvcD4KPGgyPllvdXIgUmlnaHRzIHVuZGVyIHRoZSBHRFBSPC9oMj4KPHA+VGhlIENvbXBhbnkgdW5kZXJ0YWtlcyB0byByZXNwZWN0IHRoZSBjb25maWRlbnRpYWxpdHkgb2YgWW91ciBQZXJzb25hbCBEYXRhIGFuZCB0byBndWFyYW50ZWUgWW91IGNhbiBleGVyY2lzZSBZb3VyIHJpZ2h0cy48L3A+CjxwPllvdSBoYXZlIHRoZSByaWdodCB1bmRlciB0aGlzIFByaXZhY3kgUG9saWN5LCBhbmQgYnkgbGF3IGlmIFlvdSBhcmUgd2l0aGluIHRoZSBFVSwgdG86PC9wPgo8dWw+CjxsaT48c3Ryb25nPlJlcXVlc3QgYWNjZXNzIHRvIFlvdXIgUGVyc29uYWwgRGF0YS48L3N0cm9uZz4gVGhlIHJpZ2h0IHRvIGFjY2VzcywgdXBkYXRlIG9yIGRlbGV0ZSB0aGUgaW5mb3JtYXRpb24gV2UgaGF2ZSBvbiBZb3UuIFdoZW5ldmVyIG1hZGUgcG9zc2libGUsIHlvdSBjYW4gYWNjZXNzLCB1cGRhdGUgb3IgcmVxdWVzdCBkZWxldGlvbiBvZiBZb3VyIFBlcnNvbmFsIERhdGEgZGlyZWN0bHkgd2l0aGluIFlvdXIgYWNjb3VudCBzZXR0aW5ncyBzZWN0aW9uLiBJZiB5b3UgYXJlIHVuYWJsZSB0byBwZXJmb3JtIHRoZXNlIGFjdGlvbnMgeW91cnNlbGYsIHBsZWFzZSBjb250YWN0IFVzIHRvIGFzc2lzdCBZb3UuIFRoaXMgYWxzbyBlbmFibGVzIFlvdSB0byByZWNlaXZlIGEgY29weSBvZiB0aGUgUGVyc29uYWwgRGF0YSBXZSBob2xkIGFib3V0IFlvdS48L2xpPgo8bGk+PHN0cm9uZz5SZXF1ZXN0IGNvcnJlY3Rpb24gb2YgdGhlIFBlcnNvbmFsIERhdGEgdGhhdCBXZSBob2xkIGFib3V0IFlvdS48L3N0cm9uZz4gWW91IGhhdmUgdGhlIHJpZ2h0IHRvIHRvIGhhdmUgYW55IGluY29tcGxldGUgb3IgaW5hY2N1cmF0ZSBpbmZvcm1hdGlvbiBXZSBob2xkIGFib3V0IFlvdSBjb3JyZWN0ZWQuPC9saT4KPGxpPjxzdHJvbmc+T2JqZWN0IHRvIHByb2Nlc3Npbmcgb2YgWW91ciBQZXJzb25hbCBEYXRhLjwvc3Ryb25nPiBUaGlzIHJpZ2h0IGV4aXN0cyB3aGVyZSBXZSBhcmUgcmVseWluZyBvbiBhIGxlZ2l0aW1hdGUgaW50ZXJlc3QgYXMgdGhlIGxlZ2FsIGJhc2lzIGZvciBPdXIgcHJvY2Vzc2luZyBhbmQgdGhlcmUgaXMgc29tZXRoaW5nIGFib3V0IFlvdXIgcGFydGljdWxhciBzaXR1YXRpb24sIHdoaWNoIG1ha2VzIFlvdSB3YW50IHRvIG9iamVjdCB0byBvdXIgcHJvY2Vzc2luZyBvZiBZb3VyIFBlcnNvbmFsIERhdGEgb24gdGhpcyBncm91bmQuIFlvdSBhbHNvIGhhdmUgdGhlIHJpZ2h0IHRvIG9iamVjdCB3aGVyZSBXZSBhcmUgcHJvY2Vzc2luZyBZb3VyIFBlcnNvbmFsIERhdGEgZm9yIGRpcmVjdCBtYXJrZXRpbmcgcHVycG9zZXMuPC9saT4KPGxpPjxzdHJvbmc+UmVxdWVzdCBlcmFzdXJlIG9mIFlvdXIgUGVyc29uYWwgRGF0YS48L3N0cm9uZz4gWW91IGhhdmUgdGhlIHJpZ2h0IHRvIGFzayBVcyB0byBkZWxldGUgb3IgcmVtb3ZlIFBlcnNvbmFsIERhdGEgd2hlbiB0aGVyZSBpcyBubyBnb29kIHJlYXNvbiBmb3IgVXMgdG8gY29udGludWUgcHJvY2Vzc2luZyBpdC48L2xpPgo8bGk+PHN0cm9uZz5SZXF1ZXN0IHRoZSB0cmFuc2ZlciBvZiBZb3VyIFBlcnNvbmFsIERhdGEuPC9zdHJvbmc+IFdlIHdpbGwgcHJvdmlkZSB0byBZb3UsIG9yIHRvIGEgdGhpcmQtcGFydHkgWW91IGhhdmUgY2hvc2VuLCBZb3VyIFBlcnNvbmFsIERhdGEgaW4gYSBzdHJ1Y3R1cmVkLCBjb21tb25seSB1c2VkLCBtYWNoaW5lLXJlYWRhYmxlIGZvcm1hdC4gUGxlYXNlIG5vdGUgdGhhdCB0aGlzIHJpZ2h0IG9ubHkgYXBwbGllcyB0byBhdXRvbWF0ZWQgaW5mb3JtYXRpb24gd2hpY2ggWW91IGluaXRpYWxseSBwcm92aWRlZCBjb25zZW50IGZvciBVcyB0byB1c2Ugb3Igd2hlcmUgV2UgdXNlZCB0aGUgaW5mb3JtYXRpb24gdG8gcGVyZm9ybSBhIGNvbnRyYWN0IHdpdGggWW91LjwvbGk+CjxsaT48c3Ryb25nPldpdGhkcmF3IFlvdXIgY29uc2VudC48L3N0cm9uZz4gWW91IGhhdmUgdGhlIHJpZ2h0IHRvIHdpdGhkcmF3IFlvdXIgY29uc2VudCBvbiB1c2luZyB5b3VyIFBlcnNvbmFsIERhdGEuIElmIFlvdSB3aXRoZHJhdyBZb3VyIGNvbnNlbnQsIFdlIG1heSBub3QgYmUgYWJsZSB0byBwcm92aWRlIFlvdSB3aXRoIGFjY2VzcyB0byBjZXJ0YWluIHNwZWNpZmljIGZ1bmN0aW9uYWxpdGllcyBvZiB0aGUgU2VydmljZS48L2xpPgo8L3VsPgo8aDI+RXhlcmNpc2luZyBvZiBZb3VyIEdEUFIgRGF0YSBQcm90ZWN0aW9uIFJpZ2h0czwvaDI+CjxwPllvdSBtYXkgZXhlcmNpc2UgWW91ciByaWdodHMgb2YgYWNjZXNzLCByZWN0aWZpY2F0aW9uLCBjYW5jZWxsYXRpb24gYW5kIG9wcG9zaXRpb24gYnkgY29udGFjdGluZyBVcy4gUGxlYXNlIG5vdGUgdGhhdCB3ZSBtYXkgYXNrIFlvdSB0byB2ZXJpZnkgWW91ciBpZGVudGl0eSBiZWZvcmUgcmVzcG9uZGluZyB0byBzdWNoIHJlcXVlc3RzLiBJZiBZb3UgbWFrZSBhIHJlcXVlc3QsIFdlIHdpbGwgdHJ5IG91ciBiZXN0IHRvIHJlc3BvbmQgdG8gWW91IGFzIHNvb24gYXMgcG9zc2libGUuPC9wPgo8cD5Zb3UgaGF2ZSB0aGUgcmlnaHQgdG8gY29tcGxhaW4gdG8gYSBEYXRhIFByb3RlY3Rpb24gQXV0aG9yaXR5IGFib3V0IE91ciBjb2xsZWN0aW9uIGFuZCB1c2Ugb2YgWW91ciBQZXJzb25hbCBEYXRhLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgaWYgWW91IGFyZSBpbiB0aGUgRXVyb3BlYW4gRWNvbm9taWMgQXJlYSAoRUVBKSwgcGxlYXNlIGNvbnRhY3QgWW91ciBsb2NhbCBkYXRhIHByb3RlY3Rpb24gYXV0aG9yaXR5IGluIHRoZSBFRUEuPC9wPgo8aDE+Q0NQQSBQcml2YWN5PC9oMT4KPGgyPllvdXIgUmlnaHRzIHVuZGVyIHRoZSBDQ1BBPC9oMj4KPHA+VW5kZXIgdGhpcyBQcml2YWN5IFBvbGljeSwgYW5kIGJ5IGxhdyBpZiBZb3UgYXJlIGEgcmVzaWRlbnQgb2YgQ2FsaWZvcm5pYSwgWW91IGhhdmUgdGhlIGZvbGxvd2luZyByaWdodHM6PC9wPgo8dWw+CjxsaT48c3Ryb25nPlRoZSByaWdodCB0byBub3RpY2UuPC9zdHJvbmc+IFlvdSBtdXN0IGJlIHByb3Blcmx5IG5vdGlmaWVkIHdoaWNoIGNhdGVnb3JpZXMgb2YgUGVyc29uYWwgRGF0YSBhcmUgYmVpbmcgY29sbGVjdGVkIGFuZCB0aGUgcHVycG9zZXMgZm9yIHdoaWNoIHRoZSBQZXJzb25hbCBEYXRhIGlzIGJlaW5nIHVzZWQuPC9saT4KPGxpPjxzdHJvbmc+VGhlIHJpZ2h0IHRvIGFjY2VzcyAvIHRoZSByaWdodCB0byByZXF1ZXN0Ljwvc3Ryb25nPiBUaGUgQ0NQQSBwZXJtaXRzIFlvdSB0byByZXF1ZXN0IGFuZCBvYnRhaW4gZnJvbSB0aGUgQ29tcGFueSBpbmZvcm1hdGlvbiByZWdhcmRpbmcgdGhlIGRpc2Nsb3N1cmUgb2YgWW91ciBQZXJzb25hbCBEYXRhIHRoYXQgaGFzIGJlZW4gY29sbGVjdGVkIGluIHRoZSBwYXN0IDEyIG1vbnRocyBieSB0aGUgQ29tcGFueSBvciBpdHMgc3Vic2lkaWFyaWVzIHRvIGEgdGhpcmQtcGFydHkgZm9yIHRoZSB0aGlyZCBwYXJ0eSdzIGRpcmVjdCBtYXJrZXRpbmcgcHVycG9zZXMuPC9saT4KPGxpPjxzdHJvbmc+VGhlIHJpZ2h0IHRvIHNheSBubyB0byB0aGUgc2FsZSBvZiBQZXJzb25hbCBEYXRhLjwvc3Ryb25nPiBZb3UgYWxzbyBoYXZlIHRoZSByaWdodCB0byBhc2sgdGhlIENvbXBhbnkgbm90IHRvIHNlbGwgWW91ciBQZXJzb25hbCBEYXRhIHRvIHRoaXJkIHBhcnRpZXMuIFlvdSBjYW4gc3VibWl0IHN1Y2ggYSByZXF1ZXN0IGJ5IHZpc2l0aW5nIG91ciAmcXVvdDtEbyBOb3QgU2VsbCBNeSBQZXJzb25hbCBJbmZvcm1hdGlvbiZxdW90OyBzZWN0aW9uIG9yIHdlYiBwYWdlLjwvbGk+CjxsaT48c3Ryb25nPlRoZSByaWdodCB0byBrbm93IGFib3V0IFlvdXIgUGVyc29uYWwgRGF0YS48L3N0cm9uZz4gWW91IGhhdmUgdGhlIHJpZ2h0IHRvIHJlcXVlc3QgYW5kIG9idGFpbiBmcm9tIHRoZSBDb21wYW55IGluZm9ybWF0aW9uIHJlZ2FyZGluZyB0aGUgZGlzY2xvc3VyZSBvZiB0aGUgZm9sbG93aW5nOgo8dWw+CjxsaT5UaGUgY2F0ZWdvcmllcyBvZiBQZXJzb25hbCBEYXRhIGNvbGxlY3RlZDwvbGk+CjxsaT5UaGUgc291cmNlcyBmcm9tIHdoaWNoIHRoZSBQZXJzb25hbCBEYXRhIHdhcyBjb2xsZWN0ZWQ8L2xpPgo8bGk+VGhlIGJ1c2luZXNzIG9yIGNvbW1lcmNpYWwgcHVycG9zZSBmb3IgY29sbGVjdGluZyBvciBzZWxsaW5nIHRoZSBQZXJzb25hbCBEYXRhPC9saT4KPGxpPkNhdGVnb3JpZXMgb2YgdGhpcmQgcGFydGllcyB3aXRoIHdob20gV2Ugc2hhcmUgUGVyc29uYWwgRGF0YTwvbGk+CjxsaT5UaGUgc3BlY2lmaWMgcGllY2VzIG9mIFBlcnNvbmFsIERhdGEgd2UgY29sbGVjdGVkIGFib3V0IFlvdTwvbGk+CjwvdWw+CjwvbGk+CjxsaT48c3Ryb25nPlRoZSByaWdodCB0byBkZWxldGUgUGVyc29uYWwgRGF0YS48L3N0cm9uZz4gWW91IGFsc28gaGF2ZSB0aGUgcmlnaHQgdG8gcmVxdWVzdCB0aGUgZGVsZXRpb24gb2YgWW91ciBQZXJzb25hbCBEYXRhIHRoYXQgaGF2ZSBiZWVuIGNvbGxlY3RlZCBpbiB0aGUgcGFzdCAxMiBtb250aHMuPC9saT4KPGxpPjxzdHJvbmc+VGhlIHJpZ2h0IG5vdCB0byBiZSBkaXNjcmltaW5hdGVkIGFnYWluc3QuPC9zdHJvbmc+IFlvdSBoYXZlIHRoZSByaWdodCBub3QgdG8gYmUgZGlzY3JpbWluYXRlZCBhZ2FpbnN0IGZvciBleGVyY2lzaW5nIGFueSBvZiBZb3VyIENvbnN1bWVyJ3MgcmlnaHRzLCBpbmNsdWRpbmcgYnk6Cjx1bD4KPGxpPkRlbnlpbmcgZ29vZHMgb3Igc2VydmljZXMgdG8gWW91PC9saT4KPGxpPkNoYXJnaW5nIGRpZmZlcmVudCBwcmljZXMgb3IgcmF0ZXMgZm9yIGdvb2RzIG9yIHNlcnZpY2VzLCBpbmNsdWRpbmcgdGhlIHVzZSBvZiBkaXNjb3VudHMgb3Igb3RoZXIgYmVuZWZpdHMgb3IgaW1wb3NpbmcgcGVuYWx0aWVzPC9saT4KPGxpPlByb3ZpZGluZyBhIGRpZmZlcmVudCBsZXZlbCBvciBxdWFsaXR5IG9mIGdvb2RzIG9yIHNlcnZpY2VzIHRvIFlvdTwvbGk+CjxsaT5TdWdnZXN0aW5nIHRoYXQgWW91IHdpbGwgcmVjZWl2ZSBhIGRpZmZlcmVudCBwcmljZSBvciByYXRlIGZvciBnb29kcyBvciBzZXJ2aWNlcyBvciBhIGRpZmZlcmVudCBsZXZlbCBvciBxdWFsaXR5IG9mIGdvb2RzIG9yIHNlcnZpY2VzLjwvbGk+CjwvdWw+CjwvbGk+CjwvdWw+CjxoMj5FeGVyY2lzaW5nIFlvdXIgQ0NQQSBEYXRhIFByb3RlY3Rpb24gUmlnaHRzPC9oMj4KPHA+SW4gb3JkZXIgdG8gZXhlcmNpc2UgYW55IG9mIFlvdXIgcmlnaHRzIHVuZGVyIHRoZSBDQ1BBLCBhbmQgaWYgeW91IGFyZSBhIENhbGlmb3JuaWEgcmVzaWRlbnQsIFlvdSBjYW4gZW1haWwgb3IgY2FsbCB1cyBvciB2aXNpdCBvdXIgJnF1b3Q7RG8gTm90IFNlbGwgTXkgUGVyc29uYWwgSW5mb3JtYXRpb24mcXVvdDsgc2VjdGlvbiBvciB3ZWIgcGFnZS48L3A+CjxwPlRoZSBDb21wYW55IHdpbGwgZGlzY2xvc2UgYW5kIGRlbGl2ZXIgdGhlIHJlcXVpcmVkIGluZm9ybWF0aW9uIGZyZWUgb2YgY2hhcmdlIHdpdGhpbiA0NSBkYXlzIG9mIHJlY2VpdmluZyBZb3VyIHZlcmlmaWFibGUgcmVxdWVzdC4gVGhlIHRpbWUgcGVyaW9kIHRvIHByb3ZpZGUgdGhlIHJlcXVpcmVkIGluZm9ybWF0aW9uIG1heSBiZSBleHRlbmRlZCBvbmNlIGJ5IGFuIGFkZGl0aW9uYWwgNDUgZGF5cyB3aGVuIHJlYXNvbmFibGUgbmVjZXNzYXJ5IGFuZCB3aXRoIHByaW9yIG5vdGljZS48L3A+CjxoMj5EbyBOb3QgU2VsbCBNeSBQZXJzb25hbCBJbmZvcm1hdGlvbjwvaDI+CjxwPldlIGRvIG5vdCBzZWxsIHBlcnNvbmFsIGluZm9ybWF0aW9uLiBIb3dldmVyLCB0aGUgU2VydmljZSBQcm92aWRlcnMgd2UgcGFydG5lciB3aXRoIChmb3IgZXhhbXBsZSwgb3VyIGFkdmVydGlzaW5nIHBhcnRuZXJzKSBtYXkgdXNlIHRlY2hub2xvZ3kgb24gdGhlIFNlcnZpY2UgdGhhdCAmcXVvdDtzZWxscyZxdW90OyBwZXJzb25hbCBpbmZvcm1hdGlvbiBhcyBkZWZpbmVkIGJ5IHRoZSBDQ1BBIGxhdy48L3A+CjxwPklmIHlvdSB3aXNoIHRvIG9wdCBvdXQgb2YgdGhlIHVzZSBvZiB5b3VyIHBlcnNvbmFsIGluZm9ybWF0aW9uIGZvciBpbnRlcmVzdC1iYXNlZCBhZHZlcnRpc2luZyBwdXJwb3NlcyBhbmQgdGhlc2UgcG90ZW50aWFsIHNhbGVzIGFzIGRlZmluZWQgdW5kZXIgQ0NQQSBsYXcsIHlvdSBtYXkgZG8gc28gYnkgZm9sbG93aW5nIHRoZSBpbnN0cnVjdGlvbnMgYmVsb3cuPC9wPgo8cD5QbGVhc2Ugbm90ZSB0aGF0IGFueSBvcHQgb3V0IGlzIHNwZWNpZmljIHRvIHRoZSBicm93c2VyIFlvdSB1c2UuIFlvdSBtYXkgbmVlZCB0byBvcHQgb3V0IG9uIGV2ZXJ5IGJyb3dzZXIgdGhhdCB5b3UgdXNlLjwvcD4KPGgzPldlYnNpdGU8L2gzPgo8cD5Zb3UgY2FuIG9wdCBvdXQgb2YgcmVjZWl2aW5nIGFkcyB0aGF0IGFyZSBwZXJzb25hbGl6ZWQgYXMgc2VydmVkIGJ5IG91ciBTZXJ2aWNlIFByb3ZpZGVycyBieSBmb2xsb3dpbmcgb3VyIGluc3RydWN0aW9ucyBwcmVzZW50ZWQgb24gdGhlIFNlcnZpY2U6PC9wPgo8dWw+CjxsaT5Gcm9tIE91ciAmcXVvdDtDb29raWUgQ29uc2VudCZxdW90OyBub3RpY2UgYmFubmVyPC9saT4KPGxpPk9yIGZyb20gT3VyICZxdW90O0NDUEEgT3B0LW91dCZxdW90OyBub3RpY2UgYmFubmVyPC9saT4KPGxpPk9yIGZyb20gT3VyICZxdW90O0RvIE5vdCBTZWxsIE15IFBlcnNvbmFsIEluZm9ybWF0aW9uJnF1b3Q7IG5vdGljZSBiYW5uZXI8L2xpPgo8bGk+T3IgZnJvbSBPdXIgJnF1b3Q7RG8gTm90IFNlbGwgTXkgUGVyc29uYWwgSW5mb3JtYXRpb24mcXVvdDsgbGluazwvbGk+CjwvdWw+CjxwPlRoZSBvcHQgb3V0IHdpbGwgcGxhY2UgYSBjb29raWUgb24gWW91ciBjb21wdXRlciB0aGF0IGlzIHVuaXF1ZSB0byB0aGUgYnJvd3NlciBZb3UgdXNlIHRvIG9wdCBvdXQuIElmIHlvdSBjaGFuZ2UgYnJvd3NlcnMgb3IgZGVsZXRlIHRoZSBjb29raWVzIHNhdmVkIGJ5IHlvdXIgYnJvd3NlciwgeW91IHdpbGwgbmVlZCB0byBvcHQgb3V0IGFnYWluLjwvcD4KPGgzPk1vYmlsZSBEZXZpY2VzPC9oMz4KPHA+WW91ciBtb2JpbGUgZGV2aWNlIG1heSBnaXZlIHlvdSB0aGUgYWJpbGl0eSB0byBvcHQgb3V0IG9mIHRoZSB1c2Ugb2YgaW5mb3JtYXRpb24gYWJvdXQgdGhlIGFwcHMgeW91IHVzZSBpbiBvcmRlciB0byBzZXJ2ZSB5b3UgYWRzIHRoYXQgYXJlIHRhcmdldGVkIHRvIHlvdXIgaW50ZXJlc3RzOjwvcD4KPHVsPgo8bGk+JnF1b3Q7T3B0IG91dCBvZiBJbnRlcmVzdC1CYXNlZCBBZHMmcXVvdDsgb3IgJnF1b3Q7T3B0IG91dCBvZiBBZHMgUGVyc29uYWxpemF0aW9uJnF1b3Q7IG9uIEFuZHJvaWQgZGV2aWNlczwvbGk+CjxsaT4mcXVvdDtMaW1pdCBBZCBUcmFja2luZyZxdW90OyBvbiBpT1MgZGV2aWNlczwvbGk+CjwvdWw+CjxwPllvdSBjYW4gYWxzbyBzdG9wIHRoZSBjb2xsZWN0aW9uIG9mIGxvY2F0aW9uIGluZm9ybWF0aW9uIGZyb20gWW91ciBtb2JpbGUgZGV2aWNlIGJ5IGNoYW5naW5nIHRoZSBwcmVmZXJlbmNlcyBvbiB5b3VyIG1vYmlsZSBkZXZpY2UuPC9wPgo8aDE+JnF1b3Q7RG8gTm90IFRyYWNrJnF1b3Q7IFBvbGljeSBhcyBSZXF1aXJlZCBieSBDYWxpZm9ybmlhIE9ubGluZSBQcml2YWN5IFByb3RlY3Rpb24gQWN0IChDYWxPUFBBKTwvaDE+CjxwPk91ciBTZXJ2aWNlIGRvZXMgbm90IHJlc3BvbmQgdG8gRG8gTm90IFRyYWNrIHNpZ25hbHMuPC9wPgo8cD5Ib3dldmVyLCBzb21lIHRoaXJkIHBhcnR5IHdlYnNpdGVzIGRvIGtlZXAgdHJhY2sgb2YgWW91ciBicm93c2luZyBhY3Rpdml0aWVzLiBJZiBZb3UgYXJlIHZpc2l0aW5nIHN1Y2ggd2Vic2l0ZXMsIFlvdSBjYW4gc2V0IFlvdXIgcHJlZmVyZW5jZXMgaW4gWW91ciB3ZWIgYnJvd3NlciB0byBpbmZvcm0gd2Vic2l0ZXMgdGhhdCBZb3UgZG8gbm90IHdhbnQgdG8gYmUgdHJhY2tlZC4gWW91IGNhbiBlbmFibGUgb3IgZGlzYWJsZSBETlQgYnkgdmlzaXRpbmcgdGhlIHByZWZlcmVuY2VzIG9yIHNldHRpbmdzIHBhZ2Ugb2YgWW91ciB3ZWIgYnJvd3Nlci48L3A+CjxoMT5Zb3VyIENhbGlmb3JuaWEgUHJpdmFjeSBSaWdodHMgKENhbGlmb3JuaWEncyBTaGluZSB0aGUgTGlnaHQgbGF3KTwvaDE+CjxwPlVuZGVyIENhbGlmb3JuaWEgQ2l2aWwgQ29kZSBTZWN0aW9uIDE3OTggKENhbGlmb3JuaWEncyBTaGluZSB0aGUgTGlnaHQgbGF3KSwgQ2FsaWZvcm5pYSByZXNpZGVudHMgd2l0aCBhbiBlc3RhYmxpc2hlZCBidXNpbmVzcyByZWxhdGlvbnNoaXAgd2l0aCB1cyBjYW4gcmVxdWVzdCBpbmZvcm1hdGlvbiBvbmNlIGEgeWVhciBhYm91dCBzaGFyaW5nIHRoZWlyIFBlcnNvbmFsIERhdGEgd2l0aCB0aGlyZCBwYXJ0aWVzIGZvciB0aGUgdGhpcmQgcGFydGllcycgZGlyZWN0IG1hcmtldGluZyBwdXJwb3Nlcy48L3A+CjxwPklmIHlvdSdkIGxpa2UgdG8gcmVxdWVzdCBtb3JlIGluZm9ybWF0aW9uIHVuZGVyIHRoZSBDYWxpZm9ybmlhIFNoaW5lIHRoZSBMaWdodCBsYXcsIGFuZCBpZiB5b3UgYXJlIGEgQ2FsaWZvcm5pYSByZXNpZGVudCwgWW91IGNhbiBjb250YWN0IFVzIHVzaW5nIHRoZSBjb250YWN0IGluZm9ybWF0aW9uIHByb3ZpZGVkIGJlbG93LjwvcD4KPGgxPkNhbGlmb3JuaWEgUHJpdmFjeSBSaWdodHMgZm9yIE1pbm9yIFVzZXJzIChDYWxpZm9ybmlhIEJ1c2luZXNzIGFuZCBQcm9mZXNzaW9ucyBDb2RlIFNlY3Rpb24gMjI1ODEpPC9oMT4KPHA+Q2FsaWZvcm5pYSBCdXNpbmVzcyBhbmQgUHJvZmVzc2lvbnMgQ29kZSBzZWN0aW9uIDIyNTgxIGFsbG93IENhbGlmb3JuaWEgcmVzaWRlbnRzIHVuZGVyIHRoZSBhZ2Ugb2YgMTggd2hvIGFyZSByZWdpc3RlcmVkIHVzZXJzIG9mIG9ubGluZSBzaXRlcywgc2VydmljZXMgb3IgYXBwbGljYXRpb25zIHRvIHJlcXVlc3QgYW5kIG9idGFpbiByZW1vdmFsIG9mIGNvbnRlbnQgb3IgaW5mb3JtYXRpb24gdGhleSBoYXZlIHB1YmxpY2x5IHBvc3RlZC48L3A+CjxwPlRvIHJlcXVlc3QgcmVtb3ZhbCBvZiBzdWNoIGRhdGEsIGFuZCBpZiB5b3UgYXJlIGEgQ2FsaWZvcm5pYSByZXNpZGVudCwgWW91IGNhbiBjb250YWN0IFVzIHVzaW5nIHRoZSBjb250YWN0IGluZm9ybWF0aW9uIHByb3ZpZGVkIGJlbG93LCBhbmQgaW5jbHVkZSB0aGUgZW1haWwgYWRkcmVzcyBhc3NvY2lhdGVkIHdpdGggWW91ciBhY2NvdW50LjwvcD4KPHA+QmUgYXdhcmUgdGhhdCBZb3VyIHJlcXVlc3QgZG9lcyBub3QgZ3VhcmFudGVlIGNvbXBsZXRlIG9yIGNvbXByZWhlbnNpdmUgcmVtb3ZhbCBvZiBjb250ZW50IG9yIGluZm9ybWF0aW9uIHBvc3RlZCBvbmxpbmUgYW5kIHRoYXQgdGhlIGxhdyBtYXkgbm90IHBlcm1pdCBvciByZXF1aXJlIHJlbW92YWwgaW4gY2VydGFpbiBjaXJjdW1zdGFuY2VzLjwvcD4KPGgxPkxpbmtzIHRvIE90aGVyIFdlYnNpdGVzPC9oMT4KPHA+T3VyIFNlcnZpY2UgbWF5IGNvbnRhaW4gbGlua3MgdG8gb3RoZXIgd2Vic2l0ZXMgdGhhdCBhcmUgbm90IG9wZXJhdGVkIGJ5IFVzLiBJZiBZb3UgY2xpY2sgb24gYSB0aGlyZCBwYXJ0eSBsaW5rLCBZb3Ugd2lsbCBiZSBkaXJlY3RlZCB0byB0aGF0IHRoaXJkIHBhcnR5J3Mgc2l0ZS4gV2Ugc3Ryb25nbHkgYWR2aXNlIFlvdSB0byByZXZpZXcgdGhlIFByaXZhY3kgUG9saWN5IG9mIGV2ZXJ5IHNpdGUgWW91IHZpc2l0LjwvcD4KPHA+V2UgaGF2ZSBubyBjb250cm9sIG92ZXIgYW5kIGFzc3VtZSBubyByZXNwb25zaWJpbGl0eSBmb3IgdGhlIGNvbnRlbnQsIHByaXZhY3kgcG9saWNpZXMgb3IgcHJhY3RpY2VzIG9mIGFueSB0aGlyZCBwYXJ0eSBzaXRlcyBvciBzZXJ2aWNlcy48L3A+CjxoMT5DaGFuZ2VzIHRvIHRoaXMgUHJpdmFjeSBQb2xpY3k8L2gxPgo8cD5XZSBtYXkgdXBkYXRlIG91ciBQcml2YWN5IFBvbGljeSBmcm9tIHRpbWUgdG8gdGltZS4gV2Ugd2lsbCBub3RpZnkgWW91IG9mIGFueSBjaGFuZ2VzIGJ5IHBvc3RpbmcgdGhlIG5ldyBQcml2YWN5IFBvbGljeSBvbiB0aGlzIHBhZ2UuPC9wPgo8cD5XZSB3aWxsIGxldCBZb3Uga25vdyB2aWEgZW1haWwgYW5kL29yIGEgcHJvbWluZW50IG5vdGljZSBvbiBPdXIgU2VydmljZSwgcHJpb3IgdG8gdGhlIGNoYW5nZSBiZWNvbWluZyBlZmZlY3RpdmUgYW5kIHVwZGF0ZSB0aGUgJnF1b3Q7TGFzdCB1cGRhdGVkJnF1b3Q7IGRhdGUgYXQgdGhlIHRvcCBvZiB0aGlzIFByaXZhY3kgUG9saWN5LjwvcD4KPHA+WW91IGFyZSBhZHZpc2VkIHRvIHJldmlldyB0aGlzIFByaXZhY3kgUG9saWN5IHBlcmlvZGljYWxseSBmb3IgYW55IGNoYW5nZXMuIENoYW5nZXMgdG8gdGhpcyBQcml2YWN5IFBvbGljeSBhcmUgZWZmZWN0aXZlIHdoZW4gdGhleSBhcmUgcG9zdGVkIG9uIHRoaXMgcGFnZS48L3A+CjxoMT5Db250YWN0IFVzPC9oMT4KPHA+SWYgeW91IGhhdmUgYW55IHF1ZXN0aW9ucyBhYm91dCB0aGlzIFByaXZhY3kgUG9saWN5LCBZb3UgY2FuIGNvbnRhY3QgdXM6PC9wPgo8dWw+CjxsaT5CeSBlbWFpbDogdmlja2llQHZpY2tpZWZhbGNvbmUuY29tPC9saT4KPC91bD4=[/fusion_code][/fusion_builder_column][/fusion_builder_row][/fusion_builder_container]