Tugas Week 10 ~ Essential of Probability

Logo


Pendahuluan

Probabilitas adalah pilar dasar dari penalaran statistik, yang menawarkan kerangka kerja yang sistematis dan koheren untuk memahami ketidakpastian serta membimbing pengambilan keputusan yang tepat. Probabilitas menggunakan ukuran untuk menghitung seberapa besar peluang. Penguasaan konsep probabilitas sangat penting untuk analisis data yang efektif, penelitian ilmiah, dan praktik berbasis bukti.

1 Fundamental Concept

konsep dasar probabilty

  • Probability : peluang terjadinya suatu peristiwa

  • Rumus Probabilitas = Jumlah kejadian yang diinginkan Jumlah kemungkinan keseluruhan

  • Contohnya, peluang muncul “kepala” saat melempar koin adalah 1/2 = 0.5 = 50%.

Ruang Sampel

  • Ruang sampel adalah kumpulan seluruh kemungkinan hasil dari suatu eksperimen.

  • Contoh melempar koin dua kali: ruang sampelnya adalah HH, HT, TH, dan TT (total 4 kemungkinan).

  • Probabilitas masing-masing hasil dihitung dengan mengalikan peluang tiap kejadian, karena setiap lemparan bersifat independen.

Diagram Ruang Sampel

  • Diagram percabangan (seperti pohon) memudahkan melihat semua kemungkinan dan menghitung peluang masing-masing.

Aturan Probabilitas

  • Probabilitas selalu bernilai antara 0 dan 1 (termasuk kedua nilai).

  • Jika dijumlahkan semua probabilitas dari setiap hasil di ruang sampel, hasilnya pasti 1.

Aturan Komplemen

  • Aturan Komplemen menyatakan bahwa: P ( A ) = 1 P ( A )

  • Artinya, peluang sebuah kejadian tidak terjadi sama dengan 1 dikurangi peluang kejadian itu terjadi.

  • Contoh Penerapan Aturan Komplemen

Peluang tidak mendapatkan dua tail saat melempar dua koin adalah 1 P ( dua tail ) = 1 0.25 = 0.75

Bisa juga dengan menjumlahkan peluang dari semua hasil selain “dua tail”.

2 Independent and Dependent

Kejadian Independen

  • Kejadian dikatakan independen jika terjadinya salah satu tidak mempengaruhi peluang kejadian lainnya.

  • Contoh: Melempar dadu dan melempar koin, hasil dadu tidak memengaruhi hasil koin.

  • Rumus P ( A dan B ) = P ( A ) × P ( B )

  • Contoh soal: Peluang mendapat angka 5 pada dadu (1/6) dan head pada koin (1/2), maka peluang kejadian keduanya:

P ( 5 dan head ) = 1 6 × 1 2 = 1 12

Kejadian Dependen

  • Kejadian dikatakan dependen jika terjadinya satu kejadian memengaruhi peluang kejadian berikutnya.

  • Contoh: Mengambil dua kelereng dari kotak (tanpa mengembalikan ke tempat semula).

  • Penjelasan soal: Kotak berisi 7 kelereng hijau dan 3 biru. Peluang mengambil hijau lalu biru “tanpa pengembalian”:

    • peluang ambil hijau pertama 7/10
    • Setelah hijau diambil, peluang ambil biru 3/9=1/3
    • total peluang keduanya : 7 10 × 1 3 = 7 30

Kesimpulan

  • Pada kejadian independen, peluang dua kejadian sekaligus cukup dikalikan.

  • Pada kejadian dependen, peluang kejadian kedua dipengaruhi hasil dari kejadian pertama sehingga perhitungannya berubah.

3 Union of events

Sample Space (Ruang Sampel)

  • Ruang sampel adalah himpunan seluruh kemungkinan hasil dari sebuah eksperimen.

  • Contoh: Melempar satu dadu menghasilkan 6 hasil (1–6). Melempar dua dadu menghasilkan 36 kemungkinan hasil (6 × 6).

Simple Probability (Peluang Sederhana)

  • Peluang suatu kejadian = jumlah hasil yang diinginkan / total hasil dalam ruang sampel.

  • Contoh: Peluang mendapatkan 2 angka empat saat melempar dua dadu =

1 36

Intersection & Union of Events:

  • Intersection (Irisan): Peluang dua kejadian sekaligus, misalnya dua angka genap dan setidaknya satu angka dua = 5/36.

  • Union (Gabungan/Atau): Peluang salah satu dari dua kejadian (atau keduanya) terjadi.

Rumus:

P ( A B ) = P ( A ) + P ( B ) P ( A B )

Contoh Soal Union

  • “Peluang mendapatkan dua angka genap atau setidaknya satu angka dua” dihitung dengan rumus union:

Dua angka genap: 9/36

Setidaknya satu angka dua: 11/36

Keduanya: 5/36 Jadi,

P ( A B ) = 9 36 + 11 36 5 36 = 15 36 = 0,4167

4 Exclusive and Exhaustive

Mutually exclusive events

  • Dua peristiwa disebut saling lepas jika tidak mungkin terjadi secara bersamaan, artinya irisan kedua peristiwa sama dengan himpunan kosong ( E 1 E 2 = )

  • Contoh: pada pelemparan dadu, peristiwa “muncul bilangan genap” dan “muncul bilangan ganjil” tidak bisa terjadi sekaligus, sehingga keduanya saling lepas.

Exhaustive events

  • Beberapa peristiwa disebut exhaustif jika gabungan (union) semua peristiwa tersebut menutupi seluruh ruang sampel, yaitu ( E 1 E 2 = S )

Contoh: pada dadu dengan ruang sampel (1,2,3,4,5,6), jika gabungan beberapa peristiwa menghasilkan semua enam outcome tersebut, maka peristiwa-peristiwa itu bersifat exhaustif.

Union dan kombinasi sifat

  • Peristiwa bisa bersifat saling lepas sekaligus exhaustif jika:
  1. tidak saling tumpang tindih,
  2. gabungannya menutupi seluruh ruang sampel.

5 Binomial Experiment

Konsep percobaan binomial

  • Percobaan binomial berkaitan dengan situasi “sukses atau gagal” yang diulang beberapa kali, misalnya lempar koin atau mengambil kelereng tertentu dari kotak.

  • Ditekankan arti awalan “bi” (dua) yaitu hanya ada dua kemungkinan hasil di setiap percobaan: sukses atau gagal.

Empat syarat binomial

  • Syaratnya: (1) jumlah percobaan n harus tetap, (2) tiap percobaan hanya punya dua hasil (sukses/gagal), (3) peluang sukses tetap untuk setiap percobaan, dan (4) tiap percobaan saling independen.

  • Jika keempat syarat ini terpenuhi, situasi tersebut disebut percobaan binomial dan boleh dianalisis dengan rumus binomial.

Contoh lempar koin

  • Contoh pertama: lempar koin biasa 3 kali dan cari peluang mendapatkan tepat 1 kepala; guru menuliskan semua urutan yang mungkin menghasilkan tepat 1 kepala lalu menjumlahkan peluang masing-masing sehingga diperoleh peluang total 0,375.

  • Contoh ini juga dicek satu per satu syarat binomialnya: n=3 tetap, dua hasil (kepala/bukan kepala), peluang kepala 0,5 pada setiap lemparan, dan setiap lemparan saling bebas, sehingga ini adalah percobaan binomial.

Rumus distribusi binomial

  • Di akhir, diperkenalkan rumus distribusi binomial: peluang mendapatkan k sukses dari n percobaan bernilai kombinasi “ n choose k” dikali p k ( 1 p ) n k , di mana p adalah peluang sukses.

  • Contoh kelereng tadi kemudian diselesaikan ulang dengan rumus ini (menggunakan n = 5 , k = 2 , p = 0,2 ) dan hasilnya kembali 0,2048, sehingga rumus diperlihatkan sebagai “jalan pintas” yang setara dengan penjumlahan semua urutan

6 Binomial Distributif

Mengingat kembali rumus binomial

  • Di awal, video mengulas rumus binomial dengan contoh pelemparan koin dua kali, mendefinisikan k sebagai banyaknya sukses, n sebagai banyaknya percobaan, dan p sebagai peluang sukses setiap percobaan. Dengan memasukkan nilai n=2 dan p=0,5, diperoleh peluang untuk k=0,1,2 yang kemudian digunakan sebagai dasar visualisasi.

Membuat grafik distribusi binomial

  • Nilai peluang untuk tiap k digambarkan sebagai diagram batang, dengan k di sumbu-x dan P ( X = k ) di sumbu-y sehingga tampak tinggi batang untuk 0, 1, dan 2 sukses. Dari grafik ini terlihat bagaimana distribusi peluang tersebar dan mana hasil yang paling mungkin terjadi.

Parameter mean, varians, dan simpangan baku

  • parameter distribusi binomial: mean μ=np, varians np(1−p), dan simpangan baku sebagai akar dari varians. Ditunjukkan bahwa ketika n membesar (misalnya n=10), bentuk distribusi binomial mulai mendekati distribusi normal dengan pusat di sekitar μ.

Pengaruh nilai p terhadap bentuk

  • mengubah p mengubah bentuk distribusi: jika p=0,5, distribusi cenderung simetris, sedangkan jika p sangat kecil (misalnya 0,1) distribusi condong ke kanan dan jika p besar (misalnya 0,8) distribusi condong ke kiri. Data cenderung mengelompok di sekitar mean np, dan penyimpangan p dari 0,5 membuat bentuk distribusi menjadi miring (skewed).

Kondisi pendekatan normal

  • kapan distribusi binomial boleh didekati dengan distribusi normal, yaitu jika np≥10 dan n(1−p)≥10 (atau kadang menggunakan batas 5, tergantung dosen/buku). Ditekankan bahwa untuk distribusi yang sudah simetris, n tidak perlu terlalu besar untuk mendekati normal, sedangkan untuk distribusi yang miring perlu n jauh lebih besar.

Reference

https://bookdown.org/dsciencelabs/intro_statistics/06-Essentials_of_Probability.html

```

LS0tDQp0aXRsZTogIlR1Z2FzIFdlZWsgMTAgfiBFc3NlbnRpYWwgb2YgUHJvYmFiaWxpdHkiDQphdXRob3I6ICJTeWFmaWYgQXptaSBMb250b2giDQpkYXRlOiAiMjAyNS0xMS0yNSINCm91dHB1dDogICAgICAgICAgICAgICAgICAgICAgICAgIyBPdXRwdXQgc2VjdGlvbiBkZWZpbmVzIHRoZSBmb3JtYXQgYW5kIGxheW91dCANCiAgcm1kZm9ybWF0czo6cmVhZHRoZWRvd246ICAgICAgIyBodHRwczovL2dpdGh1Yi5jb20vanViYS9ybWRmb3JtYXRzDQogICAgc2VsZl9jb250YWluZWQ6IHRydWUgICAgICAgICMgRW1iZWRzIGFsbCByZXNvdXJjZXMgKENTUywgSlMsIGltYWdlcykgDQogICAgdGh1bWJuYWlsczogdHJ1ZSAgICAgICAgICAgICMgRGlzcGxheXMgaW1hZ2UgdGh1bWJuYWlscyBpbiB0aGUgZG9jDQogICAgbGlnaHRib3g6IHRydWUgICAgICAgICAgICAgICMgRW5hYmxlcyBjbGljayB0byBlbmxhcmdlIGltYWdlcw0KICAgIGdhbGxlcnk6IHRydWUgICAgICAgICAgICAgICAjIEdyb3VwcyBpbWFnZXMgaW50byBhbiBpbnRlcmFjdGl2ZSBnYWxsZXJ5DQogICAgbnVtYmVyX3NlY3Rpb25zOiB0cnVlICAgICAgICMgQXV0b21hdGljYWxseSBudW1iZXJzIGFsbCBzZWN0aW9ucw0KICAgIGxpYl9kaXI6IGxpYnMgICAgICAgICAgICAgICAjIERpcmVjdG9yeSB3aGVyZSBKYXZhU2NyaXB0L0NTUyBsaWJyYXJpZXMNCiAgICBkZl9wcmludDogInBhZ2VkIiAgICAgICAgICAgIyBEaXNwbGF5cyBkYXRhIGZyYW1lcyBhcyBpbnRlcmFjdGl2ZSBwYWdlZCANCiAgICBjb2RlX2ZvbGRpbmc6ICJzaG93IiAgICAgICAgIyBBbGxvd3MgZm9sZGluZy91bmZvbGRpbmcgUiBjb2RlIGJsb2NrcyANCiAgICBjb2RlX2Rvd25sb2FkOiB5ZXMgICAgICAgICAgIyBBZGRzIGEgYnV0dG9uIHRvIGRvd25sb2FkIGFsbCBSIGNvZGUNCi0tLQ0KDQo8aW1nIGlkPSJGb3RvIg0KICAgICBzcmM9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9TeWFmaWZhem1pL3NlbWFuZ2F0L21haW4vU3lhZmlmYXptaS5qcGVnIg0KICAgICBhbHQ9IkxvZ28iDQogICAgIHN0eWxlPSJ3aWR0aDoyMDBweDsgZGlzcGxheTogYmxvY2s7IG1hcmdpbjogYXV0bzsiPg0KDQoNCi0tLQ0KDQpQZW5kYWh1bHVhbiANCg0KUHJvYmFiaWxpdGFzIGFkYWxhaCBwaWxhciBkYXNhciBkYXJpIHBlbmFsYXJhbiBzdGF0aXN0aWssIHlhbmcgbWVuYXdhcmthbiBrZXJhbmdrYSBrZXJqYSB5YW5nIHNpc3RlbWF0aXMgZGFuIGtvaGVyZW4gdW50dWsgbWVtYWhhbWkga2V0aWRha3Bhc3RpYW4gc2VydGEgbWVtYmltYmluZyBwZW5nYW1iaWxhbiBrZXB1dHVzYW4geWFuZyB0ZXBhdC4gUHJvYmFiaWxpdGFzIG1lbmdndW5ha2FuIHVrdXJhbiB1bnR1ayBtZW5naGl0dW5nIHNlYmVyYXBhIGJlc2FyIHBlbHVhbmcuIFBlbmd1YXNhYW4ga29uc2VwIHByb2JhYmlsaXRhcyBzYW5nYXQgcGVudGluZyB1bnR1ayBhbmFsaXNpcyBkYXRhIHlhbmcgZWZla3RpZiwgcGVuZWxpdGlhbiBpbG1pYWgsIGRhbiBwcmFrdGlrIGJlcmJhc2lzIGJ1a3RpLg0KDQoNCg0KIyMgRnVuZGFtZW50YWwgQ29uY2VwdA0KDQo8Y2VudGVyPg0KPGlmcmFtZSBzcmM9Imh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkL3luakhLQkNpR1hZP3NpPW9XVlhyaGcwa2E0WUtOQzgiIHdpZHRoPSI3NjAiIGhlaWdodD0iNDMwIiB3aWR0aD0iNzY4IiBoZWlnaHQ9IjQwMHB4IiBkYXRhLWV4dGVybmFsPSIxIj4gPC9pZnJhbWU+DQo8L2NlbnRlcj4NCioqa29uc2VwIGRhc2FyIHByb2JhYmlsdHkqKg0KDQotIFByb2JhYmlsaXR5IDogcGVsdWFuZyB0ZXJqYWRpbnlhIHN1YXR1IHBlcmlzdGl3YQ0KDQotIFJ1bXVzIDxtYXRoIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIiBkaXNwbGF5PSJibG9jayI+DQogIDxtaT5Qcm9iYWJpbGl0YXM8L21pPg0KICA8bW8+PTwvbW8+DQogIDxtZnJhYz4NCiAgICA8bXJvdz4NCiAgICAgIDxtaT5KdW1sYWgmbmJzcDtrZWphZGlhbiZuYnNwO3lhbmcmbmJzcDtkaWluZ2lua2FuPC9taT4NCiAgICA8L21yb3c+DQogICAgPG1yb3c+DQogICAgICA8bWk+SnVtbGFoJm5ic3A7a2VtdW5na2luYW4mbmJzcDtrZXNlbHVydWhhbjwvbWk+DQogICAgPC9tcm93Pg0KICA8L21mcmFjPg0KPC9tYXRoPg0KDQoNCi0gQ29udG9obnlhLCBwZWx1YW5nIG11bmN1bCDigJxrZXBhbGHigJ0gc2FhdCBtZWxlbXBhciBrb2luIGFkYWxhaCAxLzIgPSAwLjUgPQ0KNTAlLg0KDQoqKlJ1YW5nIFNhbXBlbCoqDQoNCi0gUnVhbmcgc2FtcGVsIGFkYWxhaCBrdW1wdWxhbiBzZWx1cnVoIGtlbXVuZ2tpbmFuIGhhc2lsIGRhcmkgc3VhdHUgZWtzcGVyaW1lbi4NCg0KLSBDb250b2ggbWVsZW1wYXIga29pbiBkdWEga2FsaTogcnVhbmcgc2FtcGVsbnlhIGFkYWxhaCBISCwgSFQsIFRILCBkYW4gVFQgKHRvdGFsIDQga2VtdW5na2luYW4pLg0KDQotIFByb2JhYmlsaXRhcyBtYXNpbmctbWFzaW5nIGhhc2lsIGRpaGl0dW5nIGRlbmdhbiBtZW5nYWxpa2FuIHBlbHVhbmcgdGlhcCBrZWphZGlhbiwga2FyZW5hIHNldGlhcCBsZW1wYXJhbiBiZXJzaWZhdCBpbmRlcGVuZGVuLg0KDQoqKkRpYWdyYW0gUnVhbmcgU2FtcGVsKioNCg0KLSBEaWFncmFtIHBlcmNhYmFuZ2FuIChzZXBlcnRpIHBvaG9uKSBtZW11ZGFoa2FuIG1lbGloYXQgc2VtdWEga2VtdW5na2luYW4gZGFuIG1lbmdoaXR1bmcgcGVsdWFuZyBtYXNpbmctbWFzaW5nLg0KDQoqKkF0dXJhbiBQcm9iYWJpbGl0YXMqKg0KDQotIFByb2JhYmlsaXRhcyBzZWxhbHUgYmVybmlsYWkgYW50YXJhIDAgZGFuIDEgKHRlcm1hc3VrIGtlZHVhIG5pbGFpKS4NCg0KLSBKaWthIGRpanVtbGFoa2FuIHNlbXVhIHByb2JhYmlsaXRhcyBkYXJpIHNldGlhcCBoYXNpbCBkaSBydWFuZyBzYW1wZWwsIGhhc2lsbnlhIHBhc3RpIDEuDQoNCioqQXR1cmFuIEtvbXBsZW1lbioqDQoNCi0gQXR1cmFuIEtvbXBsZW1lbiBtZW55YXRha2FuIGJhaHdhOg0KPG1hdGggeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTgvTWF0aC9NYXRoTUwiIGRpc3BsYXk9ImJsb2NrIj4NCiAgPG1pPlA8L21pPg0KICA8bW8+KDwvbW8+DQogIDxtcm93Pg0KICAgIDxtaT5BPC9taT4NCiAgICA8bXN1cD4NCiAgICAgIDxtbz7igLI8L21vPg0KICAgICAgPG1yb3cvPg0KICAgIDwvbXN1cD4NCiAgPC9tcm93Pg0KICA8bW8+KTwvbW8+DQogIDxtbz49PC9tbz4NCiAgPG1uPjE8L21uPg0KICA8bW8+JiN4MjIxMjs8L21vPg0KICA8bWk+UDwvbWk+DQogIDxtbz4oPC9tbz4NCiAgPG1pPkE8L21pPg0KICA8bW8+KTwvbW8+DQo8L21hdGg+DQoNCi0gQXJ0aW55YSwgcGVsdWFuZyBzZWJ1YWgga2VqYWRpYW4gdGlkYWsgdGVyamFkaSBzYW1hIGRlbmdhbiAxIGRpa3VyYW5naSBwZWx1YW5nIGtlamFkaWFuIGl0dSB0ZXJqYWRpLg0KDQotIENvbnRvaCBQZW5lcmFwYW4gQXR1cmFuIEtvbXBsZW1lbg0KDQpQZWx1YW5nIHRpZGFrIG1lbmRhcGF0a2FuIGR1YSB0YWlsIHNhYXQgbWVsZW1wYXIgZHVhIGtvaW4gYWRhbGFoIA0KPG1hdGggeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTgvTWF0aC9NYXRoTUwiIGRpc3BsYXk9ImJsb2NrIj4NCiAgPG1uPjE8L21uPg0KICA8bW8+JiN4MjIxMjs8L21vPg0KICA8bWk+UDwvbWk+DQogIDxtbz4oPC9tbz4NCiAgPG10ZXh0PmR1YSB0YWlsPC9tdGV4dD4NCiAgPG1vPik8L21vPg0KICA8bW8+PTwvbW8+DQogIDxtbj4xPC9tbj4NCiAgPG1vPiYjeDIyMTI7PC9tbz4NCiAgPG1uPjAuMjU8L21uPg0KICA8bW8+PTwvbW8+DQogIDxtbj4wLjc1PC9tbj4NCjwvbWF0aD4NCg0KDQpCaXNhIGp1Z2EgZGVuZ2FuIG1lbmp1bWxhaGthbiBwZWx1YW5nIGRhcmkgc2VtdWEgaGFzaWwgc2VsYWluIOKAnGR1YSB0YWls4oCdLg0KYGBgDQpgYGANCiMjIEluZGVwZW5kZW50IGFuZCBEZXBlbmRlbnQNCjxjZW50ZXI+DQo8aWZyYW1lIHNyYz0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvTFMtX2loREtyMk0iIHdpZHRoPSI3NjAiIGhlaWdodD0iNDMwIiB3aWR0aD0iNzY4IiBoZWlnaHQ9IjQwMHB4IiBkYXRhLWV4dGVybmFsPSIxIj4gPC9pZnJhbWU+DQo8L2NlbnRlcj4NCg0KKipLZWphZGlhbiBJbmRlcGVuZGVuKioNCg0KLSBLZWphZGlhbiBkaWthdGFrYW4gaW5kZXBlbmRlbiBqaWthIHRlcmphZGlueWEgc2FsYWggc2F0dSB0aWRhayBtZW1wZW5nYXJ1aGkgcGVsdWFuZyBrZWphZGlhbiBsYWlubnlhLg0KDQotIENvbnRvaDogTWVsZW1wYXIgZGFkdSBkYW4gbWVsZW1wYXIga29pbiwgaGFzaWwgZGFkdSB0aWRhayBtZW1lbmdhcnVoaSBoYXNpbCBrb2luLg0KDQotIFJ1bXVzIDxtYXRoIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIj4NCiAgPG1pPlA8L21pPg0KICA8bW8+KDwvbW8+DQogIDxtaT5BPC9taT4NCiAgPG10ZXh0PiBkYW4gPC9tdGV4dD4NCiAgPG1pPkI8L21pPg0KICA8bW8+KTwvbW8+DQogIDxtbz49PC9tbz4NCiAgPG1pPlA8L21pPg0KICA8bW8+KDwvbW8+DQogIDxtaT5BPC9taT4NCiAgPG1vPik8L21vPg0KICA8bW8+w5c8L21vPg0KICA8bWk+UDwvbWk+DQogIDxtbz4oPC9tbz4NCiAgPG1pPkI8L21pPg0KICA8bW8+KTwvbW8+DQo8L21hdGg+DQoNCi0gQ29udG9oIHNvYWw6IFBlbHVhbmcgbWVuZGFwYXQgYW5na2EgNSBwYWRhIGRhZHUgKDEvNikgZGFuIGhlYWQgcGFkYSBrb2luICgxLzIpLCBtYWthIHBlbHVhbmcga2VqYWRpYW4ga2VkdWFueWE6DQoNCjxtYXRoIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIiBkaXNwbGF5PSJibG9jayI+DQogIDxtaT5QPC9taT4NCiAgPG1vPig8L21vPg0KICA8bXRleHQ+NSBkYW4gaGVhZDwvbXRleHQ+DQogIDxtbz4pPC9tbz4NCiAgPG1vPj08L21vPg0KICA8bWZyYWM+DQogICAgPG1uPjE8L21uPg0KICAgIDxtbj42PC9tbj4NCiAgPC9tZnJhYz4NCiAgPG1vPiYjeDAwRDc7PC9tbz4NCiAgPG1mcmFjPg0KICAgIDxtbj4xPC9tbj4NCiAgICA8bW4+MjwvbW4+DQogIDwvbWZyYWM+DQogIDxtbz49PC9tbz4NCiAgPG1mcmFjPg0KICAgIDxtbj4xPC9tbj4NCiAgICA8bW4+MTI8L21uPg0KICA8L21mcmFjPg0KPC9tYXRoPg0KDQoqKktlamFkaWFuIERlcGVuZGVuKioNCg0KLSBLZWphZGlhbiBkaWthdGFrYW4gZGVwZW5kZW4gamlrYSB0ZXJqYWRpbnlhIHNhdHUga2VqYWRpYW4gbWVtZW5nYXJ1aGkgcGVsdWFuZyBrZWphZGlhbiBiZXJpa3V0bnlhLg0KDQotIENvbnRvaDogTWVuZ2FtYmlsIGR1YSBrZWxlcmVuZyBkYXJpIGtvdGFrICh0YW5wYSBtZW5nZW1iYWxpa2FuIGtlIHRlbXBhdCBzZW11bGEpLg0KDQotIFBlbmplbGFzYW4gc29hbDogS290YWsgYmVyaXNpIDcga2VsZXJlbmcgaGlqYXUgZGFuIDMgYmlydS4gUGVsdWFuZyBtZW5nYW1iaWwgaGlqYXUgbGFsdSBiaXJ1ICJ0YW5wYSBwZW5nZW1iYWxpYW4iOg0KICAgIC0gcGVsdWFuZyBhbWJpbCBoaWphdSBwZXJ0YW1hIDcvMTANCiAgICAtIFNldGVsYWggaGlqYXUgZGlhbWJpbCwgcGVsdWFuZyBhbWJpbCBiaXJ1IDMvOT0xLzMNCiAgICAtIHRvdGFsIHBlbHVhbmcga2VkdWFueWEgOiA8bWF0aCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTCIgZGlzcGxheT0iYmxvY2siPg0KICA8bWZyYWM+DQogICAgPG1uPjc8L21uPg0KICAgIDxtbj4xMDwvbW4+DQogIDwvbWZyYWM+DQogIDxtbz4mI3gwMEQ3OzwvbW8+DQogIDxtZnJhYz4NCiAgICA8bW4+MTwvbW4+DQogICAgPG1uPjM8L21uPg0KICA8L21mcmFjPg0KICA8bW8+PTwvbW8+DQogIDxtZnJhYz4NCiAgICA8bW4+NzwvbW4+DQogICAgPG1uPjMwPC9tbj4NCiAgPC9tZnJhYz4NCjwvbWF0aD4NCg0KKipLZXNpbXB1bGFuKioNCg0KLSBQYWRhIGtlamFkaWFuIGluZGVwZW5kZW4sIHBlbHVhbmcgZHVhIGtlamFkaWFuIHNla2FsaWd1cyBjdWt1cCBkaWthbGlrYW4uDQoNCi0gUGFkYSBrZWphZGlhbiBkZXBlbmRlbiwgcGVsdWFuZyBrZWphZGlhbiBrZWR1YSBkaXBlbmdhcnVoaSBoYXNpbCBkYXJpIGtlamFkaWFuIHBlcnRhbWEgc2VoaW5nZ2EgcGVyaGl0dW5nYW5ueWEgYmVydWJhaC4NCg0KYGBgDQoNCmBgYA0KDQojIyBVbmlvbiBvZiBldmVudHMNCjxjZW50ZXI+DQo8aWZyYW1lIHNyYz0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvdnFLQWJoQ3FTVGMiIHdpZHRoPSI3NjAiIGhlaWdodD0iNDMwIiB3aWR0aD0iNzY4IiBoZWlnaHQ9IjQwMHB4IiBkYXRhLWV4dGVybmFsPSIxIj4gPC9pZnJhbWU+DQo8L2NlbnRlcj4NCg0KKipTYW1wbGUgU3BhY2UgKFJ1YW5nIFNhbXBlbCkqKg0KDQotIFJ1YW5nIHNhbXBlbCBhZGFsYWggaGltcHVuYW4gc2VsdXJ1aCBrZW11bmdraW5hbiBoYXNpbCBkYXJpIHNlYnVhaCBla3NwZXJpbWVuLg0KDQotIENvbnRvaDogTWVsZW1wYXIgc2F0dSBkYWR1IG1lbmdoYXNpbGthbiA2IGhhc2lsICgx4oCTNikuIE1lbGVtcGFyIGR1YSBkYWR1IG1lbmdoYXNpbGthbiAzNiBrZW11bmdraW5hbiBoYXNpbCAoNiDDlyA2KS4NCg0KKipTaW1wbGUgUHJvYmFiaWxpdHkgKFBlbHVhbmcgU2VkZXJoYW5hKSoqDQoNCi0gUGVsdWFuZyBzdWF0dSBrZWphZGlhbiA9IGp1bWxhaCBoYXNpbCB5YW5nIGRpaW5naW5rYW4gLyB0b3RhbCBoYXNpbCBkYWxhbSBydWFuZyBzYW1wZWwuDQoNCi0gQ29udG9oOiBQZWx1YW5nIG1lbmRhcGF0a2FuIDIgYW5na2EgZW1wYXQgc2FhdCBtZWxlbXBhciBkdWEgZGFkdSA9IA0KDQo8bWF0aCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTCI+DQogIDxtZnJhYz4NCiAgICA8bW4+MTwvbW4+DQogICAgPG1uPjM2PC9tbj4NCiAgPC9tZnJhYz4NCjwvbWF0aD4NCg0KDQoqKkludGVyc2VjdGlvbiAmIFVuaW9uIG9mIEV2ZW50czoqKg0KDQotIEludGVyc2VjdGlvbiAoSXJpc2FuKTogUGVsdWFuZyBkdWEga2VqYWRpYW4gc2VrYWxpZ3VzLCBtaXNhbG55YSBkdWEgYW5na2EgZ2VuYXAgZGFuIHNldGlkYWtueWEgc2F0dSBhbmdrYSBkdWEgPSA1LzM2Lg0KDQotIFVuaW9uIChHYWJ1bmdhbi9BdGF1KTogUGVsdWFuZyBzYWxhaCBzYXR1IGRhcmkgZHVhIGtlamFkaWFuIChhdGF1IGtlZHVhbnlhKSB0ZXJqYWRpLg0KDQpSdW11czoNCg0KPG1hdGggeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTgvTWF0aC9NYXRoTUwiPg0KICA8bWk+UDwvbWk+DQogIDxtbz4oPC9tbz4NCiAgPG1pPkE8L21pPg0KICA8bW8+JiN4MjIyQTs8L21vPg0KICA8bWk+QjwvbWk+DQogIDxtbz4pPC9tbz4NCiAgPG1vPj08L21vPg0KICA8bWk+UDwvbWk+DQogIDxtbz4oPC9tbz4NCiAgPG1pPkE8L21pPg0KICA8bW8+KTwvbW8+DQogIDxtbz4rPC9tbz4NCiAgPG1pPlA8L21pPg0KICA8bW8+KDwvbW8+DQogIDxtaT5CPC9taT4NCiAgPG1vPik8L21vPg0KICA8bW8+JiN4MjIxMjs8L21vPg0KICA8bWk+UDwvbWk+DQogIDxtbz4oPC9tbz4NCiAgPG1pPkE8L21pPg0KICA8bW8+JiN4MjIyOTs8L21vPg0KICA8bWk+QjwvbWk+DQogIDxtbz4pPC9tbz4NCjwvbWF0aD4NCg0KKipDb250b2ggU29hbCBVbmlvbioqDQoNCi0gIlBlbHVhbmcgbWVuZGFwYXRrYW4gZHVhIGFuZ2thIGdlbmFwIGF0YXUgc2V0aWRha255YSBzYXR1IGFuZ2thIGR1YSIgZGloaXR1bmcgZGVuZ2FuIHJ1bXVzIHVuaW9uOg0KDQoqRHVhIGFuZ2thIGdlbmFwOiA5LzM2Kg0KDQoqU2V0aWRha255YSBzYXR1IGFuZ2thIGR1YTogMTEvMzYqDQoNCipLZWR1YW55YTogNS8zNioNCkphZGksDQogIA0KPG1hdGggeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTgvTWF0aC9NYXRoTUwiIGRpc3BsYXk9ImJsb2NrIiBzdHlsZT0idGV4dC1hbGlnbjogY2VudGVyOyI+DQogIDxtaT5QPC9taT4NCiAgPG1vPig8L21vPg0KICA8bWk+QTwvbWk+DQogIDxtbz4mI3gyMjJBOzwvbW8+DQogIDxtaT5CPC9taT4NCiAgPG1vPik8L21vPg0KICA8bW8+PTwvbW8+DQogIDxtZnJhYz4NCiAgICA8bW4+OTwvbW4+DQogICAgPG1uPjM2PC9tbj4NCiAgPC9tZnJhYz4NCiAgPG1vPis8L21vPg0KICA8bWZyYWM+DQogICAgPG1uPjExPC9tbj4NCiAgICA8bW4+MzY8L21uPg0KICA8L21mcmFjPg0KICA8bW8+JiN4MjIxMjs8L21vPg0KICA8bWZyYWM+DQogICAgPG1uPjU8L21uPg0KICAgIDxtbj4zNjwvbW4+DQogIDwvbWZyYWM+DQogIDxtbz49PC9tbz4NCiAgPG1mcmFjPg0KICAgIDxtbj4xNTwvbW4+DQogICAgPG1uPjM2PC9tbj4NCiAgPC9tZnJhYz4NCiAgPG1vPj08L21vPg0KICA8bW4+MCw0MTY3PC9tbj4NCjwvbWF0aD4NCg0KDQoNCmBgYA0KDQpgYGANCiMjIEV4Y2x1c2l2ZSBhbmQgRXhoYXVzdGl2ZQ0KPGNlbnRlcj4NCjxpZnJhbWUgc3JjPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9lbWJlZC9mN2FnVHY5bkE1ayIgd2lkdGg9Ijc2MCIgaGVpZ2h0PSI0MzAiIHdpZHRoPSI3NjgiIGhlaWdodD0iNDAwcHgiIGRhdGEtZXh0ZXJuYWw9IjEiPiA8L2lmcmFtZT4NCjwvY2VudGVyPg0KDQoqKk11dHVhbGx5IGV4Y2x1c2l2ZSBldmVudHMqKg0KDQotIER1YSBwZXJpc3Rpd2EgZGlzZWJ1dCBzYWxpbmcgbGVwYXMgamlrYSB0aWRhayBtdW5na2luIHRlcmphZGkgc2VjYXJhIGJlcnNhbWFhbiwgYXJ0aW55YSBpcmlzYW4ga2VkdWEgcGVyaXN0aXdhIHNhbWEgZGVuZ2FuIGhpbXB1bmFuIGtvc29uZzxtYXRoIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIj4NCiAgPG1vPig8L21vPg0KICA8bXN1Yj4NCiAgICA8bWk+RTwvbWk+DQogICAgPG1uPjE8L21uPg0KICA8L21zdWI+DQogIDxtbz4mI3gyMjI5OzwvbW8+DQogIDxtc3ViPg0KICAgIDxtaT5FPC9taT4NCiAgICA8bW4+MjwvbW4+DQogIDwvbXN1Yj4NCiAgPG1vPj08L21vPg0KICA8bW8+JiN4MjIwNTs8L21vPg0KICA8bW8+KTwvbW8+DQo8L21hdGg+DQoNCi0gQ29udG9oOiBwYWRhIHBlbGVtcGFyYW4gZGFkdSwgcGVyaXN0aXdhIOKAnG11bmN1bCBiaWxhbmdhbiBnZW5hcOKAnSBkYW4g4oCcbXVuY3VsIGJpbGFuZ2FuIGdhbmppbOKAnSB0aWRhayBiaXNhIHRlcmphZGkgc2VrYWxpZ3VzLCBzZWhpbmdnYSBrZWR1YW55YSBzYWxpbmcgbGVwYXMuDQoNCioqRXhoYXVzdGl2ZSBldmVudHMqKg0KDQotIEJlYmVyYXBhIHBlcmlzdGl3YSBkaXNlYnV0IGV4aGF1c3RpZiBqaWthIGdhYnVuZ2FuICh1bmlvbikgc2VtdWEgcGVyaXN0aXdhIHRlcnNlYnV0IG1lbnV0dXBpIHNlbHVydWggcnVhbmcgc2FtcGVsLCB5YWl0dSA8bWF0aCB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMTk5OC9NYXRoL01hdGhNTCI+DQogIDxtbz4oPC9tbz4NCiAgPG1zdWI+DQogICAgPG1pPkU8L21pPg0KICAgIDxtbj4xPC9tbj4NCiAgPC9tc3ViPg0KICA8bW8+JiN4MjIyQTs8L21vPg0KICA8bXN1Yj4NCiAgICA8bWk+RTwvbWk+DQogICAgPG1uPjI8L21uPg0KICA8L21zdWI+DQogIDxtbz4mI3gyMjJBOzwvbW8+DQogIDxtbz4mI3gyMkVGOzwvbW8+DQogIDxtbz49PC9tbz4NCiAgPG1pPlM8L21pPg0KICA8bW8+KTwvbW8+DQo8L21hdGg+DQoNCkNvbnRvaDogcGFkYSBkYWR1IGRlbmdhbiBydWFuZyBzYW1wZWwgKDEsMiwzLDQsNSw2KSwgamlrYSBnYWJ1bmdhbiBiZWJlcmFwYSBwZXJpc3Rpd2EgbWVuZ2hhc2lsa2FuIHNlbXVhIGVuYW0gb3V0Y29tZSB0ZXJzZWJ1dCwgbWFrYSBwZXJpc3Rpd2EtcGVyaXN0aXdhIGl0dSBiZXJzaWZhdCBleGhhdXN0aWYuDQoNCioqVW5pb24gZGFuIGtvbWJpbmFzaSBzaWZhdCoqDQoNCi0gUGVyaXN0aXdhIGJpc2EgYmVyc2lmYXQgc2FsaW5nIGxlcGFzIHNla2FsaWd1cyBleGhhdXN0aWYgamlrYTogDQooMSkgdGlkYWsgc2FsaW5nIHR1bXBhbmcgdGluZGloLA0KKDIpIGdhYnVuZ2FubnlhIG1lbnV0dXBpIHNlbHVydWggcnVhbmcgc2FtcGVsLg0KYGBgDQoNCmBgYA0KIyMgQmlub21pYWwgRXhwZXJpbWVudCANCjxjZW50ZXI+DQo8aWZyYW1lIHNyYz0iaHR0cHM6Ly93d3cueW91dHViZS5jb20vZW1iZWQvblJ1UUF0YWpKWWsiIHdpZHRoPSI3NjAiIGhlaWdodD0iNDMwIiB3aWR0aD0iNzY4IiBoZWlnaHQ9IjQwMHB4IiBkYXRhLWV4dGVybmFsPSIxIj4gPC9pZnJhbWU+DQo8L2NlbnRlcj4NCg0KKipLb25zZXAgcGVyY29iYWFuIGJpbm9taWFsKioNCg0KLSBQZXJjb2JhYW4gYmlub21pYWwgYmVya2FpdGFuIGRlbmdhbiBzaXR1YXNpIOKAnHN1a3NlcyBhdGF1IGdhZ2Fs4oCdIHlhbmcgZGl1bGFuZyBiZWJlcmFwYSBrYWxpLCBtaXNhbG55YSBsZW1wYXIga29pbiBhdGF1IG1lbmdhbWJpbCBrZWxlcmVuZyB0ZXJ0ZW50dSBkYXJpIGtvdGFrLg0KDQotIERpdGVrYW5rYW4gYXJ0aSBhd2FsYW4g4oCcYmnigJ0gKGR1YSkgeWFpdHUgaGFueWEgYWRhIGR1YSBrZW11bmdraW5hbiBoYXNpbCBkaSBzZXRpYXAgcGVyY29iYWFuOiBzdWtzZXMgYXRhdSBnYWdhbC4NCg0KKipFbXBhdCBzeWFyYXQgYmlub21pYWwqKg0KDQotIFN5YXJhdG55YTogKDEpIGp1bWxhaCBwZXJjb2JhYW4gbiBoYXJ1cyB0ZXRhcCwgKDIpIHRpYXAgcGVyY29iYWFuIGhhbnlhIHB1bnlhIGR1YSBoYXNpbCAoc3Vrc2VzL2dhZ2FsKSwgKDMpIHBlbHVhbmcgc3Vrc2VzIHRldGFwIHVudHVrIHNldGlhcCBwZXJjb2JhYW4sIGRhbiAoNCkgdGlhcCBwZXJjb2JhYW4gc2FsaW5nIGluZGVwZW5kZW4uDQoNCi0gSmlrYSBrZWVtcGF0IHN5YXJhdCBpbmkgdGVycGVudWhpLCBzaXR1YXNpIHRlcnNlYnV0IGRpc2VidXQgcGVyY29iYWFuIGJpbm9taWFsIGRhbiBib2xlaCBkaWFuYWxpc2lzIGRlbmdhbiBydW11cyBiaW5vbWlhbC4NCg0KKipDb250b2ggbGVtcGFyIGtvaW4qKg0KDQotIENvbnRvaCBwZXJ0YW1hOiBsZW1wYXIga29pbiBiaWFzYSAzIGthbGkgZGFuIGNhcmkgcGVsdWFuZyBtZW5kYXBhdGthbiB0ZXBhdCAxIGtlcGFsYTsgZ3VydSBtZW51bGlza2FuIHNlbXVhIHVydXRhbiB5YW5nIG11bmdraW4gbWVuZ2hhc2lsa2FuIHRlcGF0IDEga2VwYWxhIGxhbHUgbWVuanVtbGFoa2FuIHBlbHVhbmcgbWFzaW5nLW1hc2luZyBzZWhpbmdnYSBkaXBlcm9sZWggcGVsdWFuZyB0b3RhbCAwLDM3NS4NCg0KLSBDb250b2ggaW5pIGp1Z2EgZGljZWsgc2F0dSBwZXIgc2F0dSBzeWFyYXQgYmlub21pYWxueWE6IA0Kbj0zIHRldGFwLCBkdWEgaGFzaWwgKGtlcGFsYS9idWthbiBrZXBhbGEpLCBwZWx1YW5nIGtlcGFsYSAwLDUgcGFkYSBzZXRpYXAgbGVtcGFyYW4sIGRhbiBzZXRpYXAgbGVtcGFyYW4gc2FsaW5nIGJlYmFzLCBzZWhpbmdnYSBpbmkgYWRhbGFoIHBlcmNvYmFhbiBiaW5vbWlhbC4NCg0KKipSdW11cyBkaXN0cmlidXNpIGJpbm9taWFsKioNCg0KLSBEaSBha2hpciwgZGlwZXJrZW5hbGthbiBydW11cyBkaXN0cmlidXNpIGJpbm9taWFsOiBwZWx1YW5nIG1lbmRhcGF0a2FuIGsgc3Vrc2VzIGRhcmkgbiBwZXJjb2JhYW4gYmVybmlsYWkga29tYmluYXNpIOKAnCBuIGNob29zZSBr4oCdIGRpa2FsaSAgPG1hdGggeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTgvTWF0aC9NYXRoTUwiPg0KICA8bXN1cD4NCiAgICA8bWk+cDwvbWk+DQogICAgPG1pPms8L21pPg0KICA8L21zdXA+DQogIDxtbz4mI3gyMDYyOzwvbW8+DQogIDxtc3VwPg0KICAgIDxtcm93Pg0KICAgICAgPG1vPig8L21vPg0KICAgICAgPG1uPjE8L21uPg0KICAgICAgPG1vPiYjeDIyMTI7PC9tbz4NCiAgICAgIDxtaT5wPC9taT4NCiAgICAgIDxtbz4pPC9tbz4NCiAgICA8L21yb3c+DQogICAgPG1yb3c+DQogICAgICA8bWk+bjwvbWk+DQogICAgICA8bW8+JiN4MjIxMjs8L21vPg0KICAgICAgPG1pPms8L21pPg0KICAgIDwvbXJvdz4NCiAgPC9tc3VwPg0KPC9tYXRoPiwgZGkgbWFuYSBwIGFkYWxhaCBwZWx1YW5nIHN1a3Nlcy4NCg0KLSBDb250b2gga2VsZXJlbmcgdGFkaSBrZW11ZGlhbiBkaXNlbGVzYWlrYW4gdWxhbmcgZGVuZ2FuIHJ1bXVzIGluaSAobWVuZ2d1bmFrYW4gPG1hdGggeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzE5OTgvTWF0aC9NYXRoTUwiPg0KICA8bWk+bjwvbWk+DQogIDxtbz49PC9tbz4NCiAgPG1uPjU8L21uPg0KICA8bW8+LDwvbW8+DQogIDxtc3BhY2Ugd2lkdGg9IjAuNWVtIi8+DQogIDxtaT5rPC9taT4NCiAgPG1vPj08L21vPg0KICA8bW4+MjwvbW4+DQogIDxtbz4sPC9tbz4NCiAgPG1zcGFjZSB3aWR0aD0iMC41ZW0iLz4NCiAgPG1pPnA8L21pPg0KICA8bW8+PTwvbW8+DQogIDxtbj4wLDI8L21uPg0KPC9tYXRoPikgZGFuIGhhc2lsbnlhIGtlbWJhbGkgMCwyMDQ4LCBzZWhpbmdnYSBydW11cyBkaXBlcmxpaGF0a2FuIHNlYmFnYWkg4oCcamFsYW4gcGludGFz4oCdIHlhbmcgc2V0YXJhIGRlbmdhbiBwZW5qdW1sYWhhbiBzZW11YSB1cnV0YW4NCg0KYGBgDQpgYGANCg0KIyMgQmlub21pYWwgRGlzdHJpYnV0aWYNCg0KPGNlbnRlcj4NCjxpZnJhbWUgc3JjPSJodHRwczovL3d3dy55b3V0dWJlLmNvbS9lbWJlZC9ZMi12U1dGbWd5SSIgd2lkdGg9Ijc2MCIgaGVpZ2h0PSI0MzAiIHdpZHRoPSI3NjgiIGhlaWdodD0iNDAwcHgiIGRhdGEtZXh0ZXJuYWw9IjEiPiA8L2lmcmFtZT4NCjwvY2VudGVyPg0KDQoqKk1lbmdpbmdhdCBrZW1iYWxpIHJ1bXVzIGJpbm9taWFsKioNCg0KLSBEaSBhd2FsLCB2aWRlbyBtZW5ndWxhcyBydW11cyBiaW5vbWlhbCBkZW5nYW4gY29udG9oIHBlbGVtcGFyYW4ga29pbiBkdWEga2FsaSwgbWVuZGVmaW5pc2lrYW4gayBzZWJhZ2FpIGJhbnlha255YSBzdWtzZXMsIG4gc2ViYWdhaSBiYW55YWtueWEgcGVyY29iYWFuLCBkYW4gcCBzZWJhZ2FpIHBlbHVhbmcgc3Vrc2VzIHNldGlhcCBwZXJjb2JhYW4uIERlbmdhbiBtZW1hc3Vra2FuIG5pbGFpIG49MiBkYW4gcD0wLDUsIGRpcGVyb2xlaCBwZWx1YW5nIHVudHVrIGs9MCwxLDIgeWFuZyBrZW11ZGlhbiBkaWd1bmFrYW4gc2ViYWdhaSBkYXNhciB2aXN1YWxpc2FzaS4NCg0KKipNZW1idWF0IGdyYWZpayBkaXN0cmlidXNpIGJpbm9taWFsKioNCg0KLSBOaWxhaSBwZWx1YW5nIHVudHVrIHRpYXAgayBkaWdhbWJhcmthbiBzZWJhZ2FpIGRpYWdyYW0gYmF0YW5nLCBkZW5nYW4gayBkaSBzdW1idS14IGRhbjxtYXRoIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk4L01hdGgvTWF0aE1MIj4NCiAgPG1pPlA8L21pPg0KICA8bW8+KDwvbW8+DQogIDxtaT5YPC9taT4NCiAgPG1vPj08L21vPg0KICA8bWk+azwvbWk+DQogIDxtbz4pPC9tbz4NCjwvbWF0aD4gZGkgc3VtYnUteSBzZWhpbmdnYSB0YW1wYWsgdGluZ2dpIGJhdGFuZyB1bnR1ayAwLCAxLCBkYW4gMiBzdWtzZXMuIERhcmkgZ3JhZmlrIGluaSB0ZXJsaWhhdCBiYWdhaW1hbmEgZGlzdHJpYnVzaSBwZWx1YW5nIHRlcnNlYmFyIGRhbiBtYW5hIGhhc2lsIHlhbmcgcGFsaW5nIG11bmdraW4gdGVyamFkaS4NCg0KKipQYXJhbWV0ZXIgbWVhbiwgdmFyaWFucywgZGFuIHNpbXBhbmdhbiBiYWt1KioNCg0KLSBwYXJhbWV0ZXIgZGlzdHJpYnVzaSBiaW5vbWlhbDogbWVhbiDOvD1ucCwgdmFyaWFucyBucCgx4oiScCksIGRhbiBzaW1wYW5nYW4gYmFrdSBzZWJhZ2FpIGFrYXIgZGFyaSB2YXJpYW5zLiBEaXR1bmp1a2thbiBiYWh3YSBrZXRpa2EgbiBtZW1iZXNhciAobWlzYWxueWEgbj0xMCksIGJlbnR1ayBkaXN0cmlidXNpIGJpbm9taWFsIG11bGFpIG1lbmRla2F0aSBkaXN0cmlidXNpIG5vcm1hbCBkZW5nYW4gcHVzYXQgZGkgc2VraXRhciDOvC4NCg0KKipQZW5nYXJ1aCBuaWxhaSBwIHRlcmhhZGFwIGJlbnR1ayoqDQoNCi0gbWVuZ3ViYWggcCBtZW5ndWJhaCBiZW50dWsgZGlzdHJpYnVzaTogamlrYSBwPTAsNSwgZGlzdHJpYnVzaSBjZW5kZXJ1bmcgc2ltZXRyaXMsIHNlZGFuZ2thbiBqaWthIHAgc2FuZ2F0IGtlY2lsIChtaXNhbG55YSAwLDEpIGRpc3RyaWJ1c2kgY29uZG9uZyBrZSBrYW5hbiBkYW4gamlrYSBwIGJlc2FyIChtaXNhbG55YSAwLDgpIGRpc3RyaWJ1c2kgY29uZG9uZyBrZSBraXJpLiBEYXRhIGNlbmRlcnVuZyBtZW5nZWxvbXBvayBkaSBzZWtpdGFyIG1lYW4gbnAsIGRhbiBwZW55aW1wYW5nYW4gcCBkYXJpIDAsNSBtZW1idWF0IGJlbnR1ayBkaXN0cmlidXNpIG1lbmphZGkgbWlyaW5nIChza2V3ZWQpLg0KDQoNCioqS29uZGlzaSBwZW5kZWthdGFuIG5vcm1hbCoqDQoNCi0ga2FwYW4gZGlzdHJpYnVzaSBiaW5vbWlhbCBib2xlaCBkaWRla2F0aSBkZW5nYW4gZGlzdHJpYnVzaSBub3JtYWwsIHlhaXR1IGppa2EgbnDiiaUxMCBkYW4gbigx4oiScCniiaUxMCAoYXRhdSBrYWRhbmcgbWVuZ2d1bmFrYW4gYmF0YXMgNSwgdGVyZ2FudHVuZyBkb3Nlbi9idWt1KS4gRGl0ZWthbmthbiBiYWh3YSB1bnR1ayBkaXN0cmlidXNpIHlhbmcgc3VkYWggc2ltZXRyaXMsIG4gdGlkYWsgcGVybHUgdGVybGFsdSBiZXNhciB1bnR1ayBtZW5kZWthdGkgbm9ybWFsLCBzZWRhbmdrYW4gdW50dWsgZGlzdHJpYnVzaSB5YW5nIG1pcmluZyBwZXJsdSBuIGphdWggbGViaWggYmVzYXIuDQoNCg0KYGBgDQpgYGANCg0KKlJlZmVyZW5jZSoNCg0KaHR0cHM6Ly9ib29rZG93bi5vcmcvZHNjaWVuY2VsYWJzL2ludHJvX3N0YXRpc3RpY3MvMDYtRXNzZW50aWFsc19vZl9Qcm9iYWJpbGl0eS5odG1sDQoNCmBgYA0K