Probability Distribution

Teknik Survey dan Sampling

Chello Frhino Mike Mandolang (52240031)

February 23, 2025

1 \(3\sigma\) dan \(6\sigma\)

Berikut adalah video penjelasan awal mengenai sigma (\(\sigma\)), yang mulai dari 1-sigma (\(1\sigma\)) hingga 6-sigma (\(6\sigma\)),

Penjelasan lebih rinci mengenai 3-sigma(\(3\sigma\)) dan 6-sigma (\(6\sigma\)) sebagai berikut:

1.1 Penjelasan \(3\sigma\)

3-Sigma (\(3\sigma\)) merupakan sebuah konsep dalam statistik yang digunakan untuk mengukur tingkat variasi atau penyebaran data dalam suatu distribusi. Istilah “Sigma” (\(\sigma\)) sendiri merujuk pada standar deviasi, yaitu ukuran yang menunjukkan seberapa jauh suatu data menyimpang dari rata-rata populasi.

Dalam pendekatan 3-Sigma, nilai yang berada dalam rentang tiga kali standar deviasi dari rata-rata dianggap sebagai bagian dari distribusi normal, sedangkan data yang berada di luar batas tersebut sering kali dikategorikan sebagai anomali atau outlier. Dengan kata lain, konsep ini membantu dalam mendeteksi penyimpangan atau keganjilan dalam suatu proses atau dataset.

Dalam distribusi normal, prinsip 3-Sigma menunjukkan bahwa:
- Sekitar 68% dari data berada dalam ±1 Sigma dari rata-rata.
- Sekitar 95% dari data berada dalam ±2 Sigma dari rata-rata.
- Sekitar 99,7% dari data berada dalam ±3 Sigma dari rata-rata.

Karena hampir semua data berada dalam rentang tiga standar deviasi, nilai yang melampaui batas ini dianggap sebagai indikasi bahwa ada sesuatu yang tidak biasa atau memerlukan perhatian lebih lanjut. Oleh karena itu, metode ini sering digunakan dalam berbagai bidang, seperti pengendalian kualitas, analisis risiko, dan deteksi anomali dalam data statistik.

3-Sigma (\(3\sigma\)) memiliki rumus yang digunakan untuk menentukan batas normal dalam suatu distribusi data. Rumus ini membantu mengidentifikasi batas atas dan batas bawah untuk mendeteksi outlier atau penyimpangan dalam suatu proses.

1.2 Rumus 3-Sigma (\(3\sigma\))

Untuk menentukan batas kontrol dalam pendekatan 3-Sigma, digunakan rumus:

\[ Batas Atas = \mu + 3\sigma \]

\[ Batas Bawah = \mu - 3\sigma \]

Di mana:

  • \(\mu\) = Mean (rata-rata data)
  • \(\sigma\) = Standar deviasi (ukuran sebaran data)
  • 3 = Faktor skala untuk mencakup 99,73% dari distribusi normal

1.2.1 Kegunaan Rumus 3-Sigma (\(3\sigma\))

  1. Pengendalian Kualitas (Quality Control): Mengidentifikasi produk cacat berdasarkan batas kontrol.
  2. Deteksi Anomali: Mengidentifikasi nilai yang menyimpang dari tren normal.
  3. Pengambilan Keputusan: Menentukan apakah suatu variasi dalam proses masih dapat diterima atau tidak.

Rumus \(3\sigma\) sangat bermanfaat dalam berbagai bidang seperti manufaktur, keuangan, dan analisis data.

1.3 Contoh Penggunaan 3-Sigma (\(3\sigma\)) dalam Berbagai Bidang

1. Pengendalian Kualitas dalam Manufaktur

Sebuah pabrik memproduksi botol plastik dengan tinggi rata-rata 20 cm dan standar deviasi 0,5 cm. Dengan menggunakan metode 3-Sigma, batas kontrol produksi ditentukan sebagai:

\[ Batas Atas = 20 + (3 \times 0,5) = 21,5 \text{ cm} \]

\[ Batas Bawah = 20 - (3 \times 0,5) = 18,5 \text{ cm} \]

Jika dalam inspeksi ditemukan botol dengan tinggi di bawah 18,5 cm atau di atas 21,5 cm, maka botol tersebut dianggap cacat produksi dan perlu dilakukan evaluasi lebih lanjut.

2. Deteksi Anomali dalam Keuangan

Sebuah bank menganalisis transaksi nasabah untuk mendeteksi kecurangan. Jika rata-rata transaksi harian seorang nasabah adalah Rp5 juta dengan standar deviasi Rp500 ribu, maka batas 3-Sigma dihitung sebagai:

\[ Batas Atas = 5.000.000 + (3 \times 500.000) = 6.500.000 \]

\[ Batas Bawah = 5.000.000 - (3 \times 500.000) = 3.500.000 \]

Jika ada transaksi yang lebih dari Rp6,5 juta atau kurang dari Rp3,5 juta, sistem akan menandainya sebagai potensi transaksi mencurigakan dan akan dilakukan investigasi lebih lanjut.

3. Analisis Performa Mahasiswa

Di sebuah universitas, nilai rata-rata ujian mata kuliah statistik adalah 75 dengan standar deviasi 10. Dengan menggunakan pendekatan 3-Sigma, batas nilai normal adalah:

\[ Batas Atas = 75 + (3 \times 10) = 105 \]

\[ Batas Bawah = 75 - (3 \times 10) = 45 \]

Karena nilai maksimum adalah 100, maka nilai di atas 100 tidak relevan. Namun, jika ada mahasiswa yang mendapatkan nilai di bawah 45, maka ia mungkin memerlukan bimbingan tambahan untuk meningkatkan pemahamannya terhadap materi.

4. Pemantauan Waktu Pengiriman dalam Logistik

Sebuah perusahaan ekspedisi mencatat waktu rata-rata pengiriman barang adalah 48 jam dengan standar deviasi 6 jam. Maka batas 3-Sigma adalah:

\[ Batas Atas = 48 + (3 \times 6) = 66 \text{ jam} \]

\[ Batas Bawah = 48 - (3 \times 6) = 30 \text{ jam} \]

Jika ada paket yang dikirim dalam kurang dari 30 jam atau lebih dari 66 jam, maka paket tersebut akan ditandai sebagai keluar dari standar operasional, sehingga perlu dilakukan evaluasi terhadap penyebab keterlambatan atau kecepatan yang tidak biasa.

Kesimpulan dari contoh:

Dengan pendekatan 3-Sigma (\(3\sigma\)), berbagai industri dapat mengidentifikasi pola yang menyimpang dari standar normal dan mengambil tindakan korektif yang diperlukan.

1.4 Penjelasan \(6\sigma\)

6-Sigma merupakan sebuah metodologi statistik yang digunakan untuk mengoptimalkan kualitas suatu proses dengan meminimalkan variasi dan cacat. Istilah “Sigma” (\(\sigma\)) dalam statistik merujuk pada standar deviasi, yang menunjukkan seberapa jauh suatu data menyimpang dari rata-rata.

Dalam pendekatan 6-Sigma, proses yang berjalan dengan baik adalah yang memiliki tingkat cacat yang sangat rendah, yaitu hanya 3,4 cacat per satu juta peluang. Dengan kata lain, tingkat keberhasilan proses mencapai 99,99966%, sehingga hampir semua hasil yang diperoleh berada dalam batas kontrol yang telah ditentukan.

6-Sigma menggunakan pendekatan berbasis data dan analisis statistik untuk mengidentifikasi dan menghilangkan penyebab variasi dalam suatu sistem. Metodologi ini sering diterapkan dalam pengendalian kualitas, peningkatan efisiensi operasional, dan pengambilan keputusan berbasis data.

Pendekatan utama dalam 6-Sigma terbagi menjadi dua metode:
- DMAIC (Define, Measure, Analyze, Improve, Control) – Digunakan untuk meningkatkan proses yang sudah ada dengan mengidentifikasi penyebab utama cacat dan menghilangkannya.
- DMADV (Define, Measure, Analyze, Design, Verify) – Digunakan untuk merancang produk atau proses baru yang memiliki kualitas tinggi sejak awal.

Karena fokusnya pada peningkatan kualitas dan pengurangan variasi, metode 6-Sigma sering diterapkan dalam berbagai industri, seperti manufaktur, kesehatan, keuangan, dan layanan pelanggan, untuk memastikan efisiensi yang lebih tinggi dan hasil yang lebih konsisten.

1.5 Rumus dalam 6-Sigma

6-Sigma menggunakan pendekatan berbasis statistik untuk mengukur seberapa baik suatu proses beroperasi dengan meminimalkan cacat atau variasi. Salah satu rumus utama dalam 6-Sigma adalah kapabilitas proses, yang dinyatakan dalam bentuk Sigma Level.

1.5.1 1. Rumus Sigma Level

Sigma level dihitung menggunakan rumus:

\[ Z = \frac{USL - \mu}{\sigma} \] \[ Z = \frac{\mu - LSL}{\sigma} \]

Di mana:
- \(Z\) = Nilai sigma (Sigma Level)
- \(\mu\) = Mean (rata-rata proses)
- \(\sigma\) = Standar deviasi proses
- USL = Upper Specification Limit (Batas spesifikasi atas)
- LSL = Lower Specification Limit (Batas spesifikasi bawah)

Interpretasi Sigma Level:
- 1-Sigma → 690.000 cacat per juta peluang (DPMO) → 31% kualitas baik
- 2-Sigma → 308.000 cacat per juta peluang (DPMO) → 69% kualitas baik
- 3-Sigma → 66.800 cacat per juta peluang (DPMO) → 93,3% kualitas baik
- 4-Sigma → 6.210 cacat per juta peluang (DPMO) → 99,38% kualitas baik
- 5-Sigma → 230 cacat per juta peluang (DPMO) → 99,977% kualitas baik
- 6-Sigma → 3,4 cacat per juta peluang (DPMO) → 99,99966% kualitas baik

1.5.2 2. Rumus Defects Per Million Opportunities (DPMO)

Untuk mengukur jumlah cacat dalam suatu proses, digunakan rumus:

\[ DPMO = \left( \frac{Jumlah\ Cacat}{Jumlah\ Unit \times Peluang\ Cacat\ per\ Unit} \right) \times 1.000.000 \]

Di mana:
- Jumlah Cacat = Total jumlah kesalahan atau produk cacat yang ditemukan
- Jumlah Unit = Total produk yang diproduksi
- Peluang Cacat per Unit = Jumlah kemungkinan cacat dalam satu unit produk

1.6 Contoh Perhitungan 6-Sigma

Misalkan sebuah pabrik memproduksi 100.000 unit barang, dan dalam pemeriksaan ditemukan 500 cacat. Jika setiap unit memiliki 5 peluang cacat, maka nilai DPMO dihitung sebagai:

\[ DPMO = \left( \frac{500}{100.000 \times 5} \right) \times 1.000.000 \]

\[ DPMO = \left( \frac{500}{500.000} \right) \times 1.000.000 \]

\[ DPMO = 1.000 \]

Berdasarkan tabel Sigma Level, 1.000 DPMO berada di antara 5-Sigma dan 6-Sigma, yang berarti proses ini sudah memiliki kualitas yang sangat baik.

Dengan menggunakan rumus ini, perusahaan dapat menilai efektivitas prosesnya, mengidentifikasi penyebab variasi, dan mengambil tindakan perbaikan untuk mencapai standar 6-Sigma.

1.7 Perbandingan 3-Sigma (\(3\sigma\)) dan 6-Sigma (\(6\sigma\))

Berikut adalah tabel yang menjelaskan perbandingan dari 3-sigma (\(3\sigma\)) dan 6-sigma (\(6\sigma\)),ditampilkan dengan tabel agar lebih mudah dilihat mata dan lebih mudah untuk dipahami:

Aspek 3-Sigma (\(3\sigma\)) 6-Sigma (\(6\sigma\))
Konsep Utama Metode statistik untuk memantau stabilitas proses. Pendekatan berbasis data untuk mencapai kualitas hampir sempurna.
Jumlah Cacat (DPMO) Sekitar 66.800 cacat per satu juta peluang. Hanya 3,4 cacat per satu juta peluang.
Tingkat Keakuratan Sekitar 93,3% produk atau layanan bebas dari cacat. Memastikan kualitas hingga 99,99966% tanpa kesalahan.
Sensitivitas terhadap Variasi Masih rentan terhadap fluktuasi dalam proses produksi atau layanan. Mengontrol variasi secara ketat agar tetap konsisten.
Lingkup Penggunaan Cocok untuk sistem yang memiliki toleransi kesalahan lebih besar. Lebih sesuai untuk industri dengan standar kualitas tinggi seperti otomotif dan medis.
Pendekatan Kualitas Mendeteksi kesalahan setelah terjadi, lalu memperbaikinya. Menghindari kesalahan sejak awal dengan strategi perbaikan berkelanjutan.
Metode yang Digunakan Menggunakan batas kontrol ±3σ untuk mengidentifikasi penyimpangan. Mengandalkan metode DMAIC dan DMADV untuk optimalisasi proses.
Tujuan Utama Menjaga agar proses tetap dalam batas kendali. Mengembangkan proses agar mencapai hasil dengan cacat yang nyaris nol.

1.7.1 Kesimpulan:

  • 3-Sigma (\(3\sigma\)) masih memiliki tingkat kesalahan yang relatif tinggi sehingga lebih fleksibel dalam aplikasi di bidang tertentu.
  • 6-Sigma (\(6\sigma\)) memastikan kontrol kualitas yang jauh lebih ketat, ideal untuk industri yang memerlukan tingkat presisi tinggi.

2 Z-score dan T-score

Dalam analisis statistik, Z-score dan T-score merupakan dua ukuran yang digunakan untuk menilai posisi suatu data dalam distribusi serta menguji perbedaan antar kelompok. Keduanya berfungsi untuk menentukan seberapa jauh suatu nilai dari rata-rata dalam satuan standar deviasi, tetapi memiliki perbedaan dalam penerapannya.

Z-score digunakan ketika jumlah sampel cukup besar dan standar deviasi populasi diketahui, sehingga distribusi data dapat diasumsikan mengikuti distribusi normal. Sementara itu, T-score lebih sesuai untuk sampel kecil atau ketika standar deviasi populasi tidak diketahui, dengan mempertimbangkan ketidakpastian dalam estimasi.

Pemahaman mengenai Z-score dan T-score sangat penting dalam berbagai bidang, seperti penelitian akademik, pengambilan keputusan bisnis, dan analisis data, karena memungkinkan kita untuk menilai pola distribusi data serta membandingkan kelompok dengan lebih akurat. Berikut adalah penjelasan lebih rincinya:

2.1 Z-score

Z-score, atau dikenal juga sebagai standard score, adalah suatu ukuran statistik yang digunakan untuk menentukan sejauh mana suatu nilai menyimpang dari rata-rata dalam suatu distribusi data. Nilai ini dinyatakan dalam satuan standar deviasi, yang memungkinkan perbandingan antar data dalam skala yang berbeda.

Z-score menunjukkan apakah suatu data berada di atas atau di bawah rata-rata dan seberapa jauh dari rata-rata tersebut. Jika nilai Z-score positif, berarti data tersebut berada di atas rata-rata, sedangkan jika negatif, data tersebut berada di bawah rata-rata.

2.1.1 Interpretasi Z-Score

  • Z = 0 → Nilai data sama dengan rata-rata.
  • Z positif → Nilai data lebih besar dari rata-rata.
  • Z negatif → Nilai data lebih kecil dari rata-rata.
  • |Z| > 2 → Data cukup jauh dari rata-rata, sering dianggap sebagai outlier dalam beberapa analisis statistik.
  • |Z| > 3 → Data dianggap sebagai outlier yang signifikan.

Dengan menggunakan Z-score, kita dapat menilai apakah suatu data memiliki perilaku normal dalam distribusi atau menunjukkan pola yang tidak biasa.

2.1.2 Situasi di Mana Z-Score Perlu Digunakan

Z-score digunakan dalam berbagai situasi ketika kita perlu menganalisis posisi suatu data dalam distribusi, membandingkan data dari skala yang berbeda, atau mendeteksi nilai yang tidak biasa (outlier). Berikut adalah beberapa kondisi utama di mana Z-score sangat berguna:

1. Membandingkan Data dari Skala yang Berbeda

Ketika kita memiliki dua atau lebih kumpulan data dengan satuan atau skala yang berbeda, Z-score membantu menyamakan perbandingan.

Contoh:
- Seorang siswa mendapat 85 dalam ujian Matematika dan 78 dalam ujian Fisika.
- Rata-rata kelas untuk Matematika adalah 75 dengan standar deviasi 10, sedangkan rata-rata kelas untuk Fisika adalah 70 dengan standar deviasi 5.
- Dengan menghitung Z-score untuk kedua nilai, kita bisa menentukan dalam mata pelajaran mana siswa tersebut lebih unggul dibanding teman-temannya.

2. Menentukan Seberapa Jauh Suatu Nilai dari Rata-Rata

Z-score digunakan untuk mengetahui apakah suatu data jauh dari nilai rata-rata atau berada dalam distribusi normal.

Contoh:
- Jika sebuah mesin produksi menghasilkan botol air dengan rata-rata volume 500 ml dan standar deviasi 5 ml, maka botol dengan volume 490 ml memiliki Z-score negatif yang menunjukkan bahwa volumenya berada di bawah rata-rata.

3. Mendeteksi Outlier dalam Data

Outlier adalah data yang sangat berbeda dari kebanyakan nilai dalam distribusi. Dalam banyak kasus, nilai dengan Z-score lebih dari 3 atau kurang dari -3 dianggap sebagai outlier yang perlu dianalisis lebih lanjut.

Contoh:
- Jika kita menganalisis penghasilan bulanan karyawan di suatu perusahaan dan menemukan bahwa sebagian besar berada dalam rentang 5–10 juta rupiah, tetapi ada satu karyawan yang berpenghasilan 50 juta rupiah, Z-score dapat menunjukkan bahwa nilai ini merupakan outlier.

4. Mengonversi Data ke Distribusi Normal (Standarisasi Data)

Dalam analisis statistik dan pembelajaran mesin (machine learning), banyak metode memerlukan data yang berdistribusi normal. Jika data asli memiliki skala yang bervariasi, Z-score membantu mengubahnya menjadi distribusi standar dengan rata-rata 0 dan standar deviasi 1.

Contoh:
- Dalam analisis regresi atau algoritma pembelajaran mesin seperti K-Nearest Neighbors (KNN), data sering kali perlu dinormalisasi menggunakan Z-score agar fitur dengan skala besar tidak mendominasi model.

2.1.3 Kesimpulan

Z-score sangat bermanfaat dalam berbagai situasi, terutama ketika kita ingin:
Membandingkan data dengan skala berbeda
Mengetahui posisi suatu data dalam distribusi
Mendeteksi outlier dalam data
Melakukan standarisasi untuk analisis statistik lebih lanjut

Dengan menggunakan Z-score, kita bisa memahami data lebih dalam dan membuat keputusan berdasarkan informasi yang lebih objektif.

2.2 T-score

T-score, atau dikenal sebagai T-value, adalah ukuran statistik yang digunakan untuk menentukan posisi suatu nilai dalam distribusi data ketika ukuran sampel terbatas atau standar deviasi populasi tidak diketahui. T-score sering digunakan dalam uji hipotesis, terutama dalam uji-t (t-test), untuk membandingkan rata-rata suatu kelompok dengan populasi atau membandingkan dua kelompok berbeda.

T-score mirip dengan Z-score, tetapi digunakan ketika jumlah sampel kecil (n < 30) atau saat variabilitas populasi belum diketahui dengan pasti. Distribusi T memiliki ekor yang lebih tebal dibandingkan distribusi normal, yang berarti lebih cocok untuk menangani ketidakpastian dalam sampel kecil.

2.2.1 Interpretasi T-Score

  • T-score mendekati 0 → Nilai data tidak jauh dari rata-rata sampel.
  • T-score positif → Nilai data lebih besar dari rata-rata sampel.
  • T-score negatif → Nilai data lebih kecil dari rata-rata sampel.
  • T-score besar (baik positif maupun negatif) → Perbedaan antara sampel dan populasi cukup signifikan.

T-score sering digunakan dalam analisis statistik untuk menentukan apakah suatu perbedaan terjadi karena faktor acak atau memang menunjukkan pola yang nyata dalam data.

2.2.2 Situasi di Mana T-Score Perlu Digunakan

T-score digunakan dalam berbagai kondisi ketika data yang dianalisis memiliki keterbatasan dalam jumlah sampel atau ketika standar deviasi populasi tidak diketahui secara pasti. Berikut adalah beberapa situasi utama di mana T-score lebih tepat digunakan dibandingkan ukuran statistik lainnya:

1. Ketika Ukuran Sampel Kecil (n < 30)

T-score digunakan jika jumlah sampel yang tersedia relatif kecil, yaitu kurang dari 30 pengamatan. Dalam kondisi ini, distribusi normal mungkin tidak sepenuhnya berlaku, sehingga distribusi t lebih sesuai karena memperhitungkan ketidakpastian dalam estimasi parameter populasi.

Contoh:
- Sebuah perusahaan ingin menguji efektivitas pelatihan baru terhadap peningkatan produktivitas karyawan. Karena hanya 15 karyawan yang mengikuti pelatihan, T-score digunakan untuk mengukur perbedaan rata-rata sebelum dan sesudah pelatihan.

2. Ketika Standar Deviasi Populasi Tidak Diketahui

Jika standar deviasi populasi tidak tersedia atau sulit untuk dihitung, maka T-score lebih tepat digunakan dibandingkan Z-score. Ini karena T-score memperhitungkan variasi dalam sampel untuk memperkirakan standar deviasi populasi.

Contoh:
- Seorang peneliti ingin mengetahui apakah konsumsi suplemen tertentu meningkatkan daya ingat mahasiswa. Karena standar deviasi populasi tidak diketahui, ia menggunakan T-score untuk menguji apakah ada perbedaan signifikan antara kelompok yang mengonsumsi suplemen dan yang tidak.

3. Saat Melakukan Uji Hipotesis terhadap Rata-Rata

Dalam uji statistik seperti uji-t satu sampel, uji-t dua sampel independen, dan uji-t berpasangan, T-score digunakan untuk menentukan apakah terdapat perbedaan signifikan antara dua kelompok data.

Contoh:
- Sebuah laboratorium ingin membandingkan rata-rata tekanan darah pasien sebelum dan sesudah diberikan obat baru. Karena jumlah pasien dalam penelitian terbatas dan standar deviasi populasi tidak diketahui, analisis menggunakan T-score lebih sesuai.

4. Saat Menganalisis Perbedaan Antara Dua Kelompok Kecil

Jika ingin membandingkan dua kelompok kecil yang mungkin memiliki perbedaan rata-rata, T-score digunakan untuk mengevaluasi apakah perbedaan tersebut signifikan secara statistik atau hanya terjadi karena variabilitas acak dalam data.

Contoh:
- Sebuah sekolah ingin mengetahui apakah ada perbedaan skor ujian antara dua kelas yang diajar dengan metode pengajaran berbeda. Karena jumlah siswa di masing-masing kelas relatif kecil, uji-t dengan T-score digunakan untuk menganalisis perbedaannya.

2.2.3 Kesimpulan

T-score digunakan dalam situasi berikut:
Jumlah sampel kecil (n < 30)
Standar deviasi populasi tidak diketahui
Analisis uji hipotesis terhadap rata-rata
Perbandingan antara dua kelompok kecil

Dengan menggunakan T-score, analisis statistik menjadi lebih akurat dalam kondisi data yang terbatas, sehingga keputusan yang diambil berdasarkan data menjadi lebih valid.

2.3 Perbandingan Z-Score dan T-Score

Disajikan dalam bentuk tabel agar lebih mudah unuk dicermati dan dipahami, berikut adalah tabelnya:

Aspek Z-Score T-Score
Definisi Ukuran statistik yang menunjukkan seberapa jauh suatu nilai dari rata-rata dalam satuan standar deviasi berdasarkan distribusi normal. Ukuran statistik yang digunakan untuk mengukur posisi suatu nilai dalam distribusi ketika ukuran sampel kecil atau standar deviasi populasi tidak diketahui.
Kapan Digunakan Jika ukuran sampel besar (n ≥ 30) dan standar deviasi populasi diketahui. Jika ukuran sampel kecil (n < 30) atau standar deviasi populasi tidak diketahui.
Distribusi Menggunakan distribusi normal (z-distribution). Menggunakan distribusi t-Student, yang memiliki ekor lebih tebal untuk mengakomodasi ketidakpastian.
Rumus \(Z = \frac{x - \mu}{\sigma}\) \(T = \frac{x - \bar{x}}{s / \sqrt{n}}\)
Variabilitas Lebih rendah karena standar deviasi populasi diketahui. Lebih tinggi karena standar deviasi sampel digunakan sebagai estimasi standar deviasi populasi.
Penggunaan dalam Uji Hipotesis Uji-Z untuk membandingkan sampel terhadap populasi saat standar deviasi populasi diketahui. Uji-T digunakan untuk membandingkan sampel terhadap populasi atau antar dua kelompok saat standar deviasi populasi tidak diketahui.

Tabel ini memberikan perbandingan antara Z-score dan T-score, membantu dalam menentukan metode statistik yang paling tepat sesuai dengan karakteristik data yang dianalisis.

LS0tDQp0aXRsZTogIlByb2JhYmlsaXR5IERpc3RyaWJ1dGlvbiINCnN1YnRpdGxlOiAiVGVrbmlrIFN1cnZleSBkYW4gU2FtcGxpbmciDQphdXRob3I6IA0KICAtICJDaGVsbG8gRnJoaW5vIE1pa2UgTWFuZG9sYW5nICg1MjI0MDAzMSkiDQpkYXRlOiAgImByIGZvcm1hdChTeXMuRGF0ZSgpLCAnJUIgJWQsICVZJylgIg0Kb3V0cHV0Og0KICBybWRmb3JtYXRzOjpkb3duY3V0ZTogICAjIGh0dHBzOi8vZ2l0aHViLmNvbS9qdWJhL3JtZGZvcm1hdHMNCiAgICBzZWxmX2NvbnRhaW5lZDogdHJ1ZQ0KICAgIHRodW1ibmFpbHM6IHRydWUNCiAgICBsaWdodGJveDogdHJ1ZQ0KICAgIGdhbGxlcnk6IHRydWUNCiAgICBudW1iZXJfc2VjdGlvbnM6IHRydWUNCiAgICBsaWJfZGlyOiBsaWJzDQogICAgZGZfcHJpbnQ6ICJwYWdlZCINCiAgICBjb2RlX2ZvbGRpbmc6ICJzaG93Ig0KICAgIGNvZGVfZG93bmxvYWQ6IHllcw0KLS0tDQoNCjxzdHlsZT4NCiAgYm9keSB7DQogICAgdGV4dC1hbGlnbjoganVzdGlmeTsNCiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsNCiAgICBvdmVyZmxvdy14OiBhdXRvOw0KICAgIGZvbnQtZmFtaWx5OiBjdXJzaXZlOw0KICB9DQo8L3N0eWxlPg0KDQojICQzXHNpZ21hJCBkYW4gJDZcc2lnbWEkDQoNCkJlcmlrdXQgYWRhbGFoIHZpZGVvIHBlbmplbGFzYW4gYXdhbCBtZW5nZW5haSBzaWdtYSAoJFxzaWdtYSQpLCB5YW5nIG11bGFpIGRhcmkgMS1zaWdtYSAoJDFcc2lnbWEkKSBoaW5nZ2EgNi1zaWdtYSAoJDZcc2lnbWEkKSwNCg0KYGBge3IgZWNobz1GQUxTRSwgcmVzdWx0cz0nYXNpcyd9DQprbml0cjo6aW5jbHVkZV91cmwoImh0dHBzOi8veW91dHViZS5jb20vZW1iZWQvMHNlZFJzZVlBOVk/c2k9ZGl5M2FFUTlucExLUHlzTSIpDQpgYGANClBlbmplbGFzYW4gbGViaWggcmluY2kgbWVuZ2VuYWkgMy1zaWdtYSgkM1xzaWdtYSQpIGRhbiA2LXNpZ21hICgkNlxzaWdtYSQpIHNlYmFnYWkgYmVyaWt1dDoNCg0KIyMgKipQZW5qZWxhc2FuICQzXHNpZ21hJCoqDQoNCioqMy1TaWdtYSAoJDNcc2lnbWEkKSoqIG1lcnVwYWthbiBzZWJ1YWgga29uc2VwIGRhbGFtIHN0YXRpc3RpayB5YW5nIGRpZ3VuYWthbiB1bnR1ayBtZW5ndWt1ciB0aW5na2F0IHZhcmlhc2kgYXRhdSBwZW55ZWJhcmFuIGRhdGEgZGFsYW0gc3VhdHUgZGlzdHJpYnVzaS4gSXN0aWxhaCAiU2lnbWEiIChcKFxzaWdtYVwpKSBzZW5kaXJpIG1lcnVqdWsgcGFkYSAqKnN0YW5kYXIgZGV2aWFzaSoqLCB5YWl0dSB1a3VyYW4geWFuZyBtZW51bmp1a2thbiBzZWJlcmFwYSBqYXVoIHN1YXR1IGRhdGEgbWVueWltcGFuZyBkYXJpIHJhdGEtcmF0YSBwb3B1bGFzaS4gIA0KDQpEYWxhbSBwZW5kZWthdGFuIDMtU2lnbWEsIG5pbGFpIHlhbmcgYmVyYWRhIGRhbGFtIHJlbnRhbmcgKip0aWdhIGthbGkgc3RhbmRhciBkZXZpYXNpIGRhcmkgcmF0YS1yYXRhKiogZGlhbmdnYXAgc2ViYWdhaSBiYWdpYW4gZGFyaSBkaXN0cmlidXNpIG5vcm1hbCwgc2VkYW5na2FuIGRhdGEgeWFuZyBiZXJhZGEgZGkgbHVhciBiYXRhcyB0ZXJzZWJ1dCBzZXJpbmcga2FsaSBkaWthdGVnb3Jpa2FuIHNlYmFnYWkgKiphbm9tYWxpIGF0YXUgb3V0bGllcioqLiBEZW5nYW4ga2F0YSBsYWluLCBrb25zZXAgaW5pIG1lbWJhbnR1IGRhbGFtIG1lbmRldGVrc2kgcGVueWltcGFuZ2FuIGF0YXUga2VnYW5qaWxhbiBkYWxhbSBzdWF0dSBwcm9zZXMgYXRhdSBkYXRhc2V0LiAgDQoNCkRhbGFtIGRpc3RyaWJ1c2kgbm9ybWFsLCBwcmluc2lwIDMtU2lnbWEgbWVudW5qdWtrYW4gYmFod2E6ICANCi0gU2VraXRhciAqKjY4JSoqIGRhcmkgZGF0YSBiZXJhZGEgZGFsYW0gKirCsTEgU2lnbWEqKiBkYXJpIHJhdGEtcmF0YS4gIA0KLSBTZWtpdGFyICoqOTUlKiogZGFyaSBkYXRhIGJlcmFkYSBkYWxhbSAqKsKxMiBTaWdtYSoqIGRhcmkgcmF0YS1yYXRhLiAgDQotIFNla2l0YXIgKio5OSw3JSoqIGRhcmkgZGF0YSBiZXJhZGEgZGFsYW0gKirCsTMgU2lnbWEqKiBkYXJpIHJhdGEtcmF0YS4gIA0KDQpLYXJlbmEgaGFtcGlyIHNlbXVhIGRhdGEgYmVyYWRhIGRhbGFtIHJlbnRhbmcgKip0aWdhIHN0YW5kYXIgZGV2aWFzaSoqLCBuaWxhaSB5YW5nIG1lbGFtcGF1aSBiYXRhcyBpbmkgZGlhbmdnYXAgc2ViYWdhaSBpbmRpa2FzaSBiYWh3YSBhZGEgc2VzdWF0dSB5YW5nIHRpZGFrIGJpYXNhIGF0YXUgbWVtZXJsdWthbiBwZXJoYXRpYW4gbGViaWggbGFuanV0LiBPbGVoIGthcmVuYSBpdHUsIG1ldG9kZSBpbmkgc2VyaW5nIGRpZ3VuYWthbiBkYWxhbSBiZXJiYWdhaSBiaWRhbmcsIHNlcGVydGkgKipwZW5nZW5kYWxpYW4ga3VhbGl0YXMsIGFuYWxpc2lzIHJpc2lrbywgZGFuIGRldGVrc2kgYW5vbWFsaSoqIGRhbGFtIGRhdGEgc3RhdGlzdGlrLg0KDQoqKjMtU2lnbWEgKCQzXHNpZ21hJCkgbWVtaWxpa2kgcnVtdXMqKiB5YW5nIGRpZ3VuYWthbiB1bnR1ayBtZW5lbnR1a2FuIGJhdGFzIG5vcm1hbCBkYWxhbSBzdWF0dSBkaXN0cmlidXNpIGRhdGEuIFJ1bXVzIGluaSBtZW1iYW50dSBtZW5naWRlbnRpZmlrYXNpICoqYmF0YXMgYXRhcyBkYW4gYmF0YXMgYmF3YWgqKiB1bnR1ayBtZW5kZXRla3NpIG91dGxpZXIgYXRhdSBwZW55aW1wYW5nYW4gZGFsYW0gc3VhdHUgcHJvc2VzLg0KDQojIyAqKlJ1bXVzIDMtU2lnbWEgKCQzXHNpZ21hJCkqKg0KVW50dWsgbWVuZW50dWthbiBiYXRhcyBrb250cm9sIGRhbGFtIHBlbmRla2F0YW4gKiozLVNpZ21hKiosIGRpZ3VuYWthbiBydW11czoNCg0KXFsNCkJhdGFzIEF0YXMgPSBcbXUgKyAzXHNpZ21hDQpcXQ0KDQpcWw0KQmF0YXMgQmF3YWggPSBcbXUgLSAzXHNpZ21hDQpcXQ0KDQpEaSBtYW5hOg0KDQotICoqXChcbXVcKSoqID0gTWVhbiAocmF0YS1yYXRhIGRhdGEpDQotICoqXChcc2lnbWFcKSoqID0gU3RhbmRhciBkZXZpYXNpICh1a3VyYW4gc2ViYXJhbiBkYXRhKQ0KLSAqKjMqKiA9IEZha3RvciBza2FsYSB1bnR1ayBtZW5jYWt1cCA5OSw3MyUgZGFyaSBkaXN0cmlidXNpIG5vcm1hbA0KDQojIyMgKipLZWd1bmFhbiBSdW11cyAzLVNpZ21hICgkM1xzaWdtYSQpKioNCjEuICoqUGVuZ2VuZGFsaWFuIEt1YWxpdGFzIChRdWFsaXR5IENvbnRyb2wpOioqIE1lbmdpZGVudGlmaWthc2kgcHJvZHVrIGNhY2F0IGJlcmRhc2Fya2FuIGJhdGFzIGtvbnRyb2wuDQoyLiAqKkRldGVrc2kgQW5vbWFsaToqKiBNZW5naWRlbnRpZmlrYXNpIG5pbGFpIHlhbmcgbWVueWltcGFuZyBkYXJpIHRyZW4gbm9ybWFsLg0KMy4gKipQZW5nYW1iaWxhbiBLZXB1dHVzYW46KiogTWVuZW50dWthbiBhcGFrYWggc3VhdHUgdmFyaWFzaSBkYWxhbSBwcm9zZXMgbWFzaWggZGFwYXQgZGl0ZXJpbWEgYXRhdSB0aWRhay4NCg0KUnVtdXMgJDNcc2lnbWEkIHNhbmdhdCBiZXJtYW5mYWF0IGRhbGFtIGJlcmJhZ2FpIGJpZGFuZyBzZXBlcnRpIG1hbnVmYWt0dXIsIGtldWFuZ2FuLCBkYW4gYW5hbGlzaXMgZGF0YS4NCg0KIyMgKipDb250b2ggUGVuZ2d1bmFhbiAzLVNpZ21hICgkM1xzaWdtYSQpIGRhbGFtIEJlcmJhZ2FpIEJpZGFuZyoqICANCg0KKioxLiBQZW5nZW5kYWxpYW4gS3VhbGl0YXMgZGFsYW0gTWFudWZha3R1cioqICANCg0KU2VidWFoIHBhYnJpayBtZW1wcm9kdWtzaSBib3RvbCBwbGFzdGlrIGRlbmdhbiB0aW5nZ2kgcmF0YS1yYXRhICoqMjAgY20qKiBkYW4gc3RhbmRhciBkZXZpYXNpICoqMCw1IGNtKiouIERlbmdhbiBtZW5nZ3VuYWthbiBtZXRvZGUgMy1TaWdtYSwgYmF0YXMga29udHJvbCBwcm9kdWtzaSBkaXRlbnR1a2FuIHNlYmFnYWk6ICANCg0KXFsNCkJhdGFzIEF0YXMgPSAyMCArICgzIFx0aW1lcyAwLDUpID0gMjEsNSBcdGV4dHsgY219DQpcXQ0KDQpcWw0KQmF0YXMgQmF3YWggPSAyMCAtICgzIFx0aW1lcyAwLDUpID0gMTgsNSBcdGV4dHsgY219DQpcXQ0KDQpKaWthIGRhbGFtIGluc3Bla3NpIGRpdGVtdWthbiBib3RvbCBkZW5nYW4gdGluZ2dpICoqZGkgYmF3YWggMTgsNSBjbSBhdGF1IGRpIGF0YXMgMjEsNSBjbSoqLCBtYWthIGJvdG9sIHRlcnNlYnV0IGRpYW5nZ2FwICoqY2FjYXQgcHJvZHVrc2kqKiBkYW4gcGVybHUgZGlsYWt1a2FuIGV2YWx1YXNpIGxlYmloIGxhbmp1dC4NCg0KDQoqKjIuIERldGVrc2kgQW5vbWFsaSBkYWxhbSBLZXVhbmdhbioqICANCg0KU2VidWFoIGJhbmsgbWVuZ2FuYWxpc2lzIHRyYW5zYWtzaSBuYXNhYmFoIHVudHVrIG1lbmRldGVrc2kga2VjdXJhbmdhbi4gSmlrYSByYXRhLXJhdGEgdHJhbnNha3NpIGhhcmlhbiBzZW9yYW5nIG5hc2FiYWggYWRhbGFoICoqUnA1IGp1dGEqKiBkZW5nYW4gc3RhbmRhciBkZXZpYXNpICoqUnA1MDAgcmlidSoqLCBtYWthIGJhdGFzIDMtU2lnbWEgZGloaXR1bmcgc2ViYWdhaTogIA0KDQpcWw0KQmF0YXMgQXRhcyA9IDUuMDAwLjAwMCArICgzIFx0aW1lcyA1MDAuMDAwKSA9IDYuNTAwLjAwMA0KXF0NCg0KXFsNCkJhdGFzIEJhd2FoID0gNS4wMDAuMDAwIC0gKDMgXHRpbWVzIDUwMC4wMDApID0gMy41MDAuMDAwDQpcXQ0KDQpKaWthIGFkYSB0cmFuc2Frc2kgeWFuZyAqKmxlYmloIGRhcmkgUnA2LDUganV0YSBhdGF1IGt1cmFuZyBkYXJpIFJwMyw1IGp1dGEqKiwgc2lzdGVtIGFrYW4gbWVuYW5kYWlueWEgc2ViYWdhaSAqKnBvdGVuc2kgdHJhbnNha3NpIG1lbmN1cmlnYWthbioqIGRhbiBha2FuIGRpbGFrdWthbiBpbnZlc3RpZ2FzaSBsZWJpaCBsYW5qdXQuDQoNCg0KKiozLiBBbmFsaXNpcyBQZXJmb3JtYSBNYWhhc2lzd2EqKiANCg0KRGkgc2VidWFoIHVuaXZlcnNpdGFzLCBuaWxhaSByYXRhLXJhdGEgdWppYW4gbWF0YSBrdWxpYWggc3RhdGlzdGlrIGFkYWxhaCAqKjc1KiogZGVuZ2FuIHN0YW5kYXIgZGV2aWFzaSAqKjEwKiouIERlbmdhbiBtZW5nZ3VuYWthbiBwZW5kZWthdGFuIDMtU2lnbWEsIGJhdGFzIG5pbGFpIG5vcm1hbCBhZGFsYWg6ICANCg0KXFsNCkJhdGFzIEF0YXMgPSA3NSArICgzIFx0aW1lcyAxMCkgPSAxMDUNClxdDQoNClxbDQpCYXRhcyBCYXdhaCA9IDc1IC0gKDMgXHRpbWVzIDEwKSA9IDQ1DQpcXQ0KDQpLYXJlbmEgbmlsYWkgbWFrc2ltdW0gYWRhbGFoICoqMTAwKiosIG1ha2EgbmlsYWkgZGkgYXRhcyAqKjEwMCoqIHRpZGFrIHJlbGV2YW4uIE5hbXVuLCBqaWthIGFkYSBtYWhhc2lzd2EgeWFuZyBtZW5kYXBhdGthbiBuaWxhaSBkaSBiYXdhaCAqKjQ1KiosIG1ha2EgaWEgbXVuZ2tpbiBtZW1lcmx1a2FuICoqYmltYmluZ2FuIHRhbWJhaGFuKiogdW50dWsgbWVuaW5na2F0a2FuIHBlbWFoYW1hbm55YSB0ZXJoYWRhcCBtYXRlcmkuDQoNCg0KKio0LiBQZW1hbnRhdWFuIFdha3R1IFBlbmdpcmltYW4gZGFsYW0gTG9naXN0aWsqKiAgDQoNClNlYnVhaCBwZXJ1c2FoYWFuIGVrc3BlZGlzaSBtZW5jYXRhdCB3YWt0dSByYXRhLXJhdGEgcGVuZ2lyaW1hbiBiYXJhbmcgYWRhbGFoICoqNDggamFtKiogZGVuZ2FuIHN0YW5kYXIgZGV2aWFzaSAqKjYgamFtKiouIE1ha2EgYmF0YXMgMy1TaWdtYSBhZGFsYWg6ICANCg0KXFsNCkJhdGFzIEF0YXMgPSA0OCArICgzIFx0aW1lcyA2KSA9IDY2IFx0ZXh0eyBqYW19DQpcXQ0KDQpcWw0KQmF0YXMgQmF3YWggPSA0OCAtICgzIFx0aW1lcyA2KSA9IDMwIFx0ZXh0eyBqYW19DQpcXQ0KDQpKaWthIGFkYSBwYWtldCB5YW5nIGRpa2lyaW0gZGFsYW0gKiprdXJhbmcgZGFyaSAzMCBqYW0qKiBhdGF1ICoqbGViaWggZGFyaSA2NiBqYW0qKiwgbWFrYSBwYWtldCB0ZXJzZWJ1dCBha2FuIGRpdGFuZGFpIHNlYmFnYWkgKiprZWx1YXIgZGFyaSBzdGFuZGFyIG9wZXJhc2lvbmFsKiosIHNlaGluZ2dhIHBlcmx1IGRpbGFrdWthbiBldmFsdWFzaSB0ZXJoYWRhcCBwZW55ZWJhYiBrZXRlcmxhbWJhdGFuIGF0YXUga2VjZXBhdGFuIHlhbmcgdGlkYWsgYmlhc2EuDQoNCioqS2VzaW1wdWxhbiBkYXJpIGNvbnRvaDoqKg0KDQpEZW5nYW4gcGVuZGVrYXRhbiAqKjMtU2lnbWEgKCQzXHNpZ21hJCkqKiwgYmVyYmFnYWkgaW5kdXN0cmkgZGFwYXQgbWVuZ2lkZW50aWZpa2FzaSBwb2xhIHlhbmcgbWVueWltcGFuZyBkYXJpIHN0YW5kYXIgbm9ybWFsIGRhbiBtZW5nYW1iaWwgdGluZGFrYW4ga29yZWt0aWYgeWFuZyBkaXBlcmx1a2FuLg0KDQojIyAqKlBlbmplbGFzYW4gJDZcc2lnbWEkKioNCg0KNi1TaWdtYSBtZXJ1cGFrYW4gc2VidWFoIG1ldG9kb2xvZ2kgc3RhdGlzdGlrIHlhbmcgZGlndW5ha2FuIHVudHVrICoqbWVuZ29wdGltYWxrYW4ga3VhbGl0YXMgc3VhdHUgcHJvc2VzIGRlbmdhbiBtZW1pbmltYWxrYW4gdmFyaWFzaSBkYW4gY2FjYXQqKi4gSXN0aWxhaCAqKiJTaWdtYSIqKiAoXChcc2lnbWFcKSkgZGFsYW0gc3RhdGlzdGlrIG1lcnVqdWsgcGFkYSAqKnN0YW5kYXIgZGV2aWFzaSoqLCB5YW5nIG1lbnVuanVra2FuIHNlYmVyYXBhIGphdWggc3VhdHUgZGF0YSBtZW55aW1wYW5nIGRhcmkgcmF0YS1yYXRhLiAgDQoNCkRhbGFtIHBlbmRla2F0YW4gNi1TaWdtYSwgcHJvc2VzIHlhbmcgYmVyamFsYW4gZGVuZ2FuIGJhaWsgYWRhbGFoIHlhbmcgbWVtaWxpa2kgKip0aW5na2F0IGNhY2F0IHlhbmcgc2FuZ2F0IHJlbmRhaCoqLCB5YWl0dSAqKmhhbnlhIDMsNCBjYWNhdCBwZXIgc2F0dSBqdXRhIHBlbHVhbmcqKi4gRGVuZ2FuIGthdGEgbGFpbiwgdGluZ2thdCBrZWJlcmhhc2lsYW4gcHJvc2VzIG1lbmNhcGFpICoqOTksOTk5NjYlKiosIHNlaGluZ2dhIGhhbXBpciBzZW11YSBoYXNpbCB5YW5nIGRpcGVyb2xlaCBiZXJhZGEgZGFsYW0gYmF0YXMga29udHJvbCB5YW5nIHRlbGFoIGRpdGVudHVrYW4uICANCg0KNi1TaWdtYSBtZW5nZ3VuYWthbiBwZW5kZWthdGFuIGJlcmJhc2lzICoqZGF0YSBkYW4gYW5hbGlzaXMgc3RhdGlzdGlrKiogdW50dWsgbWVuZ2lkZW50aWZpa2FzaSBkYW4gbWVuZ2hpbGFuZ2thbiBwZW55ZWJhYiB2YXJpYXNpIGRhbGFtIHN1YXR1IHNpc3RlbS4gTWV0b2RvbG9naSBpbmkgc2VyaW5nIGRpdGVyYXBrYW4gZGFsYW0gKipwZW5nZW5kYWxpYW4ga3VhbGl0YXMsIHBlbmluZ2thdGFuIGVmaXNpZW5zaSBvcGVyYXNpb25hbCwgZGFuIHBlbmdhbWJpbGFuIGtlcHV0dXNhbiBiZXJiYXNpcyBkYXRhKiouICANCg0KUGVuZGVrYXRhbiB1dGFtYSBkYWxhbSA2LVNpZ21hIHRlcmJhZ2kgbWVuamFkaSBkdWEgbWV0b2RlOiAgDQotICoqRE1BSUMgKERlZmluZSwgTWVhc3VyZSwgQW5hbHl6ZSwgSW1wcm92ZSwgQ29udHJvbCkqKiDigJMgRGlndW5ha2FuIHVudHVrICoqbWVuaW5na2F0a2FuKiogcHJvc2VzIHlhbmcgc3VkYWggYWRhIGRlbmdhbiBtZW5naWRlbnRpZmlrYXNpIHBlbnllYmFiIHV0YW1hIGNhY2F0IGRhbiBtZW5naGlsYW5na2FubnlhLiAgDQotICoqRE1BRFYgKERlZmluZSwgTWVhc3VyZSwgQW5hbHl6ZSwgRGVzaWduLCBWZXJpZnkpKiog4oCTIERpZ3VuYWthbiB1bnR1ayAqKm1lcmFuY2FuZyoqIHByb2R1ayBhdGF1IHByb3NlcyBiYXJ1IHlhbmcgbWVtaWxpa2kga3VhbGl0YXMgdGluZ2dpIHNlamFrIGF3YWwuICANCg0KS2FyZW5hIGZva3VzbnlhIHBhZGEgcGVuaW5na2F0YW4ga3VhbGl0YXMgZGFuIHBlbmd1cmFuZ2FuIHZhcmlhc2ksIG1ldG9kZSA2LVNpZ21hIHNlcmluZyBkaXRlcmFwa2FuIGRhbGFtIGJlcmJhZ2FpIGluZHVzdHJpLCBzZXBlcnRpICoqbWFudWZha3R1ciwga2VzZWhhdGFuLCBrZXVhbmdhbiwgZGFuIGxheWFuYW4gcGVsYW5nZ2FuKiosIHVudHVrIG1lbWFzdGlrYW4gZWZpc2llbnNpIHlhbmcgbGViaWggdGluZ2dpIGRhbiBoYXNpbCB5YW5nIGxlYmloIGtvbnNpc3Rlbi4NCg0KIyMgKipSdW11cyBkYWxhbSA2LVNpZ21hKiogIA0KDQo2LVNpZ21hIG1lbmdndW5ha2FuIHBlbmRla2F0YW4gYmVyYmFzaXMgc3RhdGlzdGlrIHVudHVrIG1lbmd1a3VyIHNlYmVyYXBhIGJhaWsgc3VhdHUgcHJvc2VzIGJlcm9wZXJhc2kgZGVuZ2FuICoqbWVtaW5pbWFsa2FuIGNhY2F0IGF0YXUgdmFyaWFzaSoqLiBTYWxhaCBzYXR1IHJ1bXVzIHV0YW1hIGRhbGFtIDYtU2lnbWEgYWRhbGFoICoqa2FwYWJpbGl0YXMgcHJvc2VzKiosIHlhbmcgZGlueWF0YWthbiBkYWxhbSBiZW50dWsgKipTaWdtYSBMZXZlbCoqLiAgDQoNCiMjIyAqKjEuIFJ1bXVzIFNpZ21hIExldmVsKiogIA0KU2lnbWEgbGV2ZWwgZGloaXR1bmcgbWVuZ2d1bmFrYW4gcnVtdXM6ICANCg0KXFsNClogPSBcZnJhY3tVU0wgLSBcbXV9e1xzaWdtYX0NClxdDQpcWw0KWiA9IFxmcmFje1xtdSAtIExTTH17XHNpZ21hfQ0KXF0NCg0KRGkgbWFuYTogIA0KLSAqKlwoWlwpKiogPSBOaWxhaSBzaWdtYSAoU2lnbWEgTGV2ZWwpICANCi0gKipcKFxtdVwpKiogPSBNZWFuIChyYXRhLXJhdGEgcHJvc2VzKSAgDQotICoqXChcc2lnbWFcKSoqID0gU3RhbmRhciBkZXZpYXNpIHByb3NlcyAgDQotICoqVVNMKiogPSBVcHBlciBTcGVjaWZpY2F0aW9uIExpbWl0IChCYXRhcyBzcGVzaWZpa2FzaSBhdGFzKSAgDQotICoqTFNMKiogPSBMb3dlciBTcGVjaWZpY2F0aW9uIExpbWl0IChCYXRhcyBzcGVzaWZpa2FzaSBiYXdhaCkgIA0KDQoqKkludGVycHJldGFzaSBTaWdtYSBMZXZlbDoqKiAgDQotICoqMS1TaWdtYSoqIOKGkiA2OTAuMDAwIGNhY2F0IHBlciBqdXRhIHBlbHVhbmcgKERQTU8pIOKGkiAqKjMxJSBrdWFsaXRhcyBiYWlrKiogIA0KLSAqKjItU2lnbWEqKiDihpIgMzA4LjAwMCBjYWNhdCBwZXIganV0YSBwZWx1YW5nIChEUE1PKSDihpIgKio2OSUga3VhbGl0YXMgYmFpayoqICANCi0gKiozLVNpZ21hKiog4oaSIDY2LjgwMCBjYWNhdCBwZXIganV0YSBwZWx1YW5nIChEUE1PKSDihpIgKio5MywzJSBrdWFsaXRhcyBiYWlrKiogIA0KLSAqKjQtU2lnbWEqKiDihpIgNi4yMTAgY2FjYXQgcGVyIGp1dGEgcGVsdWFuZyAoRFBNTykg4oaSICoqOTksMzglIGt1YWxpdGFzIGJhaWsqKiAgDQotICoqNS1TaWdtYSoqIOKGkiAyMzAgY2FjYXQgcGVyIGp1dGEgcGVsdWFuZyAoRFBNTykg4oaSICoqOTksOTc3JSBrdWFsaXRhcyBiYWlrKiogIA0KLSAqKjYtU2lnbWEqKiDihpIgMyw0IGNhY2F0IHBlciBqdXRhIHBlbHVhbmcgKERQTU8pIOKGkiAqKjk5LDk5OTY2JSBrdWFsaXRhcyBiYWlrKiogIA0KDQojIyMgKioyLiBSdW11cyBEZWZlY3RzIFBlciBNaWxsaW9uIE9wcG9ydHVuaXRpZXMgKERQTU8pKiogIA0KVW50dWsgbWVuZ3VrdXIganVtbGFoIGNhY2F0IGRhbGFtIHN1YXR1IHByb3NlcywgZGlndW5ha2FuIHJ1bXVzOiAgDQoNClxbDQpEUE1PID0gXGxlZnQoIFxmcmFje0p1bWxhaFwgQ2FjYXR9e0p1bWxhaFwgVW5pdCBcdGltZXMgUGVsdWFuZ1wgQ2FjYXRcIHBlclwgVW5pdH0gXHJpZ2h0KSBcdGltZXMgMS4wMDAuMDAwDQpcXQ0KDQpEaSBtYW5hOiAgDQotICoqSnVtbGFoIENhY2F0KiogPSBUb3RhbCBqdW1sYWgga2VzYWxhaGFuIGF0YXUgcHJvZHVrIGNhY2F0IHlhbmcgZGl0ZW11a2FuICANCi0gKipKdW1sYWggVW5pdCoqID0gVG90YWwgcHJvZHVrIHlhbmcgZGlwcm9kdWtzaSAgDQotICoqUGVsdWFuZyBDYWNhdCBwZXIgVW5pdCoqID0gSnVtbGFoIGtlbXVuZ2tpbmFuIGNhY2F0IGRhbGFtIHNhdHUgdW5pdCBwcm9kdWsgIA0KDQojIyAqKkNvbnRvaCBQZXJoaXR1bmdhbiA2LVNpZ21hKiogIA0KTWlzYWxrYW4gc2VidWFoIHBhYnJpayBtZW1wcm9kdWtzaSAqKjEwMC4wMDAgdW5pdCoqIGJhcmFuZywgZGFuIGRhbGFtIHBlbWVyaWtzYWFuIGRpdGVtdWthbiAqKjUwMCBjYWNhdCoqLiBKaWthIHNldGlhcCB1bml0IG1lbWlsaWtpICoqNSBwZWx1YW5nIGNhY2F0KiosIG1ha2EgbmlsYWkgRFBNTyBkaWhpdHVuZyBzZWJhZ2FpOiAgDQoNClxbDQpEUE1PID0gXGxlZnQoIFxmcmFjezUwMH17MTAwLjAwMCBcdGltZXMgNX0gXHJpZ2h0KSBcdGltZXMgMS4wMDAuMDAwDQpcXQ0KDQpcWw0KRFBNTyA9IFxsZWZ0KCBcZnJhY3s1MDB9ezUwMC4wMDB9IFxyaWdodCkgXHRpbWVzIDEuMDAwLjAwMA0KXF0NCg0KXFsNCkRQTU8gPSAxLjAwMA0KXF0NCg0KQmVyZGFzYXJrYW4gdGFiZWwgU2lnbWEgTGV2ZWwsICoqMS4wMDAgRFBNTyoqIGJlcmFkYSBkaSBhbnRhcmEgKio1LVNpZ21hIGRhbiA2LVNpZ21hKiosIHlhbmcgYmVyYXJ0aSBwcm9zZXMgaW5pIHN1ZGFoIG1lbWlsaWtpIGt1YWxpdGFzIHlhbmcgc2FuZ2F0IGJhaWsuICANCg0KDQpEZW5nYW4gbWVuZ2d1bmFrYW4gcnVtdXMgaW5pLCBwZXJ1c2FoYWFuIGRhcGF0ICoqbWVuaWxhaSBlZmVrdGl2aXRhcyBwcm9zZXNueWEqKiwgbWVuZ2lkZW50aWZpa2FzaSBwZW55ZWJhYiB2YXJpYXNpLCBkYW4gbWVuZ2FtYmlsIHRpbmRha2FuIHBlcmJhaWthbiB1bnR1ayBtZW5jYXBhaSBzdGFuZGFyIDYtU2lnbWEuDQoNCiMjICoqUGVyYmFuZGluZ2FuIDMtU2lnbWEgKCQzXHNpZ21hJCkgZGFuIDYtU2lnbWEgKCQ2XHNpZ21hJCkqKiAgDQpCZXJpa3V0IGFkYWxhaCB0YWJlbCB5YW5nIG1lbmplbGFza2FuIHBlcmJhbmRpbmdhbiBkYXJpIDMtc2lnbWEgKCQzXHNpZ21hJCkgZGFuIDYtc2lnbWEgKCQ2XHNpZ21hJCksZGl0YW1waWxrYW4gZGVuZ2FuIHRhYmVsIGFnYXIgbGViaWggbXVkYWggZGlsaWhhdCBtYXRhIGRhbiBsZWJpaCBtdWRhaCB1bnR1ayBkaXBhaGFtaToNCg0KfCAqKkFzcGVrKip8ICoqMy1TaWdtYSAoJDNcc2lnbWEkKSoqfCAqKjYtU2lnbWEgKCQ2XHNpZ21hJCkqKnwNCnwtLS0tLS0tLS0tfC0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXwNCnwgKipLb25zZXAgVXRhbWEqKiAgICAgICAgICB8IE1ldG9kZSBzdGF0aXN0aWsgdW50dWsgbWVtYW50YXUgc3RhYmlsaXRhcyBwcm9zZXMuIHwgUGVuZGVrYXRhbiBiZXJiYXNpcyBkYXRhIHVudHVrIG1lbmNhcGFpIGt1YWxpdGFzIGhhbXBpciBzZW1wdXJuYS4gfA0KfCAqKkp1bWxhaCBDYWNhdCAoRFBNTykqKiAgIHwgU2VraXRhciAqKjY2LjgwMCBjYWNhdCoqIHBlciBzYXR1IGp1dGEgcGVsdWFuZy4gfCBIYW55YSAqKjMsNCBjYWNhdCoqIHBlciBzYXR1IGp1dGEgcGVsdWFuZy4gfA0KfCAqKlRpbmdrYXQgS2Vha3VyYXRhbioqICAgIHwgU2VraXRhciAqKjkzLDMlKiogcHJvZHVrIGF0YXUgbGF5YW5hbiBiZWJhcyBkYXJpIGNhY2F0LiB8IE1lbWFzdGlrYW4ga3VhbGl0YXMgaGluZ2dhICoqOTksOTk5NjYlKiogdGFucGEga2VzYWxhaGFuLiB8DQp8ICoqU2Vuc2l0aXZpdGFzIHRlcmhhZGFwIFZhcmlhc2kqKiB8IE1hc2loIHJlbnRhbiB0ZXJoYWRhcCBmbHVrdHVhc2kgZGFsYW0gcHJvc2VzIHByb2R1a3NpIGF0YXUgbGF5YW5hbi4gfCBNZW5nb250cm9sIHZhcmlhc2kgc2VjYXJhIGtldGF0IGFnYXIgdGV0YXAga29uc2lzdGVuLiB8DQp8ICoqTGluZ2t1cCBQZW5nZ3VuYWFuKiogICAgfCBDb2NvayB1bnR1ayBzaXN0ZW0geWFuZyBtZW1pbGlraSB0b2xlcmFuc2kga2VzYWxhaGFuIGxlYmloIGJlc2FyLiB8IExlYmloIHNlc3VhaSB1bnR1ayBpbmR1c3RyaSBkZW5nYW4gc3RhbmRhciBrdWFsaXRhcyB0aW5nZ2kgc2VwZXJ0aSBvdG9tb3RpZiBkYW4gbWVkaXMuIHwNCnwgKipQZW5kZWthdGFuIEt1YWxpdGFzKiogICB8IE1lbmRldGVrc2kga2VzYWxhaGFuIHNldGVsYWggdGVyamFkaSwgbGFsdSBtZW1wZXJiYWlraW55YS4gfCBNZW5naGluZGFyaSBrZXNhbGFoYW4gc2VqYWsgYXdhbCBkZW5nYW4gc3RyYXRlZ2kgcGVyYmFpa2FuIGJlcmtlbGFuanV0YW4uIHwNCnwgKipNZXRvZGUgeWFuZyBEaWd1bmFrYW4qKiB8IE1lbmdndW5ha2FuIGJhdGFzIGtvbnRyb2wgwrEzz4MgdW50dWsgbWVuZ2lkZW50aWZpa2FzaSBwZW55aW1wYW5nYW4uIHwgTWVuZ2FuZGFsa2FuIG1ldG9kZSAqKkRNQUlDKiogZGFuICoqRE1BRFYqKiB1bnR1ayBvcHRpbWFsaXNhc2kgcHJvc2VzLiB8DQp8ICoqVHVqdWFuIFV0YW1hKiogICAgICAgICB8IE1lbmphZ2EgYWdhciBwcm9zZXMgdGV0YXAgZGFsYW0gYmF0YXMga2VuZGFsaS4gfCBNZW5nZW1iYW5na2FuIHByb3NlcyBhZ2FyIG1lbmNhcGFpIGhhc2lsIGRlbmdhbiBjYWNhdCB5YW5nIG55YXJpcyBub2wuIHwNCg0KIyMjICoqS2VzaW1wdWxhbjoqKiAgDQotICoqMy1TaWdtYSAoJDNcc2lnbWEkKSoqIG1hc2loIG1lbWlsaWtpIHRpbmdrYXQga2VzYWxhaGFuIHlhbmcgcmVsYXRpZiB0aW5nZ2kgc2VoaW5nZ2EgbGViaWggZmxla3NpYmVsIGRhbGFtIGFwbGlrYXNpIGRpIGJpZGFuZyB0ZXJ0ZW50dS4gIA0KLSAqKjYtU2lnbWEgKCQ2XHNpZ21hJCkqKiBtZW1hc3Rpa2FuIGtvbnRyb2wga3VhbGl0YXMgeWFuZyBqYXVoIGxlYmloIGtldGF0LCBpZGVhbCB1bnR1ayBpbmR1c3RyaSB5YW5nIG1lbWVybHVrYW4gdGluZ2thdCBwcmVzaXNpIHRpbmdnaS4gIA0KDQojIFotc2NvcmUgZGFuIFQtc2NvcmUNCg0KRGFsYW0gYW5hbGlzaXMgc3RhdGlzdGlrLCAqKlotc2NvcmUqKiBkYW4gKipULXNjb3JlKiogbWVydXBha2FuIGR1YSB1a3VyYW4geWFuZyBkaWd1bmFrYW4gdW50dWsgbWVuaWxhaSBwb3Npc2kgc3VhdHUgZGF0YSBkYWxhbSBkaXN0cmlidXNpIHNlcnRhIG1lbmd1amkgcGVyYmVkYWFuIGFudGFyIGtlbG9tcG9rLiBLZWR1YW55YSBiZXJmdW5nc2kgdW50dWsgbWVuZW50dWthbiBzZWJlcmFwYSBqYXVoIHN1YXR1IG5pbGFpIGRhcmkgcmF0YS1yYXRhIGRhbGFtIHNhdHVhbiBzdGFuZGFyIGRldmlhc2ksIHRldGFwaSBtZW1pbGlraSBwZXJiZWRhYW4gZGFsYW0gcGVuZXJhcGFubnlhLiAgDQoNCioqWi1zY29yZSoqIGRpZ3VuYWthbiBrZXRpa2EganVtbGFoIHNhbXBlbCBjdWt1cCBiZXNhciBkYW4gc3RhbmRhciBkZXZpYXNpIHBvcHVsYXNpIGRpa2V0YWh1aSwgc2VoaW5nZ2EgZGlzdHJpYnVzaSBkYXRhIGRhcGF0IGRpYXN1bXNpa2FuIG1lbmdpa3V0aSBkaXN0cmlidXNpIG5vcm1hbC4gU2VtZW50YXJhIGl0dSwgKipULXNjb3JlKiogbGViaWggc2VzdWFpIHVudHVrIHNhbXBlbCBrZWNpbCBhdGF1IGtldGlrYSBzdGFuZGFyIGRldmlhc2kgcG9wdWxhc2kgdGlkYWsgZGlrZXRhaHVpLCBkZW5nYW4gbWVtcGVydGltYmFuZ2thbiBrZXRpZGFrcGFzdGlhbiBkYWxhbSBlc3RpbWFzaS4gIA0KDQpQZW1haGFtYW4gbWVuZ2VuYWkgWi1zY29yZSBkYW4gVC1zY29yZSBzYW5nYXQgcGVudGluZyBkYWxhbSBiZXJiYWdhaSBiaWRhbmcsIHNlcGVydGkgcGVuZWxpdGlhbiBha2FkZW1paywgcGVuZ2FtYmlsYW4ga2VwdXR1c2FuIGJpc25pcywgZGFuIGFuYWxpc2lzIGRhdGEsIGthcmVuYSBtZW11bmdraW5rYW4ga2l0YSB1bnR1ayBtZW5pbGFpIHBvbGEgZGlzdHJpYnVzaSBkYXRhIHNlcnRhIG1lbWJhbmRpbmdrYW4ga2Vsb21wb2sgZGVuZ2FuIGxlYmloIGFrdXJhdC4gQmVyaWt1dCBhZGFsYWggcGVuamVsYXNhbiBsZWJpaCByaW5jaW55YToNCg0KIyMgKipaLXNjb3JlKioNClotc2NvcmUsIGF0YXUgZGlrZW5hbCBqdWdhIHNlYmFnYWkgKnN0YW5kYXJkIHNjb3JlKiwgYWRhbGFoIHN1YXR1IHVrdXJhbiBzdGF0aXN0aWsgeWFuZyBkaWd1bmFrYW4gdW50dWsgbWVuZW50dWthbiBzZWphdWggbWFuYSBzdWF0dSBuaWxhaSBtZW55aW1wYW5nIGRhcmkgcmF0YS1yYXRhIGRhbGFtIHN1YXR1IGRpc3RyaWJ1c2kgZGF0YS4gTmlsYWkgaW5pIGRpbnlhdGFrYW4gZGFsYW0gc2F0dWFuIHN0YW5kYXIgZGV2aWFzaSwgeWFuZyBtZW11bmdraW5rYW4gcGVyYmFuZGluZ2FuIGFudGFyIGRhdGEgZGFsYW0gc2thbGEgeWFuZyBiZXJiZWRhLiAgDQoNClotc2NvcmUgbWVudW5qdWtrYW4gYXBha2FoIHN1YXR1IGRhdGEgYmVyYWRhIGRpIGF0YXMgYXRhdSBkaSBiYXdhaCByYXRhLXJhdGEgZGFuIHNlYmVyYXBhIGphdWggZGFyaSByYXRhLXJhdGEgdGVyc2VidXQuIEppa2EgbmlsYWkgWi1zY29yZSBwb3NpdGlmLCBiZXJhcnRpIGRhdGEgdGVyc2VidXQgYmVyYWRhIGRpIGF0YXMgcmF0YS1yYXRhLCBzZWRhbmdrYW4gamlrYSBuZWdhdGlmLCBkYXRhIHRlcnNlYnV0IGJlcmFkYSBkaSBiYXdhaCByYXRhLXJhdGEuICANCg0KIyMjICoqSW50ZXJwcmV0YXNpIFotU2NvcmUqKiAgDQoNCi0gKipaID0gMCoqIOKGkiBOaWxhaSBkYXRhIHNhbWEgZGVuZ2FuIHJhdGEtcmF0YS4gIA0KLSAqKlogcG9zaXRpZioqIOKGkiBOaWxhaSBkYXRhIGxlYmloIGJlc2FyIGRhcmkgcmF0YS1yYXRhLiAgDQotICoqWiBuZWdhdGlmKiog4oaSIE5pbGFpIGRhdGEgbGViaWgga2VjaWwgZGFyaSByYXRhLXJhdGEuICANCi0gKip8WnwgPiAyKiog4oaSIERhdGEgY3VrdXAgamF1aCBkYXJpIHJhdGEtcmF0YSwgc2VyaW5nIGRpYW5nZ2FwIHNlYmFnYWkgb3V0bGllciBkYWxhbSBiZWJlcmFwYSBhbmFsaXNpcyBzdGF0aXN0aWsuICANCi0gKip8WnwgPiAzKiog4oaSIERhdGEgZGlhbmdnYXAgc2ViYWdhaSBvdXRsaWVyIHlhbmcgc2lnbmlmaWthbi4gIA0KDQpEZW5nYW4gbWVuZ2d1bmFrYW4gWi1zY29yZSwga2l0YSBkYXBhdCBtZW5pbGFpIGFwYWthaCBzdWF0dSBkYXRhIG1lbWlsaWtpIHBlcmlsYWt1IG5vcm1hbCBkYWxhbSBkaXN0cmlidXNpIGF0YXUgbWVudW5qdWtrYW4gcG9sYSB5YW5nIHRpZGFrIGJpYXNhLg0KDQojIyMgKipTaXR1YXNpIGRpIE1hbmEgWi1TY29yZSBQZXJsdSBEaWd1bmFrYW4qKiAgDQoNClotc2NvcmUgZGlndW5ha2FuIGRhbGFtIGJlcmJhZ2FpIHNpdHVhc2kga2V0aWthIGtpdGEgcGVybHUgKiptZW5nYW5hbGlzaXMgcG9zaXNpIHN1YXR1IGRhdGEgZGFsYW0gZGlzdHJpYnVzaSoqLCAqKm1lbWJhbmRpbmdrYW4gZGF0YSBkYXJpIHNrYWxhIHlhbmcgYmVyYmVkYSoqLCBhdGF1ICoqbWVuZGV0ZWtzaSBuaWxhaSB5YW5nIHRpZGFrIGJpYXNhIChvdXRsaWVyKSoqLiBCZXJpa3V0IGFkYWxhaCBiZWJlcmFwYSBrb25kaXNpIHV0YW1hIGRpIG1hbmEgWi1zY29yZSBzYW5nYXQgYmVyZ3VuYTogIA0KDQoqKjEuIE1lbWJhbmRpbmdrYW4gRGF0YSBkYXJpIFNrYWxhIHlhbmcgQmVyYmVkYSoqICANCg0KS2V0aWthIGtpdGEgbWVtaWxpa2kgZHVhIGF0YXUgbGViaWgga3VtcHVsYW4gZGF0YSBkZW5nYW4gc2F0dWFuIGF0YXUgc2thbGEgeWFuZyBiZXJiZWRhLCBaLXNjb3JlIG1lbWJhbnR1IG1lbnlhbWFrYW4gcGVyYmFuZGluZ2FuLiAgDQoNCioqQ29udG9oOioqICANCi0gU2VvcmFuZyBzaXN3YSBtZW5kYXBhdCAqKjg1KiogZGFsYW0gdWppYW4gTWF0ZW1hdGlrYSBkYW4gKio3OCoqIGRhbGFtIHVqaWFuIEZpc2lrYS4gIA0KLSBSYXRhLXJhdGEga2VsYXMgdW50dWsgTWF0ZW1hdGlrYSBhZGFsYWggKio3NSoqIGRlbmdhbiBzdGFuZGFyIGRldmlhc2kgKioxMCoqLCBzZWRhbmdrYW4gcmF0YS1yYXRhIGtlbGFzIHVudHVrIEZpc2lrYSBhZGFsYWggKio3MCoqIGRlbmdhbiBzdGFuZGFyIGRldmlhc2kgKio1KiouICANCi0gRGVuZ2FuIG1lbmdoaXR1bmcgWi1zY29yZSB1bnR1ayBrZWR1YSBuaWxhaSwga2l0YSBiaXNhIG1lbmVudHVrYW4gZGFsYW0gbWF0YSBwZWxhamFyYW4gbWFuYSBzaXN3YSB0ZXJzZWJ1dCBsZWJpaCB1bmdndWwgZGliYW5kaW5nIHRlbWFuLXRlbWFubnlhLiAgDQoNCioqMi4gTWVuZW50dWthbiBTZWJlcmFwYSBKYXVoIFN1YXR1IE5pbGFpIGRhcmkgUmF0YS1SYXRhKiogIA0KDQpaLXNjb3JlIGRpZ3VuYWthbiB1bnR1ayBtZW5nZXRhaHVpIGFwYWthaCBzdWF0dSBkYXRhIGphdWggZGFyaSBuaWxhaSByYXRhLXJhdGEgYXRhdSBiZXJhZGEgZGFsYW0gZGlzdHJpYnVzaSBub3JtYWwuICANCg0KKipDb250b2g6KiogIA0KLSBKaWthIHNlYnVhaCBtZXNpbiBwcm9kdWtzaSBtZW5naGFzaWxrYW4gYm90b2wgYWlyIGRlbmdhbiByYXRhLXJhdGEgdm9sdW1lICoqNTAwIG1sKiogZGFuIHN0YW5kYXIgZGV2aWFzaSAqKjUgbWwqKiwgbWFrYSBib3RvbCBkZW5nYW4gdm9sdW1lICoqNDkwIG1sKiogbWVtaWxpa2kgWi1zY29yZSBuZWdhdGlmIHlhbmcgbWVudW5qdWtrYW4gYmFod2Egdm9sdW1lbnlhIGJlcmFkYSBkaSBiYXdhaCByYXRhLXJhdGEuICANCg0KKiozLiBNZW5kZXRla3NpIE91dGxpZXIgZGFsYW0gRGF0YSoqICANCg0KT3V0bGllciBhZGFsYWggZGF0YSB5YW5nIHNhbmdhdCBiZXJiZWRhIGRhcmkga2ViYW55YWthbiBuaWxhaSBkYWxhbSBkaXN0cmlidXNpLiBEYWxhbSBiYW55YWsga2FzdXMsIG5pbGFpIGRlbmdhbiAqKlotc2NvcmUgbGViaWggZGFyaSAzIGF0YXUga3VyYW5nIGRhcmkgLTMqKiBkaWFuZ2dhcCBzZWJhZ2FpIG91dGxpZXIgeWFuZyBwZXJsdSBkaWFuYWxpc2lzIGxlYmloIGxhbmp1dC4gIA0KDQoqKkNvbnRvaDoqKiAgDQotIEppa2Ega2l0YSBtZW5nYW5hbGlzaXMgcGVuZ2hhc2lsYW4gYnVsYW5hbiBrYXJ5YXdhbiBkaSBzdWF0dSBwZXJ1c2FoYWFuIGRhbiBtZW5lbXVrYW4gYmFod2Egc2ViYWdpYW4gYmVzYXIgYmVyYWRhIGRhbGFtIHJlbnRhbmcgKio14oCTMTAganV0YSBydXBpYWgqKiwgdGV0YXBpIGFkYSBzYXR1IGthcnlhd2FuIHlhbmcgYmVycGVuZ2hhc2lsYW4gKio1MCBqdXRhIHJ1cGlhaCoqLCBaLXNjb3JlIGRhcGF0IG1lbnVuanVra2FuIGJhaHdhIG5pbGFpIGluaSBtZXJ1cGFrYW4gb3V0bGllci4gIA0KDQoqKjQuIE1lbmdvbnZlcnNpIERhdGEga2UgRGlzdHJpYnVzaSBOb3JtYWwgKFN0YW5kYXJpc2FzaSBEYXRhKSoqICANCg0KRGFsYW0gYW5hbGlzaXMgc3RhdGlzdGlrIGRhbiBwZW1iZWxhamFyYW4gbWVzaW4gKCptYWNoaW5lIGxlYXJuaW5nKiksIGJhbnlhayBtZXRvZGUgbWVtZXJsdWthbiBkYXRhIHlhbmcgYmVyZGlzdHJpYnVzaSBub3JtYWwuIEppa2EgZGF0YSBhc2xpIG1lbWlsaWtpIHNrYWxhIHlhbmcgYmVydmFyaWFzaSwgWi1zY29yZSBtZW1iYW50dSBtZW5ndWJhaG55YSBtZW5qYWRpIGRpc3RyaWJ1c2kgc3RhbmRhciBkZW5nYW4gcmF0YS1yYXRhICoqMCoqIGRhbiBzdGFuZGFyIGRldmlhc2kgKioxKiouICANCg0KKipDb250b2g6KiogIA0KLSBEYWxhbSBhbmFsaXNpcyByZWdyZXNpIGF0YXUgYWxnb3JpdG1hIHBlbWJlbGFqYXJhbiBtZXNpbiBzZXBlcnRpICoqSy1OZWFyZXN0IE5laWdoYm9ycyAoS05OKSoqLCBkYXRhIHNlcmluZyBrYWxpIHBlcmx1IGRpbm9ybWFsaXNhc2kgbWVuZ2d1bmFrYW4gWi1zY29yZSBhZ2FyIGZpdHVyIGRlbmdhbiBza2FsYSBiZXNhciB0aWRhayBtZW5kb21pbmFzaSBtb2RlbC4gIA0KDQojIyMgKipLZXNpbXB1bGFuKiogIA0KWi1zY29yZSBzYW5nYXQgYmVybWFuZmFhdCBkYWxhbSBiZXJiYWdhaSBzaXR1YXNpLCB0ZXJ1dGFtYSBrZXRpa2Ega2l0YSBpbmdpbjogIA0K4pyFICoqTWVtYmFuZGluZ2thbiBkYXRhIGRlbmdhbiBza2FsYSBiZXJiZWRhKiogIA0K4pyFICoqTWVuZ2V0YWh1aSBwb3Npc2kgc3VhdHUgZGF0YSBkYWxhbSBkaXN0cmlidXNpKiogIA0K4pyFICoqTWVuZGV0ZWtzaSBvdXRsaWVyIGRhbGFtIGRhdGEqKiAgDQrinIUgKipNZWxha3VrYW4gc3RhbmRhcmlzYXNpIHVudHVrIGFuYWxpc2lzIHN0YXRpc3RpayBsZWJpaCBsYW5qdXQqKiAgDQoNCkRlbmdhbiBtZW5nZ3VuYWthbiBaLXNjb3JlLCBraXRhIGJpc2EgbWVtYWhhbWkgZGF0YSBsZWJpaCBkYWxhbSBkYW4gbWVtYnVhdCBrZXB1dHVzYW4gYmVyZGFzYXJrYW4gaW5mb3JtYXNpIHlhbmcgbGViaWggb2JqZWt0aWYuDQoNCiMjICoqVC1zY29yZSoqDQpULXNjb3JlLCBhdGF1IGRpa2VuYWwgc2ViYWdhaSAqVC12YWx1ZSosIGFkYWxhaCB1a3VyYW4gc3RhdGlzdGlrIHlhbmcgZGlndW5ha2FuIHVudHVrIG1lbmVudHVrYW4gcG9zaXNpIHN1YXR1IG5pbGFpIGRhbGFtIGRpc3RyaWJ1c2kgZGF0YSBrZXRpa2EgdWt1cmFuIHNhbXBlbCB0ZXJiYXRhcyBhdGF1IHN0YW5kYXIgZGV2aWFzaSBwb3B1bGFzaSB0aWRhayBkaWtldGFodWkuIFQtc2NvcmUgc2VyaW5nIGRpZ3VuYWthbiBkYWxhbSAqKnVqaSBoaXBvdGVzaXMqKiwgdGVydXRhbWEgZGFsYW0gKip1amktdCAodC10ZXN0KSoqLCB1bnR1ayBtZW1iYW5kaW5na2FuIHJhdGEtcmF0YSBzdWF0dSBrZWxvbXBvayBkZW5nYW4gcG9wdWxhc2kgYXRhdSBtZW1iYW5kaW5na2FuIGR1YSBrZWxvbXBvayBiZXJiZWRhLiAgDQoNClQtc2NvcmUgbWlyaXAgZGVuZ2FuICoqWi1zY29yZSoqLCB0ZXRhcGkgZGlndW5ha2FuIGtldGlrYSBqdW1sYWggc2FtcGVsIGtlY2lsICgqKm4gPCAzMCoqKSBhdGF1IHNhYXQgdmFyaWFiaWxpdGFzIHBvcHVsYXNpIGJlbHVtIGRpa2V0YWh1aSBkZW5nYW4gcGFzdGkuIERpc3RyaWJ1c2kgVCBtZW1pbGlraSBla29yIHlhbmcgbGViaWggdGViYWwgZGliYW5kaW5na2FuIGRpc3RyaWJ1c2kgbm9ybWFsLCB5YW5nIGJlcmFydGkgbGViaWggY29jb2sgdW50dWsgbWVuYW5nYW5pIGtldGlkYWtwYXN0aWFuIGRhbGFtIHNhbXBlbCBrZWNpbC4gIA0KDQoNCiMjIyAqKkludGVycHJldGFzaSBULVNjb3JlKiogIA0KDQotICoqVC1zY29yZSBtZW5kZWthdGkgMCoqIOKGkiBOaWxhaSBkYXRhIHRpZGFrIGphdWggZGFyaSByYXRhLXJhdGEgc2FtcGVsLiAgDQotICoqVC1zY29yZSBwb3NpdGlmKiog4oaSIE5pbGFpIGRhdGEgbGViaWggYmVzYXIgZGFyaSByYXRhLXJhdGEgc2FtcGVsLiAgDQotICoqVC1zY29yZSBuZWdhdGlmKiog4oaSIE5pbGFpIGRhdGEgbGViaWgga2VjaWwgZGFyaSByYXRhLXJhdGEgc2FtcGVsLiAgDQotICoqVC1zY29yZSBiZXNhciAoYmFpayBwb3NpdGlmIG1hdXB1biBuZWdhdGlmKSoqIOKGkiBQZXJiZWRhYW4gYW50YXJhIHNhbXBlbCBkYW4gcG9wdWxhc2kgY3VrdXAgc2lnbmlmaWthbi4gIA0KDQpULXNjb3JlIHNlcmluZyBkaWd1bmFrYW4gZGFsYW0gYW5hbGlzaXMgc3RhdGlzdGlrIHVudHVrIG1lbmVudHVrYW4gYXBha2FoIHN1YXR1IHBlcmJlZGFhbiB0ZXJqYWRpIGthcmVuYSBmYWt0b3IgYWNhayBhdGF1IG1lbWFuZyBtZW51bmp1a2thbiBwb2xhIHlhbmcgbnlhdGEgZGFsYW0gZGF0YS4NCg0KIyMjICoqU2l0dWFzaSBkaSBNYW5hIFQtU2NvcmUgUGVybHUgRGlndW5ha2FuKiogIA0KDQpULXNjb3JlIGRpZ3VuYWthbiBkYWxhbSBiZXJiYWdhaSBrb25kaXNpIGtldGlrYSBkYXRhIHlhbmcgZGlhbmFsaXNpcyBtZW1pbGlraSBrZXRlcmJhdGFzYW4gZGFsYW0ganVtbGFoIHNhbXBlbCBhdGF1IGtldGlrYSBzdGFuZGFyIGRldmlhc2kgcG9wdWxhc2kgdGlkYWsgZGlrZXRhaHVpIHNlY2FyYSBwYXN0aS4gQmVyaWt1dCBhZGFsYWggYmViZXJhcGEgc2l0dWFzaSB1dGFtYSBkaSBtYW5hIFQtc2NvcmUgbGViaWggdGVwYXQgZGlndW5ha2FuIGRpYmFuZGluZ2thbiB1a3VyYW4gc3RhdGlzdGlrIGxhaW5ueWE6ICANCg0KKioxLiBLZXRpa2EgVWt1cmFuIFNhbXBlbCBLZWNpbCAobiA8IDMwKSoqICANCg0KVC1zY29yZSBkaWd1bmFrYW4gamlrYSBqdW1sYWggc2FtcGVsIHlhbmcgdGVyc2VkaWEgcmVsYXRpZiBrZWNpbCwgeWFpdHUga3VyYW5nIGRhcmkgKiozMCBwZW5nYW1hdGFuKiouIERhbGFtIGtvbmRpc2kgaW5pLCBkaXN0cmlidXNpIG5vcm1hbCBtdW5na2luIHRpZGFrIHNlcGVudWhueWEgYmVybGFrdSwgc2VoaW5nZ2EgZGlzdHJpYnVzaSB0IGxlYmloIHNlc3VhaSBrYXJlbmEgbWVtcGVyaGl0dW5na2FuIGtldGlkYWtwYXN0aWFuIGRhbGFtIGVzdGltYXNpIHBhcmFtZXRlciBwb3B1bGFzaS4gIA0KDQoqKkNvbnRvaDoqKiAgDQotIFNlYnVhaCBwZXJ1c2FoYWFuIGluZ2luIG1lbmd1amkgZWZla3Rpdml0YXMgcGVsYXRpaGFuIGJhcnUgdGVyaGFkYXAgcGVuaW5na2F0YW4gcHJvZHVrdGl2aXRhcyBrYXJ5YXdhbi4gS2FyZW5hIGhhbnlhICoqMTUga2FyeWF3YW4qKiB5YW5nIG1lbmdpa3V0aSBwZWxhdGloYW4sIFQtc2NvcmUgZGlndW5ha2FuIHVudHVrIG1lbmd1a3VyIHBlcmJlZGFhbiByYXRhLXJhdGEgc2ViZWx1bSBkYW4gc2VzdWRhaCBwZWxhdGloYW4uICANCg0KKioyLiBLZXRpa2EgU3RhbmRhciBEZXZpYXNpIFBvcHVsYXNpIFRpZGFrIERpa2V0YWh1aSoqICANCg0KSmlrYSBzdGFuZGFyIGRldmlhc2kgcG9wdWxhc2kgdGlkYWsgdGVyc2VkaWEgYXRhdSBzdWxpdCB1bnR1ayBkaWhpdHVuZywgbWFrYSAqKlQtc2NvcmUgbGViaWggdGVwYXQgZGlndW5ha2FuIGRpYmFuZGluZ2thbiBaLXNjb3JlKiouIEluaSBrYXJlbmEgVC1zY29yZSBtZW1wZXJoaXR1bmdrYW4gdmFyaWFzaSBkYWxhbSBzYW1wZWwgdW50dWsgbWVtcGVya2lyYWthbiBzdGFuZGFyIGRldmlhc2kgcG9wdWxhc2kuICANCg0KKipDb250b2g6KiogIA0KLSBTZW9yYW5nIHBlbmVsaXRpIGluZ2luIG1lbmdldGFodWkgYXBha2FoIGtvbnN1bXNpIHN1cGxlbWVuIHRlcnRlbnR1IG1lbmluZ2thdGthbiBkYXlhIGluZ2F0IG1haGFzaXN3YS4gS2FyZW5hIHN0YW5kYXIgZGV2aWFzaSBwb3B1bGFzaSB0aWRhayBkaWtldGFodWksIGlhIG1lbmdndW5ha2FuIFQtc2NvcmUgdW50dWsgbWVuZ3VqaSBhcGFrYWggYWRhIHBlcmJlZGFhbiBzaWduaWZpa2FuIGFudGFyYSBrZWxvbXBvayB5YW5nIG1lbmdvbnN1bXNpIHN1cGxlbWVuIGRhbiB5YW5nIHRpZGFrLiAgDQoNCioqMy4gU2FhdCBNZWxha3VrYW4gVWppIEhpcG90ZXNpcyB0ZXJoYWRhcCBSYXRhLVJhdGEqKiAgDQoNCkRhbGFtIHVqaSBzdGF0aXN0aWsgc2VwZXJ0aSAqKnVqaS10IHNhdHUgc2FtcGVsKiosICoqdWppLXQgZHVhIHNhbXBlbCBpbmRlcGVuZGVuKiosIGRhbiAqKnVqaS10IGJlcnBhc2FuZ2FuKiosIFQtc2NvcmUgZGlndW5ha2FuIHVudHVrIG1lbmVudHVrYW4gYXBha2FoIHRlcmRhcGF0IHBlcmJlZGFhbiBzaWduaWZpa2FuIGFudGFyYSBkdWEga2Vsb21wb2sgZGF0YS4gIA0KDQoqKkNvbnRvaDoqKiAgDQotIFNlYnVhaCBsYWJvcmF0b3JpdW0gaW5naW4gbWVtYmFuZGluZ2thbiByYXRhLXJhdGEgdGVrYW5hbiBkYXJhaCBwYXNpZW4gc2ViZWx1bSBkYW4gc2VzdWRhaCBkaWJlcmlrYW4gb2JhdCBiYXJ1LiBLYXJlbmEganVtbGFoIHBhc2llbiBkYWxhbSBwZW5lbGl0aWFuIHRlcmJhdGFzIGRhbiBzdGFuZGFyIGRldmlhc2kgcG9wdWxhc2kgdGlkYWsgZGlrZXRhaHVpLCBhbmFsaXNpcyBtZW5nZ3VuYWthbiBULXNjb3JlIGxlYmloIHNlc3VhaS4gIA0KDQoqKjQuIFNhYXQgTWVuZ2FuYWxpc2lzIFBlcmJlZGFhbiBBbnRhcmEgRHVhIEtlbG9tcG9rIEtlY2lsKiogIA0KDQpKaWthIGluZ2luIG1lbWJhbmRpbmdrYW4gZHVhIGtlbG9tcG9rIGtlY2lsIHlhbmcgbXVuZ2tpbiBtZW1pbGlraSBwZXJiZWRhYW4gcmF0YS1yYXRhLCBULXNjb3JlIGRpZ3VuYWthbiB1bnR1ayBtZW5nZXZhbHVhc2kgYXBha2FoIHBlcmJlZGFhbiB0ZXJzZWJ1dCBzaWduaWZpa2FuIHNlY2FyYSBzdGF0aXN0aWsgYXRhdSBoYW55YSB0ZXJqYWRpIGthcmVuYSB2YXJpYWJpbGl0YXMgYWNhayBkYWxhbSBkYXRhLiAgDQoNCioqQ29udG9oOioqICANCi0gU2VidWFoIHNla29sYWggaW5naW4gbWVuZ2V0YWh1aSBhcGFrYWggYWRhIHBlcmJlZGFhbiBza29yIHVqaWFuIGFudGFyYSBkdWEga2VsYXMgeWFuZyBkaWFqYXIgZGVuZ2FuIG1ldG9kZSBwZW5nYWphcmFuIGJlcmJlZGEuIEthcmVuYSBqdW1sYWggc2lzd2EgZGkgbWFzaW5nLW1hc2luZyBrZWxhcyByZWxhdGlmIGtlY2lsLCB1amktdCBkZW5nYW4gVC1zY29yZSBkaWd1bmFrYW4gdW50dWsgbWVuZ2FuYWxpc2lzIHBlcmJlZGFhbm55YS4gIA0KDQojIyMgKipLZXNpbXB1bGFuKiogIA0KVC1zY29yZSBkaWd1bmFrYW4gZGFsYW0gc2l0dWFzaSBiZXJpa3V0OiAgDQrinIUgKipKdW1sYWggc2FtcGVsIGtlY2lsIChuIDwgMzApKiogIA0K4pyFICoqU3RhbmRhciBkZXZpYXNpIHBvcHVsYXNpIHRpZGFrIGRpa2V0YWh1aSoqICANCuKchSAqKkFuYWxpc2lzIHVqaSBoaXBvdGVzaXMgdGVyaGFkYXAgcmF0YS1yYXRhKiogIA0K4pyFICoqUGVyYmFuZGluZ2FuIGFudGFyYSBkdWEga2Vsb21wb2sga2VjaWwqKiAgDQoNCkRlbmdhbiBtZW5nZ3VuYWthbiBULXNjb3JlLCBhbmFsaXNpcyBzdGF0aXN0aWsgbWVuamFkaSBsZWJpaCBha3VyYXQgZGFsYW0ga29uZGlzaSBkYXRhIHlhbmcgdGVyYmF0YXMsIHNlaGluZ2dhIGtlcHV0dXNhbiB5YW5nIGRpYW1iaWwgYmVyZGFzYXJrYW4gZGF0YSBtZW5qYWRpIGxlYmloIHZhbGlkLg0KDQojIyAqKlBlcmJhbmRpbmdhbiBaLVNjb3JlIGRhbiBULVNjb3JlKiogIA0KDQpEaXNhamlrYW4gZGFsYW0gYmVudHVrIHRhYmVsIGFnYXIgbGViaWggbXVkYWggdW51ayBkaWNlcm1hdGkgZGFuIGRpcGFoYW1pLCBiZXJpa3V0IGFkYWxhaCB0YWJlbG55YToNCg0KfCAqKkFzcGVrKiogICAgICAgICAgICAgICB8ICoqWi1TY29yZSoqIHwgKipULVNjb3JlKiogfA0KfC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS18LS0tLS0tLS0tLS0tLXwtLS0tLS0tLS0tLS0tfA0KfCAqKkRlZmluaXNpKiogICAgICAgICAgICB8IFVrdXJhbiBzdGF0aXN0aWsgeWFuZyBtZW51bmp1a2thbiBzZWJlcmFwYSBqYXVoIHN1YXR1IG5pbGFpIGRhcmkgcmF0YS1yYXRhIGRhbGFtIHNhdHVhbiBzdGFuZGFyIGRldmlhc2kgYmVyZGFzYXJrYW4gZGlzdHJpYnVzaSBub3JtYWwuIHwgVWt1cmFuIHN0YXRpc3RpayB5YW5nIGRpZ3VuYWthbiB1bnR1ayBtZW5ndWt1ciBwb3Npc2kgc3VhdHUgbmlsYWkgZGFsYW0gZGlzdHJpYnVzaSBrZXRpa2EgdWt1cmFuIHNhbXBlbCBrZWNpbCBhdGF1IHN0YW5kYXIgZGV2aWFzaSBwb3B1bGFzaSB0aWRhayBkaWtldGFodWkuIHwNCnwgKipLYXBhbiBEaWd1bmFrYW4qKiAgICB8IEppa2EgdWt1cmFuIHNhbXBlbCBiZXNhciAoKipuIOKJpSAzMCoqKSBkYW4gc3RhbmRhciBkZXZpYXNpIHBvcHVsYXNpIGRpa2V0YWh1aS4gfCBKaWthIHVrdXJhbiBzYW1wZWwga2VjaWwgKCoqbiA8IDMwKiopIGF0YXUgc3RhbmRhciBkZXZpYXNpIHBvcHVsYXNpIHRpZGFrIGRpa2V0YWh1aS4gfA0KfCAqKkRpc3RyaWJ1c2kqKiAgICAgICAgfCBNZW5nZ3VuYWthbiAqKmRpc3RyaWJ1c2kgbm9ybWFsKiogKHotZGlzdHJpYnV0aW9uKS4gfCBNZW5nZ3VuYWthbiAqKmRpc3RyaWJ1c2kgdC1TdHVkZW50KiosIHlhbmcgbWVtaWxpa2kgZWtvciBsZWJpaCB0ZWJhbCB1bnR1ayBtZW5nYWtvbW9kYXNpIGtldGlkYWtwYXN0aWFuLiB8DQp8ICoqUnVtdXMqKiB8IFwoIFogPSBcZnJhY3t4IC0gXG11fXtcc2lnbWF9IFwpICB8IFwoIFQgPSBcZnJhY3t4IC0gXGJhcnt4fX17cyAvIFxzcXJ0e259fSBcKSB8DQp8ICoqVmFyaWFiaWxpdGFzKiogfCBMZWJpaCByZW5kYWgga2FyZW5hIHN0YW5kYXIgZGV2aWFzaSBwb3B1bGFzaSBkaWtldGFodWkuIHwgTGViaWggdGluZ2dpIGthcmVuYSBzdGFuZGFyIGRldmlhc2kgc2FtcGVsIGRpZ3VuYWthbiBzZWJhZ2FpIGVzdGltYXNpIHN0YW5kYXIgZGV2aWFzaSBwb3B1bGFzaS4gfA0KfCAqKlBlbmdndW5hYW4gZGFsYW0gVWppIEhpcG90ZXNpcyoqIHwgVWppLVogdW50dWsgbWVtYmFuZGluZ2thbiBzYW1wZWwgdGVyaGFkYXAgcG9wdWxhc2kgc2FhdCBzdGFuZGFyIGRldmlhc2kgcG9wdWxhc2kgZGlrZXRhaHVpLiB8IFVqaS1UIGRpZ3VuYWthbiB1bnR1ayBtZW1iYW5kaW5na2FuIHNhbXBlbCB0ZXJoYWRhcCBwb3B1bGFzaSBhdGF1IGFudGFyIGR1YSBrZWxvbXBvayBzYWF0IHN0YW5kYXIgZGV2aWFzaSBwb3B1bGFzaSB0aWRhayBkaWtldGFodWkuIHwNCg0KVGFiZWwgaW5pIG1lbWJlcmlrYW4gcGVyYmFuZGluZ2FuIGFudGFyYSAqKlotc2NvcmUqKiBkYW4gKipULXNjb3JlKiosIG1lbWJhbnR1IGRhbGFtIG1lbmVudHVrYW4gbWV0b2RlIHN0YXRpc3RpayB5YW5nIHBhbGluZyB0ZXBhdCBzZXN1YWkgZGVuZ2FuIGthcmFrdGVyaXN0aWsgZGF0YSB5YW5nIGRpYW5hbGlzaXMu