U01TOmRhIGFuZHJlYWNvbnNvbGVAZ21haWwuY29tOyBJUDoxMDguMTYyLjIyOC4yMzMgLS0+IHRlc3Rpbm8KICAgIApTTVM6ZGEgYW5kcmVhY29uc29sZUBnbWFpbC5jb207IElQOjEwOC4xNjIuMjI4LjIzMyAtLT4gdGVzdGUKICAgIApTTVM6ZGEgYW5kcmVhY29uc29sZUBsaWJlcm8uaXQ7IElQOjEwOC4xNjIuMjI4LjIzMyAtLT4gdGVzdHVnZ2luZQogICAgClNNUzpkYSBzcGVjdHJlQGRuZXQuaXQ7IElQOjE2Mi4xNTguOTEuMjA1IC0tPiBDaWFvLCBpbCB0dW8gcHJvZ3JhbW1hIHBlciBhbGxpbmVhbWVudG8gcG9sYXJlIHB18iBlc3NlcmUgdXNhdG8gc3UgbW9udGF0dXJlIGEgZm9yY2VsbGE/DQpHcmF6aWUgUmljY2FyZG8uCiAgICAKU01TOmRhIG1hc3ByaUBmYXN0d2VibmV0Lml0OyBJUDoxODguMTE0LjEwMi4xNDYgLS0+IEhvIGluc3RhbGxhdG8gZ2lnaXdlYmNhcHR1cmUgMiwgYWxsJ2luaXppbyB0dXR0byBiZW5lIG1hIHF1YW5kbyBobyBwcm92YXRvIGEgcmlsYW5jaWFybG8gZG9wbyBhdmVyIGluc3RhbGxhdG8gaSBkcml2ZXIgcGVyIGxhIG1pYSB0b3VjYW0gcHJvIChxdWVsbGkgZGVsbGEgc3BjOTAwbmMgZGF0byBjaGUgcXVlbGxpIG9yaWdpbmFsaSBub24gc2kgdHJvdmFubyBwZXIgVzcpIHN1IFdpbmRvd3MgNywgbm9uIHNpIGFwcmUgcGn5IGUgbWkgZGEgbCdlcnJvcmU6IHJ1bi10aW1lLWVycm9yICc1MzY4NzAzOTYnIChlMDAwMDIwNCknOiBNZXRob2QgJy0nIG9mIG9iamVjdCAnLScgZmFpbGVkLg0KTm9uIHNvIHNlIGNpIHNpYSB1biBuZXNzbyBjb24gbCdpbnN0YWxsYXppb25lIGRlaSBkcml2ZXIgcGVyIGxhIHRvdWNhbSBwcm8gKGluIHJlYWx04CBxdWVsbGkgZGVsbGEgc3BjOTAwbmMpLg0KR3JhemllDQpNYXNzaW1vCiAgICAKU01TOmRhIGhvcGVmdWxsODFAbGl2ZS5jb207IElQOjE5OS4yNy4xMjguMTc3IC0tPiBJbnNlcmlzY2kgcXVpIGlsIHRlc3RvCiAgICAKU01TOmRhIGZpbGkwMDdAbWUuY29tOyBJUDoxNDEuMTAxLjEwNC4yMTYgLS0+IENpYW8sDQpobyBpbnN0YWxsYXRvIEdpZ2l3ZWJjYXB0dXJlIHN1IFdpbmRvd3MgNywgbCdobyBjb2xsZWdhdG8gKHRyYW1pdGUgQVNDT00pIGFkIHVuYSBBU0kgMTIwTUMtUy4uDQoNCnZvbGV2byBmYXJlIGwnYWxsaW5lYW1lbnRvIGNvbiBiaWdvdXJkYW4sIG1hIGRvcG8gYXZlciBwcmVtdXRvICZxdW90O2JlZ2luJnF1b3Q7LCBsJ2ltbWFnaW5lIHNpIGJsb2NjYSBlIHNlIG11b3ZvIGxhIHdlYmNhbSBsJ2ltbWFnaW5lIG5vbiBzaSBtdW92ZSBwZXIgbmllbnRlLCBwZXJjafIgbm9uIHJpZXNjbyBhZCBhbGxpbmVhcmxvLi4uDQpoYWkgaWRlYSBkaSBxdWVsZSBwdfIgZXNzZXJlIGxhIGNhdXNhPw0KDQpHcmF6aWUNCkJ1b24gYW5ubw0KRmlsaXBwbwogICAgClNNUzpkYSBib2xkcmluaXRpemlhbm8xQGdtYWlsLmNvbTsgSVA6MTg4LjExNC4xMDIuMTQ4IC0tPiBCdW9uYXNlcmEgQW5kcmVhLCBpbyBzb25vIFRpemlhbm8sIHBpYWNlcmUgZGkgY29ub3NjZXJ0aSwgdGkgc2NyaXZvIHBlcmNo6SBobyBiaXNvZ25vIGRpIGFpdXRvIGUgZm9yc2UgdHUgcHVvaSBDYXJtZWxvIHNlIGhhaSB0ZW1wby4NClNvbm8gdW4gYXBwYXNzaW9uYXRvIGRpIGFzdHJvbm9taWEgZSBkYSBwb2NvIGhvIGFjcXVpc3RhdG8gdW5hIGNhbWVyYSBzb2xvIGNoZS4uLm5vbiBzbyB1c2FybGEgZSBuZW1tZW5vIGRhIGRvdmUgaW5pemlhcmUsIHR1dHRlIGxlIHNwaWVnYXppb25pIGUgaSB2YXJpIHR1dG9yaWFsIHNvbm8gaW4gaW5nbGVzZSEgVWZmLi4udGkgc2NyaXZvIHF1aSBpIG1pZWkgc3RydW1lbnRpIDogaG8gdW4gRG9ic29uIDIwMCBtbSBzZW56YSBtb250YXR1cmEgZXF1YXRvcmlhbGUgZSB1bmEgY2FtZXJhIEFTSTEyME1DUyAsIHNvIGNoZSBzZW56YSBlcXVhdG9yaWFsZSBwb3NzbyBmYXJlIHNvbG8gbGUgZm90byBhaSBwaWFuZXRpIGNvbiBzaW5nb2xpIHNjYXR0aSB2ZXJvPyBUaSBjaGllZG8gZ3JhemllIGluIGFudGljaXBvIHNlIHRyb3ZpIGRlbCB0ZW1wbyEgU3Blcm8gZGkgbGVnZ2VydGkgcHJlc3RvISBHcmF6aWUgZSBidW9uYSBjb250aW51YXppb25lLgogICAgClNNUzpkYSBib2xkcmluaXRpemlhbm8xQGdtYWlsLmNvbTsgSVA6MTg4LjExNC4xMDIuMTQxIC0tPiBCdW9uYXNlcmEgQW5kcmVhLCBpbyBzb25vIFRpemlhbm8sIHBpYWNlcmUgZGkgY29ub3NjZXJ0aSEgaW5uYW56aXR1dHRvIGNvbXBsaW1lbnRpIHBlciB0dXR0byBpbCBsYXZvcm8gY2hlIGhhaSBmYXR0byBmaW5pIGFkIG9yYSENClRpIHNjcml2byBwZXIgY2hpZWRlcnRpIHNlIHB1b2kgZSBzZSB2dW9pIGRhcm1pIHVuYSBtYW5vIHBlciBmYXJlIGZvdG8gYWxsYSB2b2x0YSBjZWxlc3RlLiBpbyBobyB1biBkb2Jzb24gZGEgMjAwbW0gKCBzZW56YSBtb3Rvcm96emF6aW9uZS4uLnF1ZWxsYSBxdWFuZG8gcG90cvIuLi4pIGUgaG8gcHJlc28gdW5hIGNhbWVyYSBBU0kxMjBNQ1Mgc29sbyBjaGUgbm9uIHNvIGRhIGRvdmUgaW5pemlhcmUuLi7oIGxhIG1pYSBwcmltYSBtYWNjaGluYSBlIGNvbiB0dXR0aSBzdGkgc29mdHdhcmUgZGEgc2NhcmljYXJlIGUgc2NyaXR0aSBpbiBpbmdsZXNlIHN0byBmYWNlbmRvIHNvbG8gY2FzaW5pISBlIG5vbiB0cm92byBuZXNzdW5vIGNoZSBzcGllZ2EgaW4gaXRhbGlhbm8gaSBwcmltaSBwYXNzaSBkYSBmYXJlLi4uLm5vbiDoIGNoZSB0dSBwb3RyZXN0aSBhaXV0YXJtaT8NClBlciBpbCBtb21lbnRvIGdyYXppZSBkZWxsYSBwYXppZW56YSBwZXIgYXZlcm1pIGxldHRvLCBjaWFvIGEgcHJlc3RvLi4uc3Blcm8uLi4KICAgIApTTVM6ZGEgaWduYXppby5hbnRvbmlldHRpQGdtYWlsLmNvbTsgSVA6MTg4LjExNC4xMDIuOTcgLS0+IE1pIGNoaWFtbyBJZ25hemlvLGUgcHJpbWEgZGkgdHV0dG8gdGkgZmFjY2lvIGkgY29tcGxpbWVudGkgcGVyIGkgdHVvaSBsYXZvcmkuIERpc3BvbmdvIGRpIHVuYSBjYW1lcmEgcGxhbmV0YXJpYSBRSFk1TC1sbCBtb25vY3JvbWF0aWNhIGFkYXR0YSBhbmNoZSBhIGx1bmdoZSBwb3NlLiBWb3JyZWkgc2FwZXJlIHNlDQphYmJpbmFuZG9sYSBhZCB1biBDOCBjb24gcmlkdXR0b3JlIGEgRjYuMyBlJyBwb3NzaWJpbGUgZmFyZQ0KcXVlbGxlIGZvdG8gY2hlIHR1IGhhaSBmYXR0byBjb24gbGEgd2ViY2FtIG1vZGlmaWNhdGEuDQpHcmF6aWUgZSBkaXN0aW50aSBzYWx1dGkuCiAgICAKU01TOmRhIGlnbmF6aW8uYW50b25pZXR0aUBnbWFpbC5jb207IElQOjE4OC4xMTQuMTAyLjEyOCAtLT4gQ2lhbyBBbmRyZWEgLlNjdXNhIHNlIGFwcHJvZml0dG8gZGVsbGEgdHVhIGRpc3BvbmliaWxpdGEnIHBlciBjaGllZGVydGkgdW4gcGFyZXJlLnNpIHRyYXR0YSBkaSB1bmEgY2FtZXJhIHBsYW5ldGFyaWEgY29tbWVyY2lhbGl6emF0YSBkYWxsYSBBbHRhaXItQXN0cm8uSWwgbW9kZWxsbyBlJ0dQQ0FNQVJPMTMwIENvbG9yLk5vbiBhdmVuZG8gdHJvdmF0byByZWNlbnNpb25pICAsbWkgY2hpZWRldm8gc2UgdHUgbmUgaGFpIG1haSBzZW50aXRvIHBhcmxhcmUgR3JhemllIGUgU2FsdXRpICAgIElnbmF6aW8KICAgIApTTVM6ZGEgZ2l1bGlvYmFzQHRpbi5pdDsgSVA6MTg4LjExNC4xMDMuODkgLS0+IFNhbHZlIFNpZy4gQW5kcmVhIGUgYnVvbmEgZ2lvcm5hdGEsIHZvbGV2byBjaGllZGVybGUgc2UgbWkgZGEgaWwgY29uc2Vuc28gcGVyIHBvdGVyIHByZWxldmFyZSBkYWwgc3VvIHNpdG8gdHV0dGUgbGUgZm9ybXVsZSBtYXRlbWF0aWNoZSB1dGlsaSBhbGwnYXN0cm9maWxvIHBlciBwb3RlcmxvIGluc2VyaXJlIG5lbCBtaW8gc2l0byAoYmxvZyksaW4gY29tcGVuc28gdm9sZXZvIGFuY2hlIGNoaWVkZXJsZSBzZSBwb3Rldm8gaW5zZXJpcmUgc2VtcHJlIHN1bCBtaW8gc2l0byB1biBsaW5rIGNoZSByaXBvcnRhIG5lbCBzdW8gc2l0byxpbiBhdHRlc2EgZGkgdW4gc3VvIHJpc2NvbnRybyxsZSBwb3JnbyBjb3JkaWFsaSBzYWx1dGkuCiAgICAKU01TOmRhIGlnbmF6aW8uYW50b25pZXR0aUBnbWFpbC5jb207IElQOjE4OC4xMTQuMTAyLjEyNyAtLT4gQ2lhbyBBbmRyZWEuIGhvIHVuIHByb2JsZW1hIGRhIHJpc29sdmVyZSBjaGUgcmlndWFyZGEgZHJpdmVyIGUgc29mdHdhcmUgZGkgdW5hIGNhbWVyYSBwbGFuZXRhcmlhLGUgdmlzdG8gY2hlIHNlaSBtb2x0byBjb21wZXRlbnRlIGluIG1hdGVyaWEgdGkgY2hpZWRvIHVuIHBhcmVyZS5MYSBjYW1lcmEgaW4gcXVlc3Rpb25lIGUnIHVuYSBBU0kxMjBNQyBudW92YS4gSG8gaW5zdGFsbGF0byBpIGRyaXZlciBlZCBpIHNvZnR3YXJlIGNoZSBjJ2VyYW5vIHN1bCBjZCBhbGxlZ2F0byBuZWxsYSBjb25mZXppb25lIChGaXJlY2FwdHVyZSBlIFNoYXJwQ2FwKS5FbnRyYW1iaSBjb250cm9sbGFubyBiZW5lIGxhIGNhbWVyYSAsaWwgcHVudG8gZScgY2hlIGRvcG8gdW4gcG8nIGRpIHRlbXBvIGlsIHBjIHNpICBibG9jY2EgY29tcGxldGFtZW50ZSBlIGJpc29nbmEgYWRkaXJpdHR1cmEgdG9nbGllcmxpIGwnYWxpbWVudGF6aW9uZS5IbyBjb250YXR0YXRvIGlsIGZvcm5pdG9yZSBjaGUgbWkgaGEgc3VnZ2VyaXRvIGRpIGluc3RhbGxhcmUgaSBkcml2ZXIgZWQgaSBzb2Z0d2FyZSBwaXUnIGFnZ2lvcm5hdGkgLkNvc2EgbmUgcGVuc2k/ICBHcmF6aWUgZSBTYWx1dGkgIElnbmF6aW8uCiAgICAKU01TOmRhIGxhIHR1YSBFLU1BSUw7IElQOjE2Mi4xNTguODguMTgzIC0tPiBJbnNlcmlzY2kgcXVpIGlsIHRlc3RvCiAgICAKU01TOmRhIGFhYTsgSVA6MTYyLjE1OC44OC4xODMgLS0+IHRlc3QKICAgIApTTVM6ZGEgbWlya29tYXp6b2xhcmlAZ21haWwuY29tOyBJUDoxODguMTE0LjEwMi4xMzEgLS0+IHByaW1hIGRpIHR1dHRvIGNpYW8gZSBncmFuZGkgY29tcGxpbWVudGkgcGVyIGlsIHR1byBsYXZvcm8uDQpobyBzY2FyaWNhdG8gd2ViY2FwdHVyZSBlIGxvIGZhY2NpbyBnaXJhcmUgc3UgdW4gY29yZSBpNyBjb24gd2luNw0KDQp1c28gcmVnaXN0YXggcGVyIGVsYWJvcmFyZSBsZSBpbW1hZ2luaS4gbGEgZG9tYW5kYSBlJyA6IGNvbWUgZmFjY2lvIGEgZmFyIHNhbHZhcmUgaSBmaWxtYXRpIGNoZSBmYWNjaW8gaW4gZm9ybWF0byAuYXZpIGluIG1vZG8gY2hlIHJlZ2lzdGF4IGxpIHZlZGE/DQpobyBwcm92YXRvIGEgc2FsdmFyZSBkaXZlcnNpIGltbWFnaW5pIGNvbiBpbCB0dW8gcHJvZ3JhbW1hIGUgYSAmcXVvdDtzb21tYWxlJnF1b3Q7IGNvbiByZWdpc3RheCBlIGZ1bnppb25hLiBjb24gaSBmaWxhbXRpIG5vbiByaWVzY28uIHJlZ2lzdGF4IG5vbiBsaSB2ZWRlLg0KbWkgcHVvaSBhaXV0YXJlPw0KZ3JhemllIGUgc2FsdXRpLg0KbWlya28gMzQ3MDQ1NTE0NgogICAgClNNUzpkYSBtaXJrb21henpvbGFyaUBnbWFpbC5jb207IElQOjE4OC4xMTQuMTAyLjEzMSAtLT4gc29ubyBhbmNvcmEgbWlya28uDQpobyBkaW1lbnRpY2F0byBkaSBzY3JpdmVydGkgY2hlIHVzbyB1bmEgd2ViY2FtIHRydXN0IGRpIHF1ZWxsZSBlY29ub21pY2hlLiBub24gaG8gdHJvdmF0byBuZXNzdW4gc2l0byBkb3ZlIGluZGljYXZhbm8gZGVsbGUgcG9zc2liaWxpIG1vZGlmaWNoZS5wdW9pIGFpdXRhcm1pID8NCmdyYXppZQ0KCiAgICAKU01TOmRhIGluZm9AYXN0cm9zZXJnaW8uaXQ7IElQOjE3Mi42OC4yNi40OCAtLT4gQ2lhbyBBbmRyZWEsIHRpIGNoaWVkbyBkaSBpbnNlcmlyZSBpbCBtaW8gc2l0byB3d3cuYXN0cm9zZXJnaW8uaXQgbmVsIGNpcmN1aXRvIEFzdHJvUmluZy4NCg0KVW4gc2FsdXRvDQoNClNlcmdpbwogICAgClNNUzpkYSB2YWxlcmlvZ2hpcmFyZG9AZ21haWwuY29tOyBJUDoxODguMTE0LjEwMy44OCAtLT4gVGFudG8gcGVyIGluaXppYXJlIGNvbXBsaW1lbnRpIHBlciBnaWdpd2ViY2FwdHVyZSAuLi4gbG8gdXNvIHNwZXNzbyBlIG5vbiBkYSBtYWkgcHJvYmxlbWkuIEdyYXppZSENCkhvIGxldHRvIGluIHVuIHZlY2NoaW8gcG9zdCBkaSBDSERLIGUgSXh1cyBDYW5vbiAuLi4uIHN0YXZvIHBlbnNhbmRvIGRpIGZhcmUgcXVhbGNoZSBlc3BlcmltZW50byBlIG1pIGRvbWFuZGF2byBzZSBhdmV2aSBmYXR0byBxdWFsY2hlIHRlc3QgLi4uIA0KZ3JhemllIG1pbGxlLg0KdmFsZXJpbyBnaGlyYXJkbw0KdmFsZXJpb2doaXJhcmRvQGdtYWlsLmNvbQ0KCiAgICAKU01TOmRhIHNhbHZvLmxhdXJpY2VsbGFAZ21haWwuY29tOyBJUDoxODguMTE0LjEwMy45MyAtLT4gQ2lhbyBBbmRyZWEsIGVycm9uZWFtZW50ZSBobyBlbGltaW5hdG8gaWwgY29kaWNlIGRpIGFzdHJvcmluZyBkYWwgbWlvIHNpdG8sIGwnaG8gYXBwZW5hIHJpbWVzc28gOi0pDQpDaWFvIGUgZ3JhemllLg0KDQp3d3cuc2Fsdm9sYXVyaWNlbGxhLml0CiAgICAKU01TOmRhIHRvc2F0dG8uYW5kcmVhQGdtYWlsLmNvbTsgSVA6MTg4LjExNC4xMDMuOTEgLS0+IENpYW8gQW5kcmVhLCB0aSBzY3Jpdm8gcGVyIHVuYSBzdHVwaWRhZ2dpbmUuLiBwb2kgdmFsdXRhIHR1IHNlIHJpdGVycmFpIGxhIGNvc2EgdXRpbGUgbyBuby4uDQpkYSBxdWFsY2hlIHRlbXBvIHN0byByaXByZW5kZW5kbyBwZXIgbWFubyBpbCBibG9nIGUgbWkgc29ubyBpbXB1bnRhdG8gc3VsIGZhdHRvIGRpIHBhc3NhcmUgYWxsJ2h0dHBzLi4gdW4gbGF2b3JhY2NpbyBwZXJjaOggZGV2byByaXBhc3Nhcm1pIGEgbWFubyB0dXR0aSBpIGxpbmsgY2hlIGhvIGluc2VyaXRvIGluIDggYW5uaSBkaSBibG9nLi4gcG9jbyBtYWxlLi4gaG8gbm90YXRvIGNoZSB0cmEgdHV0dGkgaSBwbHVnaW4gY2hlIHVzbyBzb2xvIGwnYXN0cm9yaW5nIG5vbiBoYSBsYSBwb3NzaWJpbGl0YSBkaSBwYXNzYXJlIGluIGh0dHBzLi4gbWkgc2NvY2NlcmViYmUgdG9nbGllcmxvIHBlcmNo6CBsbyByaXRlbmdvIHVuYSBjb3NhIHV0aWxlLiBIYWkgaW4gcHJldmlzaW9uZSBkaSBmYXJlIHF1YWxjb3NhPyBzbyBjaGUgYWx0ZXJ2aXN0YSBvZmZyZSBpbCBzZXJ2aXppbyBtYSBmb3JzZSDoIGEgcGFnYW1lbnRvLi4gaW4gYWx0ZXJuYXRpdmEgc2UgdnVvaSBwb3NzbyBob3N0YXJ0ZWxvIGlvLi4gDQpjaWFvDQpBbmRyZWEKICAgIApTTVM6ZGEgZ2l1c2VwcGVtb3JnYW50ZTFAdmlyZ2lsaW8uaXQ7IElQOjE4OC4xMTQuMTAzLjk2IC0tPiBCdW9uZ2lvcm5vLiBNaSBzdG8gYWZmYWNjaWFuZG8gZGEgcG9jbyBhbGxhIHNmZXJhIGNlbGVzdGUgZSBhbGxhDQphc3Ryb2ZvdG9ncmFmaWEuDQpJbiBtZXJpdG8gYWxsYSBmb3JtdWxhIHBlciBjYWxjb2xvIENhbXBvIGlucXVhZHJhdG8gZGFsIENDRCBpbiBwcmltaSBkJ2FyY28gKEFyY01pbikgY2hpZWRvIHNwaWVnYXppb25lIGRlbGxhIGZvcm11bGEgcmlwb3J0YXRhIGUgc2UgcG9zc2liaWxlIHVuIGVzZW1waW8uIENvbnRvIGRpIHN2aWx1cHBhcmUgY29uIEV4Y2VsIGxhIGZvcm11bGEuDQpDb3JkaWFsaSBzYWx1dGkKICAgIApTTVM6ZGEgcm9iZXJ0by5iYWNjaUBnbWFpbC5jb207IElQOjE4OC4xMTQuMTAyLjI1IC0tPiBodHRwOi8vazYzLmFsdGVydmlzdGEub3JnLw0KSW0gYmFjayAgcHVvaSBpbnNlcmlybWkgbmVsIG1hZ2ljbyBhbmVsbG8gPw0KU2FsdXRpIHJvYmVydG8KICAgIApTTVM6ZGEgbC5nb25maWFudGluaUBhbGljZS5pdDsgSVA6MTg4LjExNC4xMDIuNzMgLS0+IFNhbHZlIEFuZHJlYSwNCmNpIHNpYW1vIGdp4CBzZW50aXRpIGluIHBhc3NhdG8gcGVyIGxvIHN0YXouIGNvbiBHaS1HaVd4IENhcHQuIFZvcnJlaSBmYXJ0aSB2aXNpb25hcmUgdW5hIHJpcHJlc2EgZGkgTTE1IHBlciB1biB0dW8gcGFyZXJlIHBvc3NpYmlsbWVudGUgbW9sdG8gb2JpZXR0aXZvLCBtYSBub24gc28gY29tZSBwb3RlcnRpIGludmlhcmUgbGEgZm90by4gRScgbGEgbWlhIHByaW1hIGZvdG8gKGkgZGF0aSBkaSByaXByZXNhIGxpIHRyb3ZlcmFpIG5lbGxhIG1haWwpIGVkIHN0YXRhIGZhdHRhIGRvcG8gNjAgYW5uaSBkaSB2aXN1YWxlLCBwZXJjafIgdGVycmVpIG1vbHRvIGFkIHVuIHJpc2NvbnRybyBlIGFuY2hlIHBvc3NpYmlsaSBpbmRpY2F6aW9uaSB0ZWNuaWNoZS4NCkdyYXppZSBpbiBhbnRpY2lwbyBwZXIgbCdldmVudHVhbGUgcmlzcG9zdGEgZSBzY3VzYSBsYSAuLi4uIHJvdHR1cmEuDQpMdWlnaSAKICAgIApTTVM6ZGEgaWduYXppby5hbnRvbmlldHRpQGdtYWlsLmNvbTsgSVA6MTg4LjExNC4xMDIuOTcgLS0+IENpYW8gQW5kcmVhLg0KSG8gZGkgcmVjZW50ZSBmYXR0byB1biBwbycgZGkgZm90b2dyYWZpZSBjb24gaWwgbWlvIG51b3ZvIGFjcXVpc3RvIHVuIENDRCBtb25vIHVzYXRvLlNvbm8gYWJiYXN0YW56YSBzb2RkaXNmYXR0byBkZWkgcmlzdWx0YXRpLCBvdnZpYW1lbnRlIGluIEJXLiBOb24gdm9sZW5kbyBhbmNvcmEgIGNpbWVudGFybWkgY29uIHJ1b3RhIGUgZmlsdHJpIHZhcmkgLCBobyB2aXN0byBjaGUgdHUgaGFpIGNvbG9yYXRvIGFsY3VuZSAgdHVlIGZvdG8gbW9ub2Nyb21hdGljaGUgY29uIGNvbG9yaSBwcmVzaSBpbiBwcmVzdGl0byBkYSBTa3lNYXAuDQpQb3RyZXN0aSAsc2UgcHVvaSBkaXJtaSBjaGUgdGVjbmljYSB1c2k/DQpQLFMuIGlsIENDRCBlJyB1biBBdGlrIDMxNCBMKw0KR3JhemllLiBJZ25hemlvDQoNCg0KCiAgICAKU01TOmRhIGxhIHR1YSBFLU1BSUw7IElQOjE4OC4xMTQuMTAyLjk3IC0tPiBJbnNlcmlzY2kgcXVpIGlsIHRlc3RvCiAgICAKU01TOmRhIHppbmlnaWFjb21vQHlhaG9vLml0OyBJUDoxODguMTE0LjEwMi4yMzUgLS0+IAogICAgClNNUzpkYSBlbGlhdG9rb3hAaG90bWFpbC5jb207IElQOjE2Mi4xNTguMTUwLjczIC0tPiBTYWx2ZQ0KdmVyc28gaWwgMjAgbHVnbGlvKG5vbiBzbyBsYSBkYXRhIGVzYXR0YSkgMjAxNyxvc3NlcnZhbmRvIGlsIGNpZWxvIG5vdHR1cm5vIGEgb2NjaGlvIG51ZG8oZGFsbGUgYWxwaSBTdml6emVyZSlobyB2aXN0byB1bmEgYHN0ZWxsYWBpbGx1bWluYXJzaSBtb2x0bywgZSB1biBhdHRpbW8gZG9wbyBzcGVnbmVyc2kgY29tcGxldGFtZW50ZSwgbWkgY2hpZWRldm8gc2UgcXVlc3RvIGZlbm9tZW5vLCBlIGNvbGxlZ2FiaWxlIGEgcXVhbGNoZSBldmVudG8gY2VsZXN0ZSByZWFsbWVudGUgYWNjYWR1dG8/byBhIHF1YWxjaGUgc2F0ZWxsaXRlIG8gc2ltaWxlLm1pbGxlIGdyYXppZSBwZXIgdW5hIHN1YSByaXNwb3N0YSwgY29yZGlhbGkgc2FsdXRpIEVsaWEKICAgIApTTVM6ZGEgaWduYXppby5hbnRvbmlldHRpQGdtYWlsLmNvbTsgSVA6MTg4LjExNC4xMDIuMTUxIC0tPiBDaWFvIEFuZHJlYS4NClNvbm8gdW4gcG8nIGNvbmZ1c28gc3VsbGEgZGlzdGFuemEgdHJhIHJpZHV0dG9yZSBmb2NhbGUgZSBzZW5zb3JlIGRpIHVuIENDRCBvIGRpIHVuYSBSZWZsZXguDQpUcmEgdmFyaWUgZm9ybXVsZSBlIGRhdGkgZGl2ZXJzaSBzdWxsYSBmb2NhbGUgbmF0aXZhIGRlbCByaWR1dHRvcmUgYWxsYSBmaW5lIHR1dHRpIGRhbm5vIHZhbG9yaSBkaXNjb3JkYW50aSB0cmEgZGkgbG9yby4NCk5lbGxvIHNwZWNpZmljbyBpbyB1c28gdW4gQ2VsZXN0cm9uIDAuNjMgKENoaW5hKSBGb2NhbGUgMjMwbW0NCihtaXN1cmEgdmVyaWZpY2F0YSB0cmFtaXRlIHByb2V6aW9uZSBkaSB1biBzb2dnZXR0byBhbGwnaW5maW5pdG8gc3UgdW4gZm9nbGlvICkuDQpEYSBxdWVzdGkgZGF0aSByaXN1bHRlcmViYmUgdW5hIGRpc3RhbnphIGRpIDg1bW0gLg0KRScgZXNhdHRvLHZpc3RvIGNoZSBobyB0cm92YXRvIGluIHJldGUgdmFsb3JpIGNoZSB2YW5ubyBkYSA1NW1tIGEgMTAybW0/CiAgICAKU01TOmRhIGxhIHR1YSBFLU1BSUw7IElQOjE0MS4xMDEuMTA0LjQ1IC0tPiB0ZXN0CiAgICAKU01TOmRhIGNpbnF1ZXNhbnRpLmFudG9uaW9AZ2RmLml0OyBJUDoxMDguMTYyLjIyOS4xNCAtLT4gVGkgY29udGF0dG8gcGVyIGRpcnRpIGNoZSBzZWkgdW4gR3JhbmRlICZhbXA7IzEyODUxMjsKICAgIApTTVM6ZGEga2V5Ym9hcmRpc3RkZW5ueUB5YWhvby5pdDsgSVA6MTQxLjEwMS44OC4xNCAtLT4gY2lhbyBjb21wbGltZW50aSBwZXIgaWwgc2l0byAsIGNoZSBsZWkgc2FwcGlhIGNvbm9zY2Ugc29mdHdhcmUgZGkgcmF5IHRyYWNpbmcgb3BlbiBzb3VyY2UgPw0KZ3JhemllCiAgICAKU01TOmRhIG1haWxAbWljaGVsZWdpcmFyZGkuY29tOyBJUDoxNDEuMTAxLjY5LjY3IC0tPiAKICAgIApTTVM6ZGEgYWxlc3NhbmRyby5iaWFzaWE5M0BnbWFpbC5jb207IElQOjE2Mi4xNTguODkuMjIxIC0tPiAKICAgIApTTVM6ZGEgcGlldHJvbGFtb3JyYUBnbWFpbC5jb207IElQOjE4OC4xMTQuMTAzLjkgLS0+IAogICAgClNNUzpkYSBjaWNjaW9wb3N0aWNjaW9AYXMuaXQ7IElQOjE2Mi4xNTguODkuMTQzIC0tPiBzZGZnZmd4IHNmZ2hmc2RoIGZoICBmZGhkIGZzaGpram0KICAgIApTTVM6ZGEgbGEgdHVhIEUtTUFJTDsgSVA6MTA4LjE2Mi4yMjkuMTk0IC0tPiBIbyB0cm92YXRvIHVuIG1lcmVvcml0ZSBjb3NhIGRldm8gZmFyZT8NCgogICAgClNNUzpkYSBpdHN0dml0QGdtYWlsLmNvbTsgSVA6MTg4LjExNC4xMDMuMTM1IC0tPiAKICAgIApTTVM6ZGEgb3NjYXJAY2F0dGluYS5pdDsgSVA6MTg4LjExNC4xMDIuMTgyIC0tPiBDaWFvIEFuZHJlYSwgYXZyZWkgaWwgcGlhY2VyZSBkaSBmYXIgZW5ldHJhcmUgaWwgbWlvIGJsb2cgd3d3LmNhdHRpbmEuaXQgbmVsbCdhbmVsbG8gZGkgYXN0cm9yaW5nLg0KQ29yZGlhbGkgU2FsdXRpIAogICAgClNNUzpkYSBhc3Ryb25vbWlhZXhjZWxAZ21haWwuY29tOyBJUDoxNjIuMTU4Ljc4LjE0MCAtLT4gQ2lhbyBBbmRyZWEgc29ubyBsdWNpYW5vIGRpIEFzdHJvbm9taWEuY29tLiBxdWVsbG8gZGVsIGZvZ2xpbyBjYWxjb2xvIGV4Y2VsIGUgb3JhIGluIHByb2dyYW1tYS4gU3Rhdm8gZ3VhcmRhbmRvIGlsIHNvZnR3YXJlIGNvbXBsaW1lbnRpLg0KTWEgZmFpIHByb2dyYW1tYXppb25lIGluIFZCLk5FVCBvIEMrKyA/IERpYW1pbmUgY2kgc2kgcG90ZXZhIGRhcmUgdW5hIG1hbm8uDQpBbCBtb21lbnRvIGhvIHN0YWNjYXRvIHBlciA0IG1lc2kgZGFsIHByb2dldHRvIGUgc2UgbmUgcGFybGEgYSBTZXR0ZW1icmUuLiBDYWxkbyBzdHJlc3MsICduYSBtYXJlYSBkaSBjb3NlIGRhIGZhcmUuLiBlIG5lbCBjb250ZW1wbyBobyBjb3JyZXR0byBkZWdsaSBlcnJvcmksIGFuY29yYSBkaXZlcnNpIG5lIGhvIHRyb3ZhdGkuLg0KQ29tdW5xdWUgYmVsbG8gaWwgcHJvZ3JhbW1pbm8gZGVsbGUgZmFzaSBsdW5hcmkgDQpKZWFuIE1lZXVzID8gc3VwcG9uZ28uDQoNClRpIGxhc2NpIGNoZSBnaXJvIGUgc3Rhdm8gZ3VhcmRhbmRvIG1hdGVyaWFsZSBkaSBvZmZpY2luYSBwZXIgTW91bnRhbiBiaWtlLiBDaGVlIGUnIHBpdSBpbXBvcnRhbnRlIGxhIHNhbHV0ZSAgaW4gcXVlc3RpIHRlbXBpDQpDb3JkaWFsaSBBbmRyZWENCkx1Y2lhbm9CDQoKICAgIApTTVM6ZGEgZnJhbmNpLnNwZWNjaGlhQGdtYWlsLmNvbTsgSVA6MTYyLjE1OC4xNTAuNjIgLS0+IFNhbHZlLCBzb25vIHVuIGFwcGFzc2lvbmF0byBkaSBhc3Ryb25vbWlhIGUgcG9zc2VnZ28gdW4gc2l0byB3ZWIgYW5jb3JhIGluIGNvc3RydXppb25lIHJpZ3VhcmRhbnRlIGFwcHVudG8gcXVlc3RvIGFyZ29tZW50bywgaG8gbWVzc28gbmVsbGEgbWlhIGhvbWUgKGh0dHBzOi8vZnJhbmNlc2Nvc3BlY2NoaWEubWUvaW5kZXguaHRtbCkgaWwgZGl2IGRlbCBwcm9nZXR0byBhc3Ryb3JpbmcgZGVsIHF1YWxlIHNhcmVpIG1vbHRvIGZlbGljZSBkaSBmYXIgcGFydGUuIEdyYXppZSBwZXIgbCdhdHRlbnppb25lLiBTcGVjY2hpYSBGcmFuY2VzY28gCiAgICAKU01TOmRhIGFzc29kaWN1b3JpMjAxM0BlbWFpbC5pdDsgSVA6MTYyLjE1OC4xOC4xNTggLS0+IEdlbnRpbG1lbnRlIHBvdHJlaSBhdmVyZSBpbCBsaW5rIGRpIHVuYSB2ZXJzaW9uZSBhZ2dpb3JuYXRhIGZyZWUgZGVpIHR1b2kgc29mdHdhcmUscG9zc2liaW1lbnRlIHBlciB3aW5kb3dzIDEwP0dyYXppZSBtaWxsZQogICAgClNNUzpkYSBhc3NvZGljdW9yaTIwMTNAZW1haWwuaXQ7IElQOjE2Mi4xNTguMTguMTI4IC0tPiBHZW50aWxtZW50ZSxobyBzY2FyaWNhdG8gaWwgc29mdHdhcmUsbWEgbm9uIHJpZXNjbyBhIHZpc3VhbGl6emFyZSBsYSBmaW5lc3RyYSBkZWkgc2V0dGFnZ2ksdGlwbyBlc3Bvc2l6aW9uZSxnYWluLHNhdHVyYXppb25lLGdhbW1hLGV0YyxwdW9pIGFpdXRhcm1pPwogICAgClNNUzpkYSBhc3Ryb25vbWlhQGx1Y2Fwb3JmaXJpLml0OyBJUDoxNzIuNjguMTk4LjE0MCAtLT4gCiAgICAKU01TOmRhIGFtYWRlaS5hbmRyZWE4M0BnbWFpbC5jb207IElQOjEwOC4xNjIuMjI5LjM2IC0tPiAKICAgIApTTVM6ZGEgZ2FnbWF0dEB5YWhvby5pdDsgSVA6MTg4LjExNC4xMDIuMjYgLS0+IAogICAgClNNUzpkYSBkb2t1bWVudGVvbmxpbmUxQGdtYWlsLmNvbTsgSVA6MTYyLjE1OC44OC42NyAtLT4gCiAgICAKU01TOmRhIGFuZHJlYWNvbnNvbGVAZ21haWwuY29tOyBJUDoxNzIuNzAuODYuNDIgLS0+IFRlc3QKICAgIApTTVM6ZGEgbXVsYmVycnl3b3Jrc0BnbWFpbC5jb207IElQOjEwOC4xNjIuMjEwLjE3MyAtLT4gTmljZSBsb29raW5nIHNjb3BlLiBJIHNhdyB5b3VyIHBvc3Qgb24gSGFja2FkYXkuY29tIGFuZCBjbGlja2VkIG9uIHRoZSBsaW5rIHRvIGdvIHRvIHlvdXIgc2l0ZS4gTXkgbWFsd2FyZSBwcm90ZWN0aW9uIHNvZnR3YXJlIHNhaWQgdGhlcmUgd2FzIGEgYmFkIGxpbmsgc29tZXdoZXJlIGluIHlvdXIgc2l0ZSBwb2ludGluZyB0byBwb3RlbnRpYWxseSBiYWQgc29mdHdhcmUsIHdoaWNoIGl0IGJsb2NrZWQuIFRoaXMgaXMgdGhlIG1lc3NhZ2UgQXZhc3QgZ2F2ZSBtZS4gDQpVUkw6TWFsICBodHRwczovL2Nqc2hhcmUuY29tL3BsdWdpbi9fc2NyaXB0LnBocAogICAgClNNUzpkYSB2ZGVjaWNjb0BhbGljZS5pdDsgSVA6MTcyLjcxLjExNC4xMTIgLS0+IEJ1b25hc2VyYSwgaG8gcHJvdmF0byBhZCB1c2FyZSBHSUdXeENhcHR1cmUgcHVyIGVzc2VuZG8gbnVvdm8gYSBQeXRob24uIEluc3RhbGxhdG8gUHl0aG9uIDMuNiAodWx0aW1hIHJlbGVhc2UgcGVyIE1hY09zKSBlIGluc3RhbGxhdG8gR0lHSVd4Q2FwdHVyZSwgcXVhbmRvIGxvIGxhbmNpbyBzaSBhcHJvbm8gZHVlIGZpbmVzdHJlLCB1bmEgIGNvbiB0aXRvbG8gSURMRSBTaGVsbCAzLjExLjAgKGNvbiBkdWUgcmlnaGUsIHVuYSAnUHl0aG9uIDMuMTEuMCBvbiBEYXJ3aW4nIGUgYWwgc2Vjb25kYSAnVHlwZSAmcXVvdDtoZWxwJnF1b3Q7LCAmcXVvdDtDb3B5cmlnaHQmcXVvdDssIENyZWRpdHMmcXVvdDsgb3IgJnF1b3Q7TGljZW5zZSZxdW90OyBmb3IgaW5mb3JtYXRpb24mcXVvdDspIGUgdW5hIGZpbmVzdHJhIGNvbiB1bmEgc2VyaWUgZGkgcmlnaGUgY29tbWVudG8gZSBwb2kgcXVlc3RlOg0KDQppbXBvcnQgb3MsIHN5cw0KDQpkZWYgcnVuX21haW4oKToNCiAgICBvcy5jaGRpcihzeXMucGF0aFswXSsmcXVvdDsvbW9kdWxlcyZxdW90OykNCiAgICBmcm9tIG1vZHVsZXMgaW1wb3J0IENvbnRyb2xsZXINCiAgICBDb250cm9sbGVyLm1haW4oKQ0KDQppZiBfX25hbWVfXyA9PSAmcXVvdDtfX21haW5fXyZxdW90OzoNCiAgICBydW5fbWFpbigpDQoNCk5vbiBjcmVkbyBzaWEgc29sbyBxdWVzdG8gY2hlIGRldmUgYWNjYWRlcmUuIERvdmUgc2JhZ2xpbz8NCg0KR3JhemllDQpWaXR0b3JpbwogICAgClNNUzpkYSBsYW1pRU1BSUw7IElQOjE3Mi43MS45OC4xOCAtLT4gVEVTVE9ESVBST1ZhCiAgICAKU01TOmRhIGRhbmlsby5waXZhdG9AYWxpY2UuaXQ7IElQOjE3Mi43MS4xMTQuMTQxIC0tPiAKICAgIAo=