Tugas Kelompok

Pengumpulan Data

Logo


Abstract. This assignment aims to describe the data collection method on a case study of the marketing business strategy implemented by Skintific products. By understanding the marketing approach used, this data collection will explore how the strategy affects the product’s position in the market, appeal to consumers, as well as effectiveness in achieving the set marketing objectives.

Abstrak. Tugas ini bertujuan untuk menjelaskan metode pengumpulan data tentang studi kasus strategi bisnis pemasaran yang diterapkan oleh produk Skintific. Dengan memahami pendekatan pemasaran yang digunakan, Pengumpulan data ini akan mengeksplorasi bagaimana strategi tersebut memengaruhi posisi produk di pasar, daya tarik bagi konsumen, serta efektivitas dalam mencapai tujuan pemasaran yang telah ditetapkan.

LATAR BELAKANG

Industri skincare Indonesia berkembang pesat. Skintific, merek yang fokus pada perlindungan skin barrier, menjadi objek pengumpulan data. Pengumpulan data ini bertujuan untuk menganalisis efektivitas strategi pemasaran, Skintific. Survei dilakukan melalui Google Form, menggabungkan data kuantitatif dan kualitatif. Data kuantitatif memberikan gambaran umum tentang tingkat kepuasan, preferensi promosi, dan efektivitas promosi, sementara data kualitatif memberikan wawasan yang lebih mendalam tentang pengalaman dan persepsi responden terhadap strategi pemasaran yang dilakukan.

1 Definisikan Jenis Data

Data Kuantitatif

Data ini merupakan data kuantitatif yang mencakup informasi mengenai responden terkait kepuasan terhadap produk Skintific, jenis promosi yang menarik bagi mereka, cara mereka mengetahui produk tersebut, dan penilaian terhadap keefektifan promosi.

Nama Usia Kepuasan hasil produk Jenis promosi menarik Bagaimana mengetahui produk Skintific
Alya 18-23 4 Bundling Produk Influencer
Zain 18-23 4 Discount Media Sosial
Isna 18-23 4 Discount Rekomendasi
Bagas 18-23 3 Discount Media Sosial
Chika 18-23 4 Discount Media Sosial
Luthfi 18-23 3 Discount Media Sosial
Rizal 30-40 5 Discount Media Sosial
Fira 24-29 3 Cashback Rekomendasi
Farhah 18-23 4 Discount Influencer
Farrel 18-23 4 Discount Media Sosial
Azki 18-23 3 Discount Media Sosial
Sendy 24-29 4 Discount Rekomendasi
Yuli 18-23 5 Hadiah Rekomendasi
Chindy 18-23 3 Discount Iklan Online
Ismi 18-23 4 Discount Media Sosial
Aulia 18-23 5 Bundling Produk Rekomendasi
Siwi 18-23 3 Discount Influencer
Ragil 18-23 3 Discount Media Sosial
Anfield 18-23 4 Bundling Produk Media Sosial
Pryo 18-23 5 Discount Iklan
Sherly 18-23 5 Discount Media Sosial
Putri 18-23 5 Bundling Produk Media Sosial
Yordan 12-17 2 Bundling Produk Rekomendasi
Ester 12-17 2 Discount Iklan
Rahma 18-23 4 Discount Media Sosial
Rinjani 18-23 5 Discount Influencer
Salwa 18-23 1 Discount Media Sosial
Rendy 18-23 3 Discount Rekomendasi
Kahzaya 18-23 5 Bundling Produk Media Sosial

Data menunjukkan mayoritas responden berusia 18-23 tahun, menunjukkan minat tinggi terhadap produk Skintific. Sebagian besar memberikan nilai kepuasan 4 dan 5, dengan diskon sebagai promosi paling menarik, diikuti oleh bundling dan cashback. Media sosial dan rekomendasi menjadi sumber utama informasi. Meskipun banyak yang menilai promosi efektif, ada beberapa penilaian netral. Tingkat kepuasan yang tinggi mengindikasikan produk memenuhi harapan pengguna, sehingga fokus pada promosi diskon, bundling, dan pemanfaatan media sosial sangat dianjurkan, serta survei lanjutan untuk umpan balik lebih mendalam.

Data Kualitatif

Data yang disajikan merupakan data kualitatif yang memberikan wawasan mendalam tentang strategi pemasaran dan penilaian harga produk berdasarkan tanggapan responden. Mayoritas responden berusia antara 18 hingga 23 tahun, dengan beberapa dari rentang usia 12-17 dan 24-29 tahun, mencerminkan fokus pemasaran pada segmen milenial dan generasi Z yang aktif menggunakan media sosial dan terbuka terhadap inovasi produk.

Nama Usia Strategi Pemasaran lain
Alya 18-23 Tambahkan Diskonbundling
Zain 18-23 Tidak Ada
Isna 18-23 Tidak Ada
Bagas 18-23 Tingkatkan Kolaborasi
Chika 18-23 Tidak Ada
Luthfi 18-23 Tambahan Gift Bonus
Rizal 30-40 Tidak Ada
Fira 24-29 Tidak Ada
Farhah 18-23 Tidak Ada
Farrel 18-23 Tambahkan Gift Bonus
Azki 18-23 Membuat Workshop
Sendy 24-29 Tidak Ada
Yuli 18-23 Perbanyak Brand Ambassador
Chindy 18-23 Tidak Ada
Ismi 18-23 Cukup
Aulia 18-23 Tidak Ada
Siwi 18-23 Tidak Ada
Ragil 18-23 Tidak Ada
Anfield 18-23 Tidak Ada
Pryo 18-23 Tambahkan Discount
Sherly 18-23 Tambahkan Discount
Putri 18-23 Tidak Ada
Yordan 12-17 Tambahkan Discount
Ester 12-17 Tambahkan Discount
Rahma 18-23 Tambahkan Discount
Rinjani 18-23 Tambahkan Discount
Salwa 18-23 Tambahkan Discount
Rendy 18-23 Kolaborasi Dengan Influencer
Kahzaya 18-23 Tambahkan Gift Bonus

Responden memberikan masukan tentang strategi pemasaran Skintific, termasuk permintaan diskon dan bonus hadiah, serta kolaborasi dengan influencer untuk meningkatkan kesadaran merek. Penilaian harga bervariasi; sebagian besar merasa harga sesuai kualitas, sementara beberapa merasa tidak. Meskipun mayoritas puas, ada saran untuk lebih responsif terhadap kebutuhan konsumen. Secara keseluruhan, produk Skintific diterima baik di kalangan milenial, dan strategi pemasaran yang dinamis sangat penting untuk daya tarik di pasar.

2 Metode Pengumpulan

Pengumpulkan data ini menggunakan metode survei, yang dipilih karena kemampuannya mengumpulkan data secara cepat dan efisien dari berbagai responden. Tujuan penelitian ini adalah untuk memahami pandangan konsumen terkait strategi pemasaran produk Skintific. Survei ini melibatkan 15 pertanyaan kuantitatif dan 5 pertanyaan kualitatif yang dirancang untuk mengeksplorasi pandangan pengguna mengenai efektivitas produk, preferensi promosi, serta faktor-faktor yang memengaruhi keputusan mereka dalam membeli produk. Kuesioner disusun melalui Google Form untuk mempermudah proses pengisian dan disebarkan secara daring kepada teman, kerabat, dan jaringan yang lebih luas. Dengan demikian, responden dapat mengisi kuesioner kapan pun mereka merasa nyaman, yang membantu meningkatkan partisipasi. Hingga saat ini, kuesioner telah berhasil dijawab oleh 37 responden. Pendekatan survei ini memungkinkan peneliti untuk mengumpulkan data yang beragam, yang kemudian dianalisis untuk memahami preferensi dan perilaku konsumen dalam konteks pemasaran produk Skintific.

3 Alat Pengumpulan

Pengumpulan data ini menggunakan platform Google Forms untuk mengumpulkan data dari responden. https://docs.google.com/spreadsheets/d/1BFyLrdeKRUA849wALNRIfVbx0u42Q4rjnHAkipgTA-w/edit?usp=sharing

4 Pengambilan Sampel

Populasi yang dijadikan sampel adalah pengguna produk Skintific dalam rentang usia muda, sementara metode pengambilan sampel kemungkinan besar convenience sampling, yang umum digunakan untuk survei online di mana data dikumpulkan berdasarkan kemudahan akses terhadap responden.

Reliabilitas dan Validitas : Kami melakukan uji reliabilitas ulang menggunakan Google Form sebanyak dua kali dengan melibatkan 37 responden. Hasil yang diperoleh dari kedua pengujian menunjukkan konsistensi yang tinggi dan sama, menegaskan keandalan instrumen yang digunakan dalam pengumpulan data ini. Hal ini memberikan keyakinan bahwa data yang dikumpulkan dapat diandalkan untuk analisis lebih lanjut.

5 Kumpulkan Data

Metode pengumpulan data yang digunakan adalah survei, yang dilakukan melalui kuesioner. Pertama-tama, menentukan topik studi kasus yang relevan, yaitu strategi bisnis yang akan dianalisis. Setelah topik ditetapkan, kuesioner dirancang dengan mencakup pertanyaan-pertanyaan yang diperlukan untuk mengumpulkan data yang dibutuhkan. Pertanyaan dalam kuesioner dirancang dengan jelas dan singkat, agar mudah dipahami oleh responden. Jenis pertanyaan dapat berupa pilihan ganda, atau pertanyaan terbuka, tergantung pada jenis informasi yang ingin diperoleh. Setelah kuesioner siap, kuesioner disebarkan kepada responden yang sesuai. Penyebaran ini dapat dilakukan secara langsung, melalui email, atau melalui platform online. Penting untuk memastikan bahwa responden memahami tujuan survei dan bagaimana data yang mereka berikan akan digunakan. Setelah proses pengumpulan data selesai, informasi yang terkumpul akan dianalisis untuk menarik kesimpulan yang dapat mendukung strategi bisnis yang telah ditetapkan. Dengan menggunakan metode survei ini, diharapkan dapat memperoleh wawasan berharga untuk pengambilan keputusan bisnis yang lebih baik.

6 Kelola Data

Cara menyimpan data agar aman dan terorganisir yaitu. Pertama, gunakan format penyimpanan yang mudah dibaca dan diolah, seperti CSV atau Excel, agar informasi dapat diakses dengan cepat dan konsisten. Selanjutnya, pastikan setiap kolom dalam dataset jelas dan diberi nama sesuai dengan isi data, seperti “Nama”, “Usia”, dan “Kepuasan”, untuk memudahkan pencarian informasi. Selain itu, lakukan backup data secara berkala setelah melakukan perubahan atau pembaruan untuk mencegah kehilangan data akibat kerusakan file atau kesalahan. Dengan langkah-langkah ini, data dapat disimpan dengan aman dan terorganisir, memudahkan proses analisis maupun proses pemeliharaan data

7 Analisis Data

Analisis Kualitatif Strategi Pemasaran Produk Skintific

1. Persepsi Kualitas Produk

Gambar

Hasil survei menunjukkan bahwa 96,9% responden merasa bahwa kualitas produk Skintific lebih baik dibandingkan dengan produk sejenis. Ini mencerminkan bahwa produk Skintific berhasil membangun citra positif di kalangan konsumen, yang merupakan aset penting dalam membangun loyalitas merek. Tingginya kepuasan (87,9%) juga menunjukkan bahwa konsumen merasa produk memenuhi atau bahkan melebihi harapan mereka.

2. Pengaruh Media Sosial

Gambar

Data menunjukkan bahwa 62,2% responden pertama kali mengetahui produk Skintific melalui media sosial, seperti TikTok dan Instagram. Ini menandakan bahwa perusahaan telah memanfaatkan platform-platform ini dengan baik untuk menjangkau target audiens milenial. Keberhasilan ini menunjukkan bahwa strategi pemasaran berbasis media sosial tidak hanya relevan, tetapi juga efektif dalam menarik perhatian dan membangun kesadaran merek.

3. Peran Diskon dalam Keputusan Pembelian

Gambar

Diskon berperan besar dalam keputusan pembelian, dengan 73% responden mengakui bahwa tawaran diskon menjadi faktor utama. Meskipun diskon dapat meningkatkan penjualan jangka pendek, ketergantungan pada strategi ini bisa mengarah pada ekspektasi harga rendah di mata konsumen. Oleh karena itu, penting bagi Skintific untuk menyeimbangkan antara promosi berbasis diskon dan nilai yang ditawarkan oleh produk.

4. Kualitas dan Kemasannya

Gambar

Responden memberikan umpan balik positif tentang kemasan produk, yang dianggap sesuai dengan kualitas dan harga. Kemasan yang menarik dapat meningkatkan daya tarik visual produk dan membantu menciptakan pengalaman positif bagi konsumen. Hal ini menunjukkan bahwa Skintific telah berhasil mengintegrasikan aspek estetika dalam strategi pemasarannya.

5. Pengaruh Rekomendasi Teman dan Keluarga

Sebanyak 21,2% responden mengetahui produk melalui rekomendasi teman atau keluarga. Ini menunjukkan bahwa word-of-mouth memiliki peran penting dalam strategi pemasaran Skintific. Memperkuat hubungan dengan konsumen yang sudah ada dapat mendorong mereka untuk merekomendasikan produk kepada orang lain, sehingga memperluas jangkauan tanpa biaya iklan tambahan.

6. Tanggapan Umum Terhadap Strategi Pemasaran Mayoritas responden memberikan tanggapan positif terhadap strategi pemasaran Skintific, menganggapnya efektif dan sudah berjalan dengan baik. Ini menunjukkan bahwa perusahaan telah memahami dan memenuhi kebutuhan serta preferensi pasar milenial. Respons positif ini bisa menjadi fondasi untuk pengembangan strategi pemasaran lebih lanjut dan inovasi produk di masa depan.

8 Laporkan Hasil

Tugas pengumpulan data ini bertujuan untuk menganalisis strategi pemasaran produk Skintific, terutama dalam hal bagaimana produk tersebut menarik minat konsumen, khususnya mahasiswa Institut Teknologi Sains Bandung. Data dikumpulkan melalui kuesioner yang disebarkan secara online, dan hasilnya dianalisis untuk mendapatkan wawasan terkait efektivitas strategi pemasaran.

Temuan Utama:

  1. Mayoritas responden (usia 18-23 tahun) memberikan penilaian positif terhadap kualitas dan efektivitas produk Skintific, dengan tingkat kepuasan mencapai 87,9%.

  2. Media sosial menjadi sumber utama informasi tentang produk (57,6%), diikuti oleh rekomendasi teman dan keluarga.

  3. Faktor terbesar yang mempengaruhi keputusan pembelian adalah kualitas produk dan diskon, dengan responden menganggap harga produk sepadan dengan kualitas.

  4. Kolaborasi dengan influencer dan penggunaan diskon sebagai strategi promosi terbukti efektif.

9 Evaluasi Proses

Evaluasi terhadap proses pengumpulan data menunjukkan bahwa kuesioner yang dirancang jelas dan singkat meningkatkan akurasi, namun perlu ditambahkan pertanyaan mendalam atau skala Likert. Metode penyebaran online efisien, namun berisiko diabaikan atau jawaban asal, sehingga perlu insentif dan tindak lanjut. Ukuran sampel 30 responden memberikan gambaran umum, namun perlu ditingkatkan untuk validitas yang lebih baik. Tingkat kepuasan yang tinggi (87,9%) positif, namun perlu ditambahkan pertanyaan terbuka untuk kritik konstruktif. Ketergantungan pada media sosial sebagai sumber informasi efektif untuk audiens muda, namun perlu diversifikasi saluran komunikasi, termasuk email dan kampanye offline. Dengan perbaikan ini, pengumpulan data akan lebih optimal dan mendukung pengambilan keputusan yang lebih baik.

10 Referensi

Yulia, D., & Wibowo, A. (2021). Analisis dampak promosi terhadap keputusan pembelian produk Skintific. Jurnal Riset Bisnis dan Teknologi, 4(2), 1-12. Diakses pada 19 Oktober 2023, dari https://journal.lspr.edu/index.php/jrbt/article/download/531/248/2038

Prabowo, H. (2021). Strategi pemasaran digital untuk meningkatkan brand awareness. Jurnal Ilmu Komunikasi dan Manajemen, 6(1), 45-60. Diakses pada 19 Oktober 2023, dari https://jurnal.itbsemarang.ac.id/index.php/JIKMA/article/view/1559/1442

Bithour Production. (2023). Strategi marketing Skintific: Menarik perhatian konsumen di era digital. Diakses pada 19 Oktober 2023, dari https://bithourproduction.com/blog/strategi-marketing-skintific

Tanjung, R. (2023). Analisis brand Skintific dalam industri kosmetik. Diakses pada 19 Oktober 2023, dari https://id.scribd.com/document/691667872/Analisis-Brand-Skintific

LS0tDQp0aXRsZTogIlR1Z2FzIEtlbG9tcG9rIg0Kc3VidGl0bGU6ICJQZW5ndW1wdWxhbiBEYXRhIg0KYXV0aG9yOiANCiAgLSAiRmlrYSBJcnNhbmRpIERlc3Z5YW50aSAoNTIyNDAwMTMpIg0KICAtICJSYWNoZWxpYSBCZXZpbmEgVGFtYmFqb25nICg1MjI0MDAyMSkiDQogIC0gIlN5aWZhIE51cnVsZmFqcmkgUnVzdGluICg1MjI0MDAwMSkiDQpkYXRlOiAgImByIGZvcm1hdChTeXMuRGF0ZSgpLCAnJUIgJWQsICVZJylgIg0Kb3V0cHV0Og0KICBybWRmb3JtYXRzOjpyZWFkdGhlZG93bjogICAjIGh0dHBzOi8vZ2l0aHViLmNvbS9qdWJhL3JtZGZvcm1hdHMNCiAgICBzZWxmX2NvbnRhaW5lZDogdHJ1ZQ0KICAgIHRodW1ibmFpbHM6IHRydWUNCiAgICBsaWdodGJveDogdHJ1ZQ0KICAgIGdhbGxlcnk6IHRydWUNCiAgICBudW1iZXJfc2VjdGlvbnM6IHRydWUNCiAgICBsaWJfZGlyOiBsaWJzDQogICAgZGZfcHJpbnQ6ICJwYWdlZCINCiAgICBjb2RlX2ZvbGRpbmc6ICJzaG93IiANCiAgICBjb2RlX2Rvd25sb2FkOiB5ZXMNCiAgICBjc3M6ICJzdHlsZS5jc3MiDQotLS0NCg0KPGltZyBpZD0ibG9nby11dGFtYSIgc3JjPSJpbWcvZ3VybC5qcGVnIiBhbHQ9IkxvZ28iIHN0eWxlPSJ3aWR0aDoyMDBweDsgZGlzcGxheTogYmxvY2s7IG1hcmdpbjogYXV0bzsiPg0KDQoNCi0tLQ0KXyoqQWJzdHJhY3QuKiogVGhpcyBhc3NpZ25tZW50IGFpbXMgdG8gZGVzY3JpYmUgdGhlIGRhdGEgY29sbGVjdGlvbiBtZXRob2Qgb24gYSBjYXNlIHN0dWR5IG9mIHRoZSBtYXJrZXRpbmcgYnVzaW5lc3Mgc3RyYXRlZ3kgaW1wbGVtZW50ZWQgYnkgU2tpbnRpZmljIHByb2R1Y3RzLiBCeSB1bmRlcnN0YW5kaW5nIHRoZSBtYXJrZXRpbmcgYXBwcm9hY2ggdXNlZCwgdGhpcyBkYXRhIGNvbGxlY3Rpb24gd2lsbCBleHBsb3JlIGhvdyB0aGUgc3RyYXRlZ3kgYWZmZWN0cyB0aGUgcHJvZHVjdCdzIHBvc2l0aW9uIGluIHRoZSBtYXJrZXQsIGFwcGVhbCB0byBjb25zdW1lcnMsIGFzIHdlbGwgYXMgZWZmZWN0aXZlbmVzcyBpbiBhY2hpZXZpbmcgdGhlIHNldCBtYXJrZXRpbmcgb2JqZWN0aXZlcy5fDQoNCioqQWJzdHJhay4qKiBUdWdhcyBpbmkgYmVydHVqdWFuIHVudHVrIG1lbmplbGFza2FuIG1ldG9kZSBwZW5ndW1wdWxhbiBkYXRhIHRlbnRhbmcgc3R1ZGkga2FzdXMgc3RyYXRlZ2kgYmlzbmlzIHBlbWFzYXJhbiB5YW5nIGRpdGVyYXBrYW4gb2xlaCBwcm9kdWsgU2tpbnRpZmljLiBEZW5nYW4gbWVtYWhhbWkgcGVuZGVrYXRhbiBwZW1hc2FyYW4geWFuZyBkaWd1bmFrYW4sIFBlbmd1bXB1bGFuIGRhdGEgaW5pIGFrYW4gbWVuZ2Vrc3Bsb3Jhc2kgYmFnYWltYW5hIHN0cmF0ZWdpIHRlcnNlYnV0IG1lbWVuZ2FydWhpIHBvc2lzaSBwcm9kdWsgZGkgcGFzYXIsIGRheWEgdGFyaWsgYmFnaSBrb25zdW1lbiwgc2VydGEgZWZla3Rpdml0YXMgZGFsYW0gbWVuY2FwYWkgdHVqdWFuIHBlbWFzYXJhbiB5YW5nIHRlbGFoIGRpdGV0YXBrYW4uDQoNCioqTEFUQVIgQkVMQUtBTkcqKg0KDQpJbmR1c3RyaSBza2luY2FyZSBJbmRvbmVzaWEgYmVya2VtYmFuZyBwZXNhdC4gU2tpbnRpZmljLCBtZXJlayB5YW5nIGZva3VzIHBhZGEgcGVybGluZHVuZ2FuIHNraW4gYmFycmllciwgbWVuamFkaSBvYmplayBwZW5ndW1wdWxhbiBkYXRhLiBQZW5ndW1wdWxhbiBkYXRhIGluaSBiZXJ0dWp1YW4gdW50dWsgbWVuZ2FuYWxpc2lzIGVmZWt0aXZpdGFzIHN0cmF0ZWdpIHBlbWFzYXJhbiwgU2tpbnRpZmljLiBTdXJ2ZWkgZGlsYWt1a2FuIG1lbGFsdWkgR29vZ2xlIEZvcm0sIG1lbmdnYWJ1bmdrYW4gZGF0YSBrdWFudGl0YXRpZiBkYW4ga3VhbGl0YXRpZi4gRGF0YSBrdWFudGl0YXRpZiBtZW1iZXJpa2FuIGdhbWJhcmFuIHVtdW0gdGVudGFuZyB0aW5na2F0IGtlcHVhc2FuLCBwcmVmZXJlbnNpIHByb21vc2ksIGRhbiBlZmVrdGl2aXRhcyBwcm9tb3NpLCBzZW1lbnRhcmEgZGF0YSBrdWFsaXRhdGlmIG1lbWJlcmlrYW4gd2F3YXNhbiB5YW5nIGxlYmloIG1lbmRhbGFtIHRlbnRhbmcgcGVuZ2FsYW1hbiBkYW4gcGVyc2Vwc2kgcmVzcG9uZGVuIHRlcmhhZGFwIHN0cmF0ZWdpIHBlbWFzYXJhbiB5YW5nIGRpbGFrdWthbi4NCg0KIyBEZWZpbmlzaWthbiBKZW5pcyBEYXRhDQoNCioqRGF0YSBLdWFudGl0YXRpZioqDQoNCkRhdGEgaW5pIG1lcnVwYWthbiBkYXRhIGt1YW50aXRhdGlmIHlhbmcgbWVuY2FrdXAgaW5mb3JtYXNpIG1lbmdlbmFpIHJlc3BvbmRlbiB0ZXJrYWl0IGtlcHVhc2FuIHRlcmhhZGFwIHByb2R1ayBTa2ludGlmaWMsIGplbmlzIHByb21vc2kgeWFuZyBtZW5hcmlrIGJhZ2kgbWVyZWthLCBjYXJhIG1lcmVrYSBtZW5nZXRhaHVpIHByb2R1ayB0ZXJzZWJ1dCwgZGFuIHBlbmlsYWlhbiB0ZXJoYWRhcCBrZWVmZWt0aWZhbiBwcm9tb3NpLiANCg0KfCBOYW1hICAgIHwgVXNpYSAgfCBLZXB1YXNhbiBoYXNpbCBwcm9kdWsgfCBKZW5pcyBwcm9tb3NpIG1lbmFyaWsgfCBCYWdhaW1hbmEgbWVuZ2V0YWh1aSBwcm9kdWsgU2tpbnRpZmljIHwgS2VlZmVrdGlmYW4gcHJvbW9zaSB8DQp8Oi0tLS0tLS06fDotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLTp8Oi0tLS0tLS0tLS0tLS0tLS0tLS0tLTp8Oi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS06fDotLS0tLS0tLS0tLS0tLS0tLS0tOnwNCnwgQWx5YSAgICB8IDE4LTIzIHwgNCAgICAgICAgICAgICAgICAgICAgIHwgQnVuZGxpbmcgUHJvZHVrICAgICAgIHwgSW5mbHVlbmNlciAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IEVmZWt0aWYgICAgICAgICAgICAgfA0KfCBaYWluICAgIHwgMTgtMjMgfCA0ICAgICAgICAgICAgICAgICAgICAgfCBEaXNjb3VudCAgICAgICAgICAgICAgfCBNZWRpYSBTb3NpYWwgICAgICAgICAgICAgICAgICAgICAgICAgIHwgRWZla3RpZiAgICAgICAgICAgICB8DQp8IElzbmEgICAgfCAxOC0yMyB8IDQgICAgICAgICAgICAgICAgICAgICB8IERpc2NvdW50ICAgICAgICAgICAgICB8IFJla29tZW5kYXNpICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBFZmVrdGlmICAgICAgICAgICAgIHwNCnwgQmFnYXMgICB8IDE4LTIzIHwgMyAgICAgICAgICAgICAgICAgICAgIHwgRGlzY291bnQgICAgICAgICAgICAgIHwgTWVkaWEgU29zaWFsICAgICAgICAgICAgICAgICAgICAgICAgICB8IEVmZWt0aWYgICAgICAgICAgICAgfA0KfCBDaGlrYSAgIHwgMTgtMjMgfCA0ICAgICAgICAgICAgICAgICAgICAgfCBEaXNjb3VudCAgICAgICAgICAgICAgfCBNZWRpYSBTb3NpYWwgICAgICAgICAgICAgICAgICAgICAgICAgIHwgU2FuZ2F0IEVmZWt0aWYgICAgICB8DQp8IEx1dGhmaSAgfCAxOC0yMyB8IDMgICAgICAgICAgICAgICAgICAgICB8IERpc2NvdW50ICAgICAgICAgICAgICB8IE1lZGlhIFNvc2lhbCAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOZXRyYWwgICAgICAgICAgICAgIHwNCnwgUml6YWwgICB8IDMwLTQwIHwgNSAgICAgICAgICAgICAgICAgICAgIHwgRGlzY291bnQgICAgICAgICAgICAgIHwgTWVkaWEgU29zaWFsICAgICAgICAgICAgICAgICAgICAgICAgICB8IFNhbmdhdCBFZmVrdGlmICAgICAgfA0KfCBGaXJhICAgIHwgMjQtMjkgfCAzICAgICAgICAgICAgICAgICAgICAgfCBDYXNoYmFjayAgICAgICAgICAgICAgfCBSZWtvbWVuZGFzaSAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgRWZla3RpZiAgICAgICAgICAgICB8DQp8IEZhcmhhaCAgfCAxOC0yMyB8IDQgICAgICAgICAgICAgICAgICAgICB8IERpc2NvdW50ICAgICAgICAgICAgICB8IEluZmx1ZW5jZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOZXRyYWwgICAgICAgICAgICAgIHwNCnwgRmFycmVsICB8IDE4LTIzIHwgNCAgICAgICAgICAgICAgICAgICAgIHwgRGlzY291bnQgICAgICAgICAgICAgIHwgTWVkaWEgU29zaWFsICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5ldHJhbCAgICAgICAgICAgICAgfA0KfCBBemtpICAgIHwgMTgtMjMgfCAzICAgICAgICAgICAgICAgICAgICAgfCBEaXNjb3VudCAgICAgICAgICAgICAgfCBNZWRpYSBTb3NpYWwgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTmV0cmFsICAgICAgICAgICAgICB8DQp8IFNlbmR5ICAgfCAyNC0yOSB8IDQgICAgICAgICAgICAgICAgICAgICB8IERpc2NvdW50ICAgICAgICAgICAgICB8IFJla29tZW5kYXNpICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBFZmVrdGlmICAgICAgICAgICAgIHwNCnwgWXVsaSAgICB8IDE4LTIzIHwgNSAgICAgICAgICAgICAgICAgICAgIHwgSGFkaWFoICAgICAgICAgICAgICAgIHwgUmVrb21lbmRhc2kgICAgICAgICAgICAgICAgICAgICAgICAgICB8IFRpZGFrIEVmZWt0aWYgICAgICAgfA0KfCBDaGluZHkgIHwgMTgtMjMgfCAzICAgICAgICAgICAgICAgICAgICAgfCBEaXNjb3VudCAgICAgICAgICAgICAgfCBJa2xhbiBPbmxpbmUgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTmV0cmFsICAgICAgICAgICAgICB8DQp8IElzbWkgICAgfCAxOC0yMyB8IDQgICAgICAgICAgICAgICAgICAgICB8IERpc2NvdW50ICAgICAgICAgICAgICB8IE1lZGlhIFNvc2lhbCAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOZXRyYWwgICAgICAgICAgICAgIHwNCnwgQXVsaWEgICB8IDE4LTIzIHwgNSAgICAgICAgICAgICAgICAgICAgIHwgQnVuZGxpbmcgUHJvZHVrICAgICAgIHwgUmVrb21lbmRhc2kgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5ldHJhbCAgICAgICAgICAgICAgfA0KfCBTaXdpICAgIHwgMTgtMjMgfCAzICAgICAgICAgICAgICAgICAgICAgfCBEaXNjb3VudCAgICAgICAgICAgICAgfCBJbmZsdWVuY2VyICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgU2FuZ2F0IEVmZWt0aWYgICAgICB8DQp8IFJhZ2lsICAgfCAxOC0yMyB8IDMgICAgICAgICAgICAgICAgICAgICB8IERpc2NvdW50ICAgICAgICAgICAgICB8IE1lZGlhIFNvc2lhbCAgICAgICAgICAgICAgICAgICAgICAgICAgfCBFZmVrdGlmICAgICAgICAgICAgIHwNCnwgQW5maWVsZCB8IDE4LTIzIHwgNCAgICAgICAgICAgICAgICAgICAgIHwgQnVuZGxpbmcgUHJvZHVrICAgICAgIHwgTWVkaWEgU29zaWFsICAgICAgICAgICAgICAgICAgICAgICAgICB8IEVmZWt0aWYgICAgICAgICAgICAgfA0KfCBQcnlvICAgIHwgMTgtMjMgfCA1ICAgICAgICAgICAgICAgICAgICAgfCBEaXNjb3VudCAgICAgICAgICAgICAgfCBJa2xhbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgRWZla3RpZiAgICAgICAgICAgICB8DQp8IFNoZXJseSAgfCAxOC0yMyB8IDUgICAgICAgICAgICAgICAgICAgICB8IERpc2NvdW50ICAgICAgICAgICAgICB8IE1lZGlhIFNvc2lhbCAgICAgICAgICAgICAgICAgICAgICAgICAgfCBOZXRyYWwgICAgICAgICAgICAgIHwNCnwgUHV0cmkgICB8IDE4LTIzIHwgNSAgICAgICAgICAgICAgICAgICAgIHwgQnVuZGxpbmcgUHJvZHVrICAgICAgIHwgTWVkaWEgU29zaWFsICAgICAgICAgICAgICAgICAgICAgICAgICB8IEVmZWt0aWYgICAgICAgICAgICAgfA0KfCBZb3JkYW4gIHwgMTItMTcgfCAyICAgICAgICAgICAgICAgICAgICAgfCBCdW5kbGluZyBQcm9kdWsgICAgICAgfCBSZWtvbWVuZGFzaSAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgTmV0cmFsICAgICAgICAgICAgICB8DQp8IEVzdGVyICAgfCAxMi0xNyB8IDIgICAgICAgICAgICAgICAgICAgICB8IERpc2NvdW50ICAgICAgICAgICAgICB8IElrbGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBTYW5nYXQgRWZla3RpZiAgICAgIHwNCnwgUmFobWEgICB8IDE4LTIzIHwgNCAgICAgICAgICAgICAgICAgICAgIHwgRGlzY291bnQgICAgICAgICAgICAgIHwgTWVkaWEgU29zaWFsICAgICAgICAgICAgICAgICAgICAgICAgICB8IFNhbmdhdCBFZmVrdGlmICAgICAgfA0KfCBSaW5qYW5pIHwgMTgtMjMgfCA1ICAgICAgICAgICAgICAgICAgICAgfCBEaXNjb3VudCAgICAgICAgICAgICAgfCBJbmZsdWVuY2VyICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgRWZla3RpZiAgICAgICAgICAgICB8DQp8IFNhbHdhICAgfCAxOC0yMyB8IDEgICAgICAgICAgICAgICAgICAgICB8IERpc2NvdW50ICAgICAgICAgICAgICB8IE1lZGlhIFNvc2lhbCAgICAgICAgICAgICAgICAgICAgICAgICAgfCBFZmVrdGlmICAgICAgICAgICAgIHwNCnwgUmVuZHkgICB8IDE4LTIzIHwgMyAgICAgICAgICAgICAgICAgICAgIHwgRGlzY291bnQgICAgICAgICAgICAgIHwgUmVrb21lbmRhc2kgICAgICAgICAgICAgICAgICAgICAgICAgICB8IE5ldHJhbCAgICAgICAgICAgICAgfA0KfCBLYWh6YXlhIHwgMTgtMjMgfCA1ICAgICAgICAgICAgICAgICAgICAgfCBCdW5kbGluZyBQcm9kdWsgICAgICAgfCBNZWRpYSBTb3NpYWwgICAgICAgICAgICAgICAgICAgICAgICAgIHwgU2FuZ2F0IEVmZWt0aWYgICAgICB8DQoNCkRhdGEgbWVudW5qdWtrYW4gbWF5b3JpdGFzIHJlc3BvbmRlbiBiZXJ1c2lhIDE4LTIzIHRhaHVuLCBtZW51bmp1a2thbiBtaW5hdCB0aW5nZ2kgdGVyaGFkYXAgcHJvZHVrIFNraW50aWZpYy4gU2ViYWdpYW4gYmVzYXIgbWVtYmVyaWthbiBuaWxhaSBrZXB1YXNhbiA0IGRhbiA1LCBkZW5nYW4gZGlza29uIHNlYmFnYWkgcHJvbW9zaSBwYWxpbmcgbWVuYXJpaywgZGlpa3V0aSBvbGVoIGJ1bmRsaW5nIGRhbiBjYXNoYmFjay4gTWVkaWEgc29zaWFsIGRhbiByZWtvbWVuZGFzaSBtZW5qYWRpIHN1bWJlciB1dGFtYSBpbmZvcm1hc2kuIE1lc2tpcHVuIGJhbnlhayB5YW5nIG1lbmlsYWkgcHJvbW9zaSBlZmVrdGlmLCBhZGEgYmViZXJhcGEgcGVuaWxhaWFuIG5ldHJhbC4gVGluZ2thdCBrZXB1YXNhbiB5YW5nIHRpbmdnaSBtZW5naW5kaWthc2lrYW4gcHJvZHVrIG1lbWVudWhpIGhhcmFwYW4gcGVuZ2d1bmEsIHNlaGluZ2dhIGZva3VzIHBhZGEgcHJvbW9zaSBkaXNrb24sIGJ1bmRsaW5nLCBkYW4gcGVtYW5mYWF0YW4gbWVkaWEgc29zaWFsIHNhbmdhdCBkaWFuanVya2FuLCBzZXJ0YSBzdXJ2ZWkgbGFuanV0YW4gdW50dWsgdW1wYW4gYmFsaWsgbGViaWggbWVuZGFsYW0uDQoNCioqRGF0YSBLdWFsaXRhdGlmKioNCg0KRGF0YSB5YW5nIGRpc2FqaWthbiBtZXJ1cGFrYW4gZGF0YSBrdWFsaXRhdGlmIHlhbmcgbWVtYmVyaWthbiB3YXdhc2FuIG1lbmRhbGFtIHRlbnRhbmcgc3RyYXRlZ2kgcGVtYXNhcmFuIGRhbiBwZW5pbGFpYW4gaGFyZ2EgcHJvZHVrIGJlcmRhc2Fya2FuIHRhbmdnYXBhbiByZXNwb25kZW4uIE1heW9yaXRhcyByZXNwb25kZW4gYmVydXNpYSBhbnRhcmEgMTggaGluZ2dhIDIzIHRhaHVuLCBkZW5nYW4gYmViZXJhcGEgZGFyaSByZW50YW5nIHVzaWEgMTItMTcgZGFuIDI0LTI5IHRhaHVuLCBtZW5jZXJtaW5rYW4gZm9rdXMgcGVtYXNhcmFuIHBhZGEgc2VnbWVuIG1pbGVuaWFsIGRhbiBnZW5lcmFzaSBaIHlhbmcgYWt0aWYgbWVuZ2d1bmFrYW4gbWVkaWEgc29zaWFsIGRhbiB0ZXJidWthIHRlcmhhZGFwIGlub3Zhc2kgcHJvZHVrLiANCg0KfCBOYW1hICAgIHwgVXNpYSAgfCBTdHJhdGVnaSBQZW1hc2FyYW4gbGFpbiAgICAgfCBIYXJnYSBQcm9kdWsgZGVuZ2FuIGt1YWxpdGFzICAgICAgICB8DQp8Oi0tLS0tLS06fDotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLTp8Oi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tOnwNCnwgQWx5YSAgICB8IDE4LTIzIHwgVGFtYmFoa2FuIERpc2tvbmJ1bmRsaW5nICAgIHwgU2VwYWRhbiwgS2FyZW5hIHNlc3VhaSBrdWFsaXRhcyAgICAgfCANCnwgWmFpbiAgICB8IDE4LTIzIHwgVGlkYWsgQWRhICAgICAgICAgICAgICAgICAgIHwgU2VwYWRhbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCANCnwgSXNuYSAgICB8IDE4LTIzIHwgVGlkYWsgQWRhICAgICAgICAgICAgICAgICAgIHwgU2VwYWRhbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCANCnwgQmFnYXMgICB8IDE4LTIzIHwgVGluZ2thdGthbiBLb2xhYm9yYXNpICAgICAgIHwgU2FuZ2F0IFNlcGFkYW4gICAgICAgICAgICAgICAgICAgICAgfA0KfCBDaGlrYSAgIHwgMTgtMjMgfCBUaWRhayBBZGEgICAgICAgICAgICAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBMdXRoZmkgIHwgMTgtMjMgfCBUYW1iYWhhbiBHaWZ0IEJvbnVzICAgICAgICAgfCBTYW5nYXQgU2VwYWRhbiAgICAgICAgICAgICAgICAgICAgICB8DQp8IFJpemFsICAgfCAzMC00MCB8IFRpZGFrIEFkYSAgICAgICAgICAgICAgICAgICB8IFRpZGFrIFNlcGFkYW4gICAgICAgICAgICAgICAgICAgICAgIHwNCnwgRmlyYSAgICB8IDI0LTI5IHwgVGlkYWsgQWRhICAgICAgICAgICAgICAgICAgIHwgU2VwYWRhbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfA0KfCBGYXJoYWggIHwgMTgtMjMgfCBUaWRhayBBZGEgICAgICAgICAgICAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBGYXJyZWwgIHwgMTgtMjMgfCBUYW1iYWhrYW4gR2lmdCBCb251cyAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBBemtpICAgIHwgMTgtMjMgfCBNZW1idWF0IFdvcmtzaG9wICAgICAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBTZW5keSAgIHwgMjQtMjkgfCBUaWRhayBBZGEgICAgICAgICAgICAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBZdWxpICAgIHwgMTgtMjMgfCBQZXJiYW55YWsgQnJhbmQgQW1iYXNzYWRvciAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBDaGluZHkgIHwgMTgtMjMgfCBUaWRhayBBZGEgICAgICAgICAgICAgICAgICAgfCBUaWRhayBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBJc21pICAgIHwgMTgtMjMgfCBDdWt1cCAgICAgICAgICAgICAgICAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBBdWxpYSAgIHwgMTgtMjMgfCBUaWRhayBBZGEgICAgICAgICAgICAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBTaXdpICAgIHwgMTgtMjMgfCBUaWRhayBBZGEgICAgICAgICAgICAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBSYWdpbCAgIHwgMTgtMjMgfCBUaWRhayBBZGEgICAgICAgICAgICAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBBbmZpZWxkIHwgMTgtMjMgfCBUaWRhayBBZGEgICAgICAgICAgICAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBQcnlvICAgIHwgMTgtMjMgfCBUYW1iYWhrYW4gRGlzY291bnQgICAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBTaGVybHkgIHwgMTgtMjMgfCBUYW1iYWhrYW4gRGlzY291bnQgICAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBQdXRyaSAgIHwgMTgtMjMgfCBUaWRhayBBZGEgICAgICAgICAgICAgICAgICAgfCBTYW5nYXQgU2VwYWRhbiAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBZb3JkYW4gIHwgMTItMTcgfCBUYW1iYWhrYW4gRGlzY291bnQgICAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IA0KfCBFc3RlciAgIHwgMTItMTcgfCBUYW1iYWhrYW4gRGlzY291bnQgICAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8DQp8IFJhaG1hICAgfCAxOC0yMyB8IFRhbWJhaGthbiBEaXNjb3VudCAgICAgICAgICB8IFNlcGFkYW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwNCnwgUmluamFuaSB8IDE4LTIzIHwgVGFtYmFoa2FuIERpc2NvdW50ICAgICAgICAgIHwgU2VwYWRhbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfA0KfCBTYWx3YSAgIHwgMTgtMjMgfCBUYW1iYWhrYW4gRGlzY291bnQgICAgICAgICAgfCBTZXBhZGFuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8DQp8IFJlbmR5ICAgfCAxOC0yMyB8IEtvbGFib3Jhc2kgRGVuZ2FuIEluZmx1ZW5jZXJ8IFNlcGFkYW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgDQp8IEthaHpheWEgfCAxOC0yMyB8IFRhbWJhaGthbiBHaWZ0IEJvbnVzICAgICAgICB8IFNlcGFkYW4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgDQoNClJlc3BvbmRlbiBtZW1iZXJpa2FuIG1hc3VrYW4gdGVudGFuZyBzdHJhdGVnaSBwZW1hc2FyYW4gU2tpbnRpZmljLCB0ZXJtYXN1ayBwZXJtaW50YWFuIGRpc2tvbiBkYW4gYm9udXMgaGFkaWFoLCBzZXJ0YSBrb2xhYm9yYXNpIGRlbmdhbiBpbmZsdWVuY2VyIHVudHVrIG1lbmluZ2thdGthbiBrZXNhZGFyYW4gbWVyZWsuIFBlbmlsYWlhbiBoYXJnYSBiZXJ2YXJpYXNpOyBzZWJhZ2lhbiBiZXNhciBtZXJhc2EgaGFyZ2Egc2VzdWFpIGt1YWxpdGFzLCBzZW1lbnRhcmEgYmViZXJhcGEgbWVyYXNhIHRpZGFrLiBNZXNraXB1biBtYXlvcml0YXMgcHVhcywgYWRhIHNhcmFuIHVudHVrIGxlYmloIHJlc3BvbnNpZiB0ZXJoYWRhcCBrZWJ1dHVoYW4ga29uc3VtZW4uIFNlY2FyYSBrZXNlbHVydWhhbiwgcHJvZHVrIFNraW50aWZpYyBkaXRlcmltYSBiYWlrIGRpIGthbGFuZ2FuIG1pbGVuaWFsLCBkYW4gc3RyYXRlZ2kgcGVtYXNhcmFuIHlhbmcgZGluYW1pcyBzYW5nYXQgcGVudGluZyB1bnR1ayBkYXlhIHRhcmlrIGRpIHBhc2FyLg0KDQojIE1ldG9kZSBQZW5ndW1wdWxhbg0KUGVuZ3VtcHVsa2FuIGRhdGEgaW5pIG1lbmdndW5ha2FuIG1ldG9kZSBzdXJ2ZWksIHlhbmcgZGlwaWxpaCBrYXJlbmEga2VtYW1wdWFubnlhIG1lbmd1bXB1bGthbiBkYXRhIHNlY2FyYSBjZXBhdCBkYW4gZWZpc2llbiBkYXJpIGJlcmJhZ2FpIHJlc3BvbmRlbi4gVHVqdWFuIHBlbmVsaXRpYW4gaW5pIGFkYWxhaCB1bnR1ayBtZW1haGFtaSBwYW5kYW5nYW4ga29uc3VtZW4gdGVya2FpdCBzdHJhdGVnaSBwZW1hc2FyYW4gcHJvZHVrIFNraW50aWZpYy4gDQpTdXJ2ZWkgaW5pIG1lbGliYXRrYW4gMTUgcGVydGFueWFhbiBrdWFudGl0YXRpZiBkYW4gNSBwZXJ0YW55YWFuIGt1YWxpdGF0aWYgeWFuZyBkaXJhbmNhbmcgdW50dWsgbWVuZ2Vrc3Bsb3Jhc2kgcGFuZGFuZ2FuIHBlbmdndW5hIG1lbmdlbmFpIGVmZWt0aXZpdGFzIHByb2R1aywgcHJlZmVyZW5zaSBwcm9tb3NpLCBzZXJ0YSBmYWt0b3ItZmFrdG9yIHlhbmcgbWVtZW5nYXJ1aGkga2VwdXR1c2FuIG1lcmVrYSBkYWxhbSBtZW1iZWxpIHByb2R1ay4gS3Vlc2lvbmVyIGRpc3VzdW4gbWVsYWx1aSBHb29nbGUgRm9ybSB1bnR1ayBtZW1wZXJtdWRhaCBwcm9zZXMgcGVuZ2lzaWFuIGRhbiBkaXNlYmFya2FuIHNlY2FyYSBkYXJpbmcga2VwYWRhIHRlbWFuLCBrZXJhYmF0LCBkYW4gamFyaW5nYW4geWFuZyBsZWJpaCBsdWFzLiBEZW5nYW4gZGVtaWtpYW4sIHJlc3BvbmRlbiBkYXBhdCBtZW5naXNpIGt1ZXNpb25lciBrYXBhbiBwdW4gbWVyZWthIG1lcmFzYSBueWFtYW4sIHlhbmcgbWVtYmFudHUgbWVuaW5na2F0a2FuIHBhcnRpc2lwYXNpLiBIaW5nZ2Egc2FhdCBpbmksIGt1ZXNpb25lciB0ZWxhaCBiZXJoYXNpbCBkaWphd2FiIG9sZWggMzcgcmVzcG9uZGVuLiBQZW5kZWthdGFuIHN1cnZlaSBpbmkgbWVtdW5na2lua2FuIHBlbmVsaXRpIHVudHVrIG1lbmd1bXB1bGthbiBkYXRhIHlhbmcgYmVyYWdhbSwgeWFuZyBrZW11ZGlhbiBkaWFuYWxpc2lzIHVudHVrIG1lbWFoYW1pIHByZWZlcmVuc2kgZGFuIHBlcmlsYWt1IGtvbnN1bWVuIGRhbGFtIGtvbnRla3MgcGVtYXNhcmFuIHByb2R1ayBTa2ludGlmaWMuDQoNCiMgQWxhdCBQZW5ndW1wdWxhbg0KUGVuZ3VtcHVsYW4gZGF0YSBpbmkgbWVuZ2d1bmFrYW4gcGxhdGZvcm0gR29vZ2xlIEZvcm1zIHVudHVrIG1lbmd1bXB1bGthbiBkYXRhIGRhcmkgcmVzcG9uZGVuLg0KaHR0cHM6Ly9kb2NzLmdvb2dsZS5jb20vc3ByZWFkc2hlZXRzL2QvMUJGeUxyZGVLUlVBODQ5d0FMTlJJZlZieDB1NDJRNHJqbkhBa2lwZ1RBLXcvZWRpdD91c3A9c2hhcmluZw0KDQojIFBlbmdhbWJpbGFuIFNhbXBlbA0KUG9wdWxhc2kgeWFuZyBkaWphZGlrYW4gc2FtcGVsIGFkYWxhaCBwZW5nZ3VuYSBwcm9kdWsgU2tpbnRpZmljIGRhbGFtIHJlbnRhbmcgdXNpYSBtdWRhLCBzZW1lbnRhcmEgbWV0b2RlIHBlbmdhbWJpbGFuIHNhbXBlbCBrZW11bmdraW5hbiBiZXNhciBjb252ZW5pZW5jZSBzYW1wbGluZywgeWFuZyB1bXVtIGRpZ3VuYWthbiB1bnR1ayBzdXJ2ZWkgb25saW5lIGRpIG1hbmEgZGF0YSBkaWt1bXB1bGthbiBiZXJkYXNhcmthbiBrZW11ZGFoYW4gYWtzZXMgdGVyaGFkYXAgcmVzcG9uZGVuLg0KDQoqKlJlbGlhYmlsaXRhcyBkYW4gVmFsaWRpdGFzIDoqKg0KS2FtaSBtZWxha3VrYW4gdWppIHJlbGlhYmlsaXRhcyB1bGFuZyBtZW5nZ3VuYWthbiBHb29nbGUgRm9ybSBzZWJhbnlhayBkdWEga2FsaSBkZW5nYW4gbWVsaWJhdGthbiAzNyByZXNwb25kZW4uIEhhc2lsIHlhbmcgZGlwZXJvbGVoIGRhcmkga2VkdWEgcGVuZ3VqaWFuIG1lbnVuanVra2FuIGtvbnNpc3RlbnNpIHlhbmcgdGluZ2dpIGRhbiBzYW1hLCBtZW5lZ2Fza2FuIGtlYW5kYWxhbiBpbnN0cnVtZW4geWFuZyBkaWd1bmFrYW4gZGFsYW0gcGVuZ3VtcHVsYW4gZGF0YSBpbmkuIEhhbCBpbmkgbWVtYmVyaWthbiBrZXlha2luYW4gYmFod2EgZGF0YSB5YW5nIGRpa3VtcHVsa2FuIGRhcGF0IGRpYW5kYWxrYW4gdW50dWsgYW5hbGlzaXMgbGViaWggbGFuanV0Lg0KDQoNCiMgS3VtcHVsa2FuIERhdGENCg0KTWV0b2RlIHBlbmd1bXB1bGFuIGRhdGEgeWFuZyBkaWd1bmFrYW4gYWRhbGFoIHN1cnZlaSwgeWFuZyBkaWxha3VrYW4gbWVsYWx1aSBrdWVzaW9uZXIuIA0KUGVydGFtYS10YW1hLCBtZW5lbnR1a2FuIHRvcGlrIHN0dWRpIGthc3VzIHlhbmcgcmVsZXZhbiwgeWFpdHUgc3RyYXRlZ2kgYmlzbmlzIHlhbmcgYWthbiBkaWFuYWxpc2lzLiBTZXRlbGFoIHRvcGlrIGRpdGV0YXBrYW4sIGt1ZXNpb25lciBkaXJhbmNhbmcgZGVuZ2FuIG1lbmNha3VwIHBlcnRhbnlhYW4tcGVydGFueWFhbiB5YW5nIGRpcGVybHVrYW4gdW50dWsgbWVuZ3VtcHVsa2FuIGRhdGEgeWFuZyBkaWJ1dHVoa2FuLiBQZXJ0YW55YWFuIGRhbGFtIGt1ZXNpb25lciBkaXJhbmNhbmcgZGVuZ2FuIGplbGFzIGRhbiBzaW5na2F0LCBhZ2FyIG11ZGFoIGRpcGFoYW1pIG9sZWggcmVzcG9uZGVuLiBKZW5pcyBwZXJ0YW55YWFuIGRhcGF0IGJlcnVwYSBwaWxpaGFuIGdhbmRhLCBhdGF1IHBlcnRhbnlhYW4gdGVyYnVrYSwgdGVyZ2FudHVuZyBwYWRhIGplbmlzIGluZm9ybWFzaSB5YW5nIGluZ2luIGRpcGVyb2xlaC4gU2V0ZWxhaCBrdWVzaW9uZXIgc2lhcCwga3Vlc2lvbmVyIGRpc2ViYXJrYW4ga2VwYWRhIHJlc3BvbmRlbiB5YW5nIHNlc3VhaS4gUGVueWViYXJhbiBpbmkgZGFwYXQgZGlsYWt1a2FuIHNlY2FyYSBsYW5nc3VuZywgbWVsYWx1aSBlbWFpbCwgYXRhdSBtZWxhbHVpIHBsYXRmb3JtIG9ubGluZS4gUGVudGluZyB1bnR1ayBtZW1hc3Rpa2FuIGJhaHdhIHJlc3BvbmRlbiBtZW1haGFtaSB0dWp1YW4gc3VydmVpIGRhbiBiYWdhaW1hbmEgZGF0YSB5YW5nIG1lcmVrYSBiZXJpa2FuIGFrYW4gZGlndW5ha2FuLg0KU2V0ZWxhaCBwcm9zZXMgcGVuZ3VtcHVsYW4gZGF0YSBzZWxlc2FpLCBpbmZvcm1hc2kgeWFuZyB0ZXJrdW1wdWwgYWthbiBkaWFuYWxpc2lzIHVudHVrIG1lbmFyaWsga2VzaW1wdWxhbiB5YW5nIGRhcGF0IG1lbmR1a3VuZyBzdHJhdGVnaSBiaXNuaXMgeWFuZyB0ZWxhaCBkaXRldGFwa2FuLiBEZW5nYW4gbWVuZ2d1bmFrYW4gbWV0b2RlIHN1cnZlaSBpbmksIGRpaGFyYXBrYW4gZGFwYXQgbWVtcGVyb2xlaCB3YXdhc2FuIGJlcmhhcmdhIHVudHVrIHBlbmdhbWJpbGFuIGtlcHV0dXNhbiBiaXNuaXMgeWFuZyBsZWJpaCBiYWlrLg0KDQojIEtlbG9sYSBEYXRhDQoNCkNhcmEgbWVueWltcGFuIGRhdGEgYWdhciBhbWFuIGRhbiB0ZXJvcmdhbmlzaXIgeWFpdHUuIFBlcnRhbWEsIGd1bmFrYW4gZm9ybWF0IHBlbnlpbXBhbmFuIHlhbmcgbXVkYWggZGliYWNhIGRhbiBkaW9sYWgsIHNlcGVydGkgQ1NWIGF0YXUgRXhjZWwsIGFnYXIgaW5mb3JtYXNpIGRhcGF0IGRpYWtzZXMgZGVuZ2FuIGNlcGF0IGRhbiBrb25zaXN0ZW4uIFNlbGFuanV0bnlhLCBwYXN0aWthbiBzZXRpYXAga29sb20gZGFsYW0gZGF0YXNldCBqZWxhcyBkYW4gZGliZXJpIG5hbWEgc2VzdWFpIGRlbmdhbiBpc2kgZGF0YSwgc2VwZXJ0aSAiTmFtYSIsICJVc2lhIiwgZGFuICJLZXB1YXNhbiIsIHVudHVrIG1lbXVkYWhrYW4gcGVuY2FyaWFuIGluZm9ybWFzaS4gU2VsYWluIGl0dSwgbGFrdWthbiBiYWNrdXAgZGF0YSBzZWNhcmEgYmVya2FsYSBzZXRlbGFoIG1lbGFrdWthbiBwZXJ1YmFoYW4gYXRhdSBwZW1iYXJ1YW4gdW50dWsgbWVuY2VnYWgga2VoaWxhbmdhbiBkYXRhIGFraWJhdCBrZXJ1c2FrYW4gZmlsZSBhdGF1IGtlc2FsYWhhbi4gRGVuZ2FuIGxhbmdrYWgtbGFuZ2thaCBpbmksIGRhdGEgZGFwYXQgZGlzaW1wYW4gZGVuZ2FuIGFtYW4gZGFuIHRlcm9yZ2FuaXNpciwgbWVtdWRhaGthbiBwcm9zZXMgYW5hbGlzaXMgbWF1cHVuIHByb3NlcyBwZW1lbGloYXJhYW4gZGF0YQ0KDQojIEFuYWxpc2lzIERhdGENCg0KKipBbmFsaXNpcyBLdWFsaXRhdGlmIFN0cmF0ZWdpIFBlbWFzYXJhbiBQcm9kdWsgU2tpbnRpZmljKioNCg0KKioxLiBQZXJzZXBzaSBLdWFsaXRhcyBQcm9kdWsqKg0KDQo8ZGl2IGNsYXNzPSJmbGV4LWNvbnRhaW5lciI+DQogPGltZyBjbGFzcz0icGljdCIgc3JjPSJpbWcvMy5qcGciIGFsdD0iR2FtYmFyIj4NCjwvZGl2Pg0KDQpIYXNpbCBzdXJ2ZWkgbWVudW5qdWtrYW4gYmFod2EgOTYsOSUgcmVzcG9uZGVuIG1lcmFzYSBiYWh3YSBrdWFsaXRhcyBwcm9kdWsgU2tpbnRpZmljIGxlYmloIGJhaWsgZGliYW5kaW5na2FuIGRlbmdhbiBwcm9kdWsgc2VqZW5pcy4gSW5pIG1lbmNlcm1pbmthbiBiYWh3YSBwcm9kdWsgU2tpbnRpZmljIGJlcmhhc2lsIG1lbWJhbmd1biBjaXRyYSBwb3NpdGlmIGRpIGthbGFuZ2FuIGtvbnN1bWVuLCB5YW5nIG1lcnVwYWthbiBhc2V0IHBlbnRpbmcgZGFsYW0gbWVtYmFuZ3VuIGxveWFsaXRhcyBtZXJlay4gVGluZ2dpbnlhIGtlcHVhc2FuICg4Nyw5JSkganVnYSBtZW51bmp1a2thbiBiYWh3YSBrb25zdW1lbiBtZXJhc2EgcHJvZHVrIG1lbWVudWhpIGF0YXUgYmFoa2FuIG1lbGViaWhpIGhhcmFwYW4gbWVyZWthLg0KDQoqKjIuIFBlbmdhcnVoIE1lZGlhIFNvc2lhbCoqDQoNCjxkaXYgY2xhc3M9ImZsZXgtY29udGFpbmVyIj4NCiAgPGltZyBjbGFzcz0icGljdCIgc3JjPSJpbWcvMi5qcGciIGFsdD0iR2FtYmFyIj4NCjwvZGl2Pg0KICANCkRhdGEgbWVudW5qdWtrYW4gYmFod2EgNjIsMiUgcmVzcG9uZGVuIHBlcnRhbWEga2FsaSBtZW5nZXRhaHVpIHByb2R1ayBTa2ludGlmaWMgbWVsYWx1aSBtZWRpYSBzb3NpYWwsIHNlcGVydGkgVGlrVG9rIGRhbiBJbnN0YWdyYW0uIEluaSBtZW5hbmRha2FuIGJhaHdhIHBlcnVzYWhhYW4gdGVsYWggbWVtYW5mYWF0a2FuIHBsYXRmb3JtLXBsYXRmb3JtIGluaSBkZW5nYW4gYmFpayB1bnR1ayBtZW5qYW5na2F1IHRhcmdldCBhdWRpZW5zIG1pbGVuaWFsLiBLZWJlcmhhc2lsYW4gaW5pIG1lbnVuanVra2FuIGJhaHdhIHN0cmF0ZWdpIHBlbWFzYXJhbiBiZXJiYXNpcyBtZWRpYSBzb3NpYWwgdGlkYWsgaGFueWEgcmVsZXZhbiwgdGV0YXBpIGp1Z2EgZWZla3RpZiBkYWxhbSBtZW5hcmlrIHBlcmhhdGlhbiBkYW4gbWVtYmFuZ3VuIGtlc2FkYXJhbiBtZXJlay4NCg0KKiozLiBQZXJhbiBEaXNrb24gZGFsYW0gS2VwdXR1c2FuIFBlbWJlbGlhbioqDQoNCjxkaXYgY2xhc3M9ImZsZXgtY29udGFpbmVyIj4NCiAgPGltZyBjbGFzcz0icGljdCIgc3JjPSJpbWcvMS5qcGciIGFsdD0iR2FtYmFyIj4NCjwvZGl2Pg0KDQpEaXNrb24gYmVycGVyYW4gYmVzYXIgZGFsYW0ga2VwdXR1c2FuIHBlbWJlbGlhbiwgZGVuZ2FuIDczJSByZXNwb25kZW4gbWVuZ2FrdWkgYmFod2EgdGF3YXJhbiBkaXNrb24gbWVuamFkaSBmYWt0b3IgdXRhbWEuIE1lc2tpcHVuIGRpc2tvbiBkYXBhdCBtZW5pbmdrYXRrYW4gcGVuanVhbGFuIGphbmdrYSBwZW5kZWssIGtldGVyZ2FudHVuZ2FuIHBhZGEgc3RyYXRlZ2kgaW5pIGJpc2EgbWVuZ2FyYWggcGFkYSBla3NwZWt0YXNpIGhhcmdhIHJlbmRhaCBkaSBtYXRhIGtvbnN1bWVuLiBPbGVoIGthcmVuYSBpdHUsIHBlbnRpbmcgYmFnaSBTa2ludGlmaWMgdW50dWsgbWVueWVpbWJhbmdrYW4gYW50YXJhIHByb21vc2kgYmVyYmFzaXMgZGlza29uIGRhbiBuaWxhaSB5YW5nIGRpdGF3YXJrYW4gb2xlaCBwcm9kdWsuIA0KDQoqKjQuIEt1YWxpdGFzIGRhbiBLZW1hc2FubnlhKioNCg0KPGRpdiBjbGFzcz0iZmxleC1jb250YWluZXIiPg0KICA8aW1nIGNsYXNzPSJwaWN0IiBzcmM9ImltZy80LmpwZyIgYWx0PSJHYW1iYXIiPg0KPC9kaXY+DQoNClJlc3BvbmRlbiBtZW1iZXJpa2FuIHVtcGFuIGJhbGlrIHBvc2l0aWYgdGVudGFuZyBrZW1hc2FuIHByb2R1aywgeWFuZyBkaWFuZ2dhcCBzZXN1YWkgZGVuZ2FuIGt1YWxpdGFzIGRhbiBoYXJnYS4gS2VtYXNhbiB5YW5nIG1lbmFyaWsgZGFwYXQgbWVuaW5na2F0a2FuIGRheWEgdGFyaWsgdmlzdWFsIHByb2R1ayBkYW4gbWVtYmFudHUgbWVuY2lwdGFrYW4gcGVuZ2FsYW1hbiBwb3NpdGlmIGJhZ2kga29uc3VtZW4uIEhhbCBpbmkgbWVudW5qdWtrYW4gYmFod2EgU2tpbnRpZmljIHRlbGFoIGJlcmhhc2lsIG1lbmdpbnRlZ3Jhc2lrYW4gYXNwZWsgZXN0ZXRpa2EgZGFsYW0gc3RyYXRlZ2kgcGVtYXNhcmFubnlhLg0KDQoqKjUuIFBlbmdhcnVoIFJla29tZW5kYXNpIFRlbWFuIGRhbiBLZWx1YXJnYSoqDQoNClNlYmFueWFrIDIxLDIlIHJlc3BvbmRlbiBtZW5nZXRhaHVpIHByb2R1ayBtZWxhbHVpIHJla29tZW5kYXNpIHRlbWFuIGF0YXUga2VsdWFyZ2EuIEluaSBtZW51bmp1a2thbiBiYWh3YSB3b3JkLW9mLW1vdXRoIG1lbWlsaWtpIHBlcmFuIHBlbnRpbmcgZGFsYW0gc3RyYXRlZ2kgcGVtYXNhcmFuIFNraW50aWZpYy4gTWVtcGVya3VhdCBodWJ1bmdhbiBkZW5nYW4ga29uc3VtZW4geWFuZyBzdWRhaCBhZGEgZGFwYXQgbWVuZG9yb25nIG1lcmVrYSB1bnR1ayBtZXJla29tZW5kYXNpa2FuIHByb2R1ayBrZXBhZGEgb3JhbmcgbGFpbiwgc2VoaW5nZ2EgbWVtcGVybHVhcyBqYW5na2F1YW4gdGFucGEgYmlheWEgaWtsYW4gdGFtYmFoYW4uDQoNCioqNi4gVGFuZ2dhcGFuIFVtdW0gVGVyaGFkYXAgU3RyYXRlZ2kgUGVtYXNhcmFuKioNCk1heW9yaXRhcyByZXNwb25kZW4gbWVtYmVyaWthbiB0YW5nZ2FwYW4gcG9zaXRpZiB0ZXJoYWRhcCBzdHJhdGVnaSBwZW1hc2FyYW4gU2tpbnRpZmljLCBtZW5nYW5nZ2FwbnlhIGVmZWt0aWYgZGFuIHN1ZGFoIGJlcmphbGFuIGRlbmdhbiBiYWlrLiBJbmkgbWVudW5qdWtrYW4gYmFod2EgcGVydXNhaGFhbiB0ZWxhaCBtZW1haGFtaSBkYW4gbWVtZW51aGkga2VidXR1aGFuIHNlcnRhIHByZWZlcmVuc2kgcGFzYXIgbWlsZW5pYWwuIFJlc3BvbnMgcG9zaXRpZiBpbmkgYmlzYSBtZW5qYWRpIGZvbmRhc2kgdW50dWsgcGVuZ2VtYmFuZ2FuIHN0cmF0ZWdpIHBlbWFzYXJhbiBsZWJpaCBsYW5qdXQgZGFuIGlub3Zhc2kgcHJvZHVrIGRpIG1hc2EgZGVwYW4uDQoNCiMgTGFwb3JrYW4gSGFzaWwNCg0KVHVnYXMgcGVuZ3VtcHVsYW4gZGF0YSBpbmkgYmVydHVqdWFuIHVudHVrIG1lbmdhbmFsaXNpcyBzdHJhdGVnaSBwZW1hc2FyYW4gcHJvZHVrIFNraW50aWZpYywgdGVydXRhbWEgZGFsYW0gaGFsIGJhZ2FpbWFuYSBwcm9kdWsgdGVyc2VidXQgbWVuYXJpayBtaW5hdCBrb25zdW1lbiwga2h1c3VzbnlhIG1haGFzaXN3YSBJbnN0aXR1dCBUZWtub2xvZ2kgU2FpbnMgQmFuZHVuZy4gRGF0YSBkaWt1bXB1bGthbiBtZWxhbHVpIGt1ZXNpb25lciB5YW5nIGRpc2ViYXJrYW4gc2VjYXJhIG9ubGluZSwgZGFuIGhhc2lsbnlhIGRpYW5hbGlzaXMgdW50dWsgbWVuZGFwYXRrYW4gd2F3YXNhbiB0ZXJrYWl0IGVmZWt0aXZpdGFzIHN0cmF0ZWdpIHBlbWFzYXJhbi4NCg0KKipUZW11YW4gVXRhbWE6KioNCg0KMS4gTWF5b3JpdGFzIHJlc3BvbmRlbiAodXNpYSAxOC0yMyB0YWh1bikgbWVtYmVyaWthbiBwZW5pbGFpYW4gcG9zaXRpZiB0ZXJoYWRhcCBrdWFsaXRhcyBkYW4gZWZla3Rpdml0YXMgcHJvZHVrIFNraW50aWZpYywgZGVuZ2FuIHRpbmdrYXQga2VwdWFzYW4gbWVuY2FwYWkgODcsOSUuDQoNCjIuIE1lZGlhIHNvc2lhbCBtZW5qYWRpIHN1bWJlciB1dGFtYSBpbmZvcm1hc2kgdGVudGFuZyBwcm9kdWsgKDU3LDYlKSwgZGlpa3V0aSBvbGVoIHJla29tZW5kYXNpIHRlbWFuIGRhbiBrZWx1YXJnYS4NCg0KMy4gRmFrdG9yIHRlcmJlc2FyIHlhbmcgbWVtcGVuZ2FydWhpIGtlcHV0dXNhbiBwZW1iZWxpYW4gYWRhbGFoIGt1YWxpdGFzIHByb2R1ayBkYW4gZGlza29uLCBkZW5nYW4gcmVzcG9uZGVuIG1lbmdhbmdnYXAgaGFyZ2EgcHJvZHVrIHNlcGFkYW4gZGVuZ2FuIGt1YWxpdGFzLg0KDQo0LiBLb2xhYm9yYXNpIGRlbmdhbiBpbmZsdWVuY2VyIGRhbiBwZW5nZ3VuYWFuIGRpc2tvbiBzZWJhZ2FpIHN0cmF0ZWdpIHByb21vc2kgdGVyYnVrdGkgZWZla3RpZi4NCg0KDQojIEV2YWx1YXNpIFByb3Nlcw0KDQpFdmFsdWFzaSB0ZXJoYWRhcCBwcm9zZXMgcGVuZ3VtcHVsYW4gZGF0YSBtZW51bmp1a2thbiBiYWh3YSBrdWVzaW9uZXIgeWFuZyBkaXJhbmNhbmcgamVsYXMgZGFuIHNpbmdrYXQgbWVuaW5na2F0a2FuIGFrdXJhc2ksIG5hbXVuIHBlcmx1IGRpdGFtYmFoa2FuIHBlcnRhbnlhYW4gbWVuZGFsYW0gYXRhdSBza2FsYSBMaWtlcnQuIE1ldG9kZSBwZW55ZWJhcmFuIG9ubGluZSBlZmlzaWVuLCBuYW11biBiZXJpc2lrbyBkaWFiYWlrYW4gYXRhdSBqYXdhYmFuIGFzYWwsIHNlaGluZ2dhIHBlcmx1IGluc2VudGlmIGRhbiB0aW5kYWsgbGFuanV0LiBVa3VyYW4gc2FtcGVsIDMwIHJlc3BvbmRlbiBtZW1iZXJpa2FuIGdhbWJhcmFuIHVtdW0sIG5hbXVuIHBlcmx1IGRpdGluZ2thdGthbiB1bnR1ayB2YWxpZGl0YXMgeWFuZyBsZWJpaCBiYWlrLiBUaW5na2F0IGtlcHVhc2FuIHlhbmcgdGluZ2dpICg4Nyw5JSkgcG9zaXRpZiwgbmFtdW4gcGVybHUgZGl0YW1iYWhrYW4gcGVydGFueWFhbiB0ZXJidWthIHVudHVrIGtyaXRpayBrb25zdHJ1a3RpZi4gS2V0ZXJnYW50dW5nYW4gcGFkYSBtZWRpYSBzb3NpYWwgc2ViYWdhaSBzdW1iZXIgaW5mb3JtYXNpIGVmZWt0aWYgdW50dWsgYXVkaWVucyBtdWRhLCBuYW11biBwZXJsdSBkaXZlcnNpZmlrYXNpIHNhbHVyYW4ga29tdW5pa2FzaSwgdGVybWFzdWsgZW1haWwgZGFuIGthbXBhbnllIG9mZmxpbmUuIERlbmdhbiBwZXJiYWlrYW4gaW5pLCBwZW5ndW1wdWxhbiBkYXRhIGFrYW4gbGViaWggb3B0aW1hbCBkYW4gbWVuZHVrdW5nIHBlbmdhbWJpbGFuIGtlcHV0dXNhbiB5YW5nIGxlYmloIGJhaWsuDQoNCiMgUmVmZXJlbnNpIA0KDQpZdWxpYSwgRC4sICYgV2lib3dvLCBBLiAoMjAyMSkuICpBbmFsaXNpcyBkYW1wYWsgcHJvbW9zaSB0ZXJoYWRhcCBrZXB1dHVzYW4gcGVtYmVsaWFuIHByb2R1ayBTa2ludGlmaWMuICpKdXJuYWwgUmlzZXQgQmlzbmlzIGRhbiBUZWtub2xvZ2ksIDQoMiksIDEtMTIuIERpYWtzZXMgcGFkYSAxOSBPa3RvYmVyIDIwMjMsIGRhcmkgaHR0cHM6Ly9qb3VybmFsLmxzcHIuZWR1L2luZGV4LnBocC9qcmJ0L2FydGljbGUvZG93bmxvYWQvNTMxLzI0OC8yMDM4DQoNClByYWJvd28sIEguICgyMDIxKS4gKlN0cmF0ZWdpIHBlbWFzYXJhbiBkaWdpdGFsIHVudHVrIG1lbmluZ2thdGthbiBicmFuZCBhd2FyZW5lc3MuICpKdXJuYWwgSWxtdSBLb211bmlrYXNpIGRhbiBNYW5hamVtZW4sIDYoMSksIDQ1LTYwLiBEaWFrc2VzIHBhZGEgMTkgT2t0b2JlciAyMDIzLCBkYXJpIGh0dHBzOi8vanVybmFsLml0YnNlbWFyYW5nLmFjLmlkL2luZGV4LnBocC9KSUtNQS9hcnRpY2xlL3ZpZXcvMTU1OS8xNDQyDQoNCkJpdGhvdXIgUHJvZHVjdGlvbi4gKDIwMjMpLiAqU3RyYXRlZ2kgbWFya2V0aW5nIFNraW50aWZpYzogTWVuYXJpayBwZXJoYXRpYW4ga29uc3VtZW4gZGkgZXJhIGRpZ2l0YWwqLiBEaWFrc2VzIHBhZGEgMTkgT2t0b2JlciAyMDIzLCBkYXJpIGh0dHBzOi8vYml0aG91cnByb2R1Y3Rpb24uY29tL2Jsb2cvc3RyYXRlZ2ktbWFya2V0aW5nLXNraW50aWZpYw0KDQpUYW5qdW5nLCBSLiAoMjAyMykuICpBbmFsaXNpcyBicmFuZCBTa2ludGlmaWMgZGFsYW0gaW5kdXN0cmkga29zbWV0aWsqLiBEaWFrc2VzIHBhZGEgMTkgT2t0b2JlciAyMDIzLCBkYXJpIGh0dHBzOi8vaWQuc2NyaWJkLmNvbS9kb2N1bWVudC82OTE2Njc4NzIvQW5hbGlzaXMtQnJhbmQtU2tpbnRpZmlj