
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.
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.
| 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.
| 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.
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.
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.
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.
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
Analisis Data
Analisis Kualitatif Strategi Pemasaran Produk
Skintific
1. Persepsi Kualitas Produk
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
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
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
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.
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:
Mayoritas responden (usia 18-23 tahun) memberikan penilaian
positif terhadap kualitas dan efektivitas produk Skintific, dengan
tingkat kepuasan mencapai 87,9%.
Media sosial menjadi sumber utama informasi tentang produk
(57,6%), diikuti oleh rekomendasi teman dan keluarga.
Faktor terbesar yang mempengaruhi keputusan pembelian adalah
kualitas produk dan diskon, dengan responden menganggap harga produk
sepadan dengan kualitas.
Kolaborasi dengan influencer dan penggunaan diskon sebagai
strategi promosi terbukti efektif.
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.
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