

Email          : garryjuliusperman@gmail.com
rpubs           : https://rpubs.com/Garr
Jurusan      : Statistika Bisnis
Address     : ARA Center, Matana University Tower
             Jl. CBD Barat Kav, RT.1, Curug Sangereng, Kelapa Dua, Tangerang, Banten 15810.
Sebagai mahasiswa buatlah algoritma dan flowchart yang anda lakukan untuk mencapai kelulusan sarjana dengan IPK minimal 3.5 dari Universitas Matana.!
jawaban
algoritma
1. mengikuti mata kuliah
2. mengerjakan tugas-tugas
3. mengikuti uts dan uas dengan ips minimal 3.5
4. lulus mata kuliah atau tidak (jika tidak akan kembali mengulang, jika lulus lanjut)
5. semester berikutnya (jika belum semester 7 maka mengikuti kegiatan sebelumnya, jika sudah semester 7 lanjut)
6. magang
7. menyusun skripsi
8. mengajukan skripsi(jika ditolak maka revisi dan ajukan kembali, jika diterima lanjut sidang
9. sidang skripsi
10. lulus
flowchart

Mengapa anda harus belajar Algoritma dan Struktur Data?
jawaban
- membuat cara berpikir kita dalam menghadapi sebuah masalah menjadi rasional, logis, dan sistematis.
- memperluas cara kita berpikir dan berpikir panjang dalam menyelesaikan masalah.
- memperkuat analisis kita dalam membuat suatu program.
- mampu memahami cara berpikir dari sebuah komputer atau program.
Sebutkan 3 bahasa pemrograman yang yang paling banyak digunakan dalam Sains Data, Berikan penjelasan kelebihan, kekurangan, dan hubungan bahasa pemrogaman yang satu dengan yang lainnya.
jawaban
java, phyton, R
java
Java merupakan salah satu bahasa pemrograman yang sangat populer karena dapat digunakan pada berbagai platform yang berbeda. Fleksibilitas ini menjadi fokus karena kini program diharuskan tak hanya optimal di satu platform namun juga dapat digunakan secara baik di banyak tipe perangkat.
kelebihan java
1. sederhana
java memiliki kemudahan dalam melakukan penyusunan sebuah script, selain itu bahasa pemrograman pada java mudah untuk dipelajari dan dipahami.
2. berorientasi pada objek
java merupakan salah satu jenis pemrograman yang menggunakan konsep OOPs, sehingga setiap aplikasi yang dibuat atau dibangun dengan menggunakan java dapat disesuaikan tampilan dan isi aplikasi tersebut untuk digunakan di program lain.
3. bersifat multiplatform
java bersifat multiplatform, atau artinya bisa digunakan pada platform apapun. dengan sifatnya yang multiplatform membuat berbagai jenis perangkat elektronik mampu menjalankan aplikasi dan program yang dibuat menggunakan java.
kekurangan java
1. memakan banyak memori
dalam penggunaannya java memberikan banyak fitur yang mendukung, namun hal tersebut dapat memakan banyaknya penggunaan memori yang cukup besar dalam penggunaannya.
2. menggunakan kode yang rumit
java memang mudah untuk digunakan dan dipahami, namun ini membuat kode dalam java menjadi kalimat yang panjang dan rumit.
3. mudah untuk ditiru
source kode pada bahasa pemrograman java mudah untuk tercuri atau diambil alih, sehingga dapat memunculkan masalah seperti munculnya aplikasi dan program sejenis, dan masalah keamanan dalam aplikasi buatannya.
phyton
Phyton adalah bahasa pemrograman tingkat tinggi namun mudah dipahami oleh pemula. Hal ini disebabkan karena pembacaannya menggunakan syntax tidak terlalu rumit. Phyton banyak digunakan oleh perusahaan besar dalam pengembangannya, seperti Instagram, Pinterest bahkan Google. oleh karena itu bahasa pemrograman ini memiliki kualitas yang baik dalam tujuan pengembangan web.
kelebihina python
1. mudah dipelajari
sama seperti java, python juga menggunakan bahasa sederhana yang mudah untuk digunakan dan dipelajari.
2. gratis
python merupakan bahasa pemrograman yang dapat diunduh secara gratis, karena mudahnya untuk diperoleh membuat bahasa pemrograman ini bebas untuk digunakan, dan dapat digunakan sebagai alat pembelajaran dalam memahami dasar pemrograman.
3. mempunyai library yang banyak dan luas
python memiliki banyak library didalamnya, sehingga dengan ini dapat memudahkan dalam pemakaian kode. sehingga tidak perlu ditulis secara ulang dan manual.
kekurangan python
1. ketergantungan python
kemudahan yang diberikan oleh bahasa pemrograman python membuat para pemakainya terlalu terbiasa dengan itu, sehingga saat pengguna ingin beralih ke bahasa pemrograman lain akan memgalami sedikit kesulitan untuk memahaminya.
2. lambatnya eksekusi
python bekerja lebih lambat dibandingkan dengan bahasa pemrograman lain, sehingga akan membutuhkan lebih banyak waktu pada saat pengujian dan menjalankan aplikasi tersebut.
3. keterbatasan kode
python mungkin mudah untuk digunakan dalam pengembangan web, namun memiliki keterbatasan dalam penulisan kodenya. hal ini membuat sedikit developer yang menggunakan ini dalam pengembangan aplikasi mereka. selain itu keterbatasan ini membuat sulitnya pemrograman yang dibuat untuk tujuan mobile development.
R
R merupakan Bahasa pemrograman dan alat analisis yang dikembangkan pada tahun 1993. Bahasa Pemrograman ini banyak digunakan didunia dikarenakan R ini dapat diterapkan dalam ilmu statistic, visualisasi data dan machine learning yang sangat luas.
kelebihan R
1. flexibel
bahasa pemrograman pada r dapat terhubung ke dalam platform lainnya, sehingga dapat terhubung ke berbagai basis operasi seperti microsoft excel, Oracle, mySQL, dll.
2. penggunaan untuk statistik
R umumnya digunakan untuk keperluan statistika, sehingga penggunan R untuk keperluan statistik sangat diunggulkan dibandingkan dengan bahasa pemrograman lain.
3. gratis sama seperti Phyton, bahasa pemrograman R juga open source yang berarti R dapat dengan mudah diperoleh oleh siapa saja untuk belajar cara pemrograman ataupun untuk penggunaan tingkat lanjut.
kekurangan R
penyimpanan data
dalam penggunaan R, data disimpan secara fisik yang akan memakan banyak memori. hal ini membuat memori yang sangat besar saat digunakan untuk keperluan big data.
bukan yang mudah dipahami
bahasa pemrograman R sangat rumit dan sulit dipelajari untuk penggunaan pertama kali, ketimbang bahasa pemrograman gratis lain seperti phyton. sehingga R tidaklah begitu ramah untuk orang yang ingin belajar mengenai pemrograman.
LS0tDQp0aXRsZTogIlR1Z2FzIDEiDQpzdWJ0aXRsZTogIkFsZ29yaXRtYSBkYW4gU3RydWt0dXIgZGF0YSINCmF1dGhvcjogIkdhcnJ5IEp1bGl1cyAoMjAyMDQ5MjAwMDMpIg0KZGF0ZTogImByIGZvcm1hdChTeXMuRGF0ZSgpLCAnJUIgJWQsICVZJylgIg0Kb3V0cHV0OiANCiAgaHRtbF9kb2N1bWVudDogDQogICAgaHRtbF9kb2N1bWVudDogbnVsbA0KICAgIGNvZGVfZm9sZGluZzogaGlkZQ0KICAgIHRvYzogeWVzDQogICAgdG9jX2Zsb2F0Og0KICAgICAgY29sbGFwc2VkOiB5ZXMNCiAgICBudW1iZXJfc2VjdGlvbnM6IHllcw0KICAgIGNvZGVfZG93bmxvYWQ6IHllcw0KICAgIHRoZW1lOiBzYW5kc3RvbmUNCiAgICBjc3M6IHN0eWxlMS5jc3MNCiAgICBoaWdobGlnaHQ6IG1vbm9jaHJvbWUNCi0tLQ0KDQoNCjxpbWcgc3R5bGU9ImZsb2F0OiByaWdodDsgbWFyZ2luOiAwcHggMTAwcHggMHB4IDBweDsgd2lkdGg6MjUlIiBzcmM9Im1lLnBuZyIvPiANCg0KYGBge3IgbG9nbywgZWNobz1GQUxTRSxmaWcuYWxpZ249J2NlbnRlcicsIG91dC53aWR0aCA9ICczMCUnfQ0Ka25pdHI6OmluY2x1ZGVfZ3JhcGhpY3MoImxvZ29tYXRhbmEucG5nIikNCmBgYA0KDQpFbWFpbCAmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsmbmJzcDs6ICBnYXJyeWp1bGl1c3Blcm1hbkBnbWFpbC5jb20gPGJyPg0KcnB1YnMgJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmbmJzcDs6IGh0dHBzOi8vcnB1YnMuY29tL0dhcnIgPGJyPg0KSnVydXNhbiAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7OiBbU3RhdGlzdGlrYSBCaXNuaXNdKGh0dHBzOi8vbWF0YW5hdW5pdmVyc2l0eS5hYy5pZC8/bHk9YWNhZGVtaWMmYz1zYikgPGJyPg0KQWRkcmVzcyAgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7IDogQVJBIENlbnRlciwgTWF0YW5hIFVuaXZlcnNpdHkgVG93ZXIgPGJyPg0KJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsmbmJzcDsgSmwuIENCRCBCYXJhdCBLYXYsIFJULjEsIEN1cnVnIFNhbmdlcmVuZywgS2VsYXBhIER1YSwgVGFuZ2VyYW5nLCBCYW50ZW4gMTU4MTAuDQoNCioqKioNCg0KIyBjYXJpbGFoIERlZmluaXNpIEFsZ29yaXRtYSBkYW4gU3RydWt0dXIgRGF0YSBkYWxhbSBiZXJiYWdhaSBiaWRhbmcgaWxtdSAoQ29udG9oOiBTYWlucyBEYXRhLCBGaXNpa2EsIFRla25payBJbmZvcm1hdGlrYSwgZGFuIFNpc3RlbSBJbmZvcm1hc2kpIQ0KDQoqamF3YWJhbioNCg0KIyMgc2FpbnMgZGF0YQ0KDQphbGdvcml0bWEgYWRhbGFoIHJhbmdrYWlhbiBkYW4ga3VtcHVsYW4gaW5zdHJ1a3NpIHlhbmcgZGlidWF0IGxhbmdrYWggcGVyIGxhbmdrYWggdW50dWsgbWVtZWNhaGthbiBtYXNhbGFoIGRhcmkgeWFuZyBtdWRhaCBoaW5nZ2EgbWFzYWxhaCB5YW5nIHN1bGl0Lg0KDQpzdHJ1a3R1ciBkYXRhIGFkYWxhaCBrdW1wdWxhbiBkYXRhIHlhbmcgZGlhdHVyLCBkaXN1c3VuLCBkYW4gZGkgc2ltcGFuIHBhZGEgc3VhdHUgdGVtcGF0IHBlbnlpbXBhbmFuIHlhbmcgZGFwYXQgZGkgcGFuZ2dpbCBrZW1iYWxpIHVudHVrIGRpZ3VuYWthbiBhdGF1IGRpdWJhaCBzZXN1YWkga2VwZXJsdWFubnlhLg0KDQojIyBmaXNpa2ENCg0KQWxnb3JpdG1hIGFkYWxhaCB1cnV0YW4gcGVybnlhdGFhbiB5YW5nIHRlcnN1c3VuIGRhbiBtZW1pbGlraSBhcnRpIHlhbmcgdGlkYWsgYW1iaWd1IHVudHVrIG1lbWVjYWhrYW4gc3VhdHUgbWFzYWxhaCBzZXBlcnRpIGRhbGFtIGJpZGFuZyBmaXNpa2EgeWFpdHUgZGFsYW0gbWVuZW50dWthbiBzdHJ1a3R1ciBtb2xla3VsLCBtZW1wZXJraXJha2FuIHBhcmFtZXRlciBnYWxha3NpIHlhbmcgYmVyaW50ZXJha3NpLCBrZWFkYWFuIGRhc2FyIHNpc3RlbSBrdWFudHVtIGVsZWt0cm9uaWssIHBlcmlsYWt1IGJhaGFuIG1hZ25ldGlrIHlhbmcgdGlkYWsgdGVyYXR1ciwgZGFuIHRyYW5zaXNpIGZhc2UgZGFsYW0gbWFzYWxhaCBvcHRpbWFzaSBrb21iaW5hdG9yaWFsLCBkYW4gbWFzaWggYmFueWFrIGxhZ2kuDQoNClN0cnVrdHVyIERhdGEgYWRhbGFoIGNhcmEgeWFuZyBkaWd1bmFrYW4gdW50dWsgbWVuZ2F0dXIgZGF0YSBzZWhpbmdnYSBkYXBhdCBkaWd1bmFrYW4gc2VjYXJhIGVmZWt0aWYgZGFuIG11ZGFoIGRpZ3VuYWthbiB5YW5nIHNhbmdhdCBwZW50aW5nIGRhbGFtIGJhbnlhayBjYWJhbmcgZmlzaWthIGRhbiBwZW5lbGl0aWFuIHRlb3JldGlzIHNlcmluZyBrYWxpIG1lbmdoYXNpbGthbiB0ZWtuaWsgc2ltdWxhc2kgYmFydSB5YW5nIGZ1bmRhbWVudGFsIHVudHVrIGRpaW1wbGVtZW50YXNpa2FuIGRhbiBkaWV2YWx1YXNpDQoNCiMjIHRla25payBpbmZvcm1hdGlrYQ0KDQphbGdvcml0bWEgYWRhbGFoIHNlYnVhaCBwcm9zZXMgYXRhdSBwcm9zZWR1ciBkYWxhbSBwZW5nZ3VuYWFuIGRhdGEgeWFuZyBtZWxpcHV0aSBsYW5na2FoLWxhbmdrYWggcGVyaGl0dW5nYW4sIHBlbmFsYXJhbiwgcGVtcm9ncmFtYW4sIHBlbmdvbGFoYW4gZGFuIHBlbXJvc2VzYW4gZGF0YSB1bnR1ayBtZW55ZWxlc2Fpa2FuIHN1YXR1IG1hc2FsYWgNCg0Kc3RydWt0dXIgZGF0YSBtZXJ1cGFrYW4gc3VhdHUgaWxtdSB5YW5nIG1lbXBlbGFqYXJpIHNpc3RlbSBwZW5nb3JnYW5pc2FzaWFuIGRhdGEgcGFkYSBtZW1vcmkga29tcHV0ZXIgbWF1cHVuIGZpbGUgKGJlcmthcykgcGFkYSBzdWF0dSBtZWRpYSBwZW55aW1wYW5hbiBkZW5nYW4gbWVuZ2d1bmFrYW4gc3RydWt0dXIgZGF0YSBhcnJheSwgc3RydWN0LCB0cmVlLCBkYW4gZmlsZSBtZW5nZ3VuYWthbiB0ZWtuaWstdGVrbmlrIHNlcGVydGkgc3RhY2ssIHF1ZXVlLCBkYW4gbGlua2VkIGxpc3Qgc2VydGEgaGFzaGluZy4NCg0KIyMgc2lzdGVtIGluZm9ybWFzaQ0KDQphbGdvcml0bWEgYWRhbGFoIHByb3NlcyBhdGF1IHNlcmFuZ2thaWFuIGF0dXJhbiB5YW5nIGhhcnVzIGRpaWt1dGkgZGFsYW0gcGVyaGl0dW5nYW4gYXRhdSBvcGVyYXNpIHBlbWVjYWhhbiBtYXNhbGFoIGxhaW5ueWEsIHRlcnV0YW1hIG9sZWgga29tcHV0ZXIuIERlbmdhbiBrYXRhIGxhaW4sIHNlbXVhIHN1c3VuYW4gbG9naXMgeWFuZyBkaXVydXRrYW4gYmVyZGFzYXJrYW4gc2lzdGVtYXRpa2EgdGVydGVudHUgZGFuIGRpZ3VuYWthbiB1bnR1ayBtZW1lY2Foa2FuIHN1YXR1IG1hc2FsYWguDQoNCnN0cnVrdHVyIGRhdGEgYWRhbGFoIGNhcmEgcGVueWltcGFuYW4sIHBlbnl1c3VuYW4gZGFuIHBlbmdhdHVyYW4gZGF0YSBkaSBkYWxhbSBtZWRpYSBwZW55aW1wYW5hbiBrb21wdXRlciBzZWhpbmdnYSBkYXRhIHRlcnNlYnV0IGRhcGF0IGRpZ3VuYWthbiBzZWNhcmEgZWZpc2llbi4NCg0KIyBTZWJhZ2FpIG1haGFzaXN3YSBidWF0bGFoIGFsZ29yaXRtYSBkYW4gZmxvd2NoYXJ0IHlhbmcgYW5kYSBsYWt1a2FuIHVudHVrIG1lbmNhcGFpIGtlbHVsdXNhbiBzYXJqYW5hIGRlbmdhbiBJUEsgbWluaW1hbCAzLjUgZGFyaSBVbml2ZXJzaXRhcyBNYXRhbmEuIQ0KDQoqamF3YWJhbioNCg0KIyMgYWxnb3JpdG1hDQoNCioqKjEuIG1lbmdpa3V0aSBtYXRhIGt1bGlhaCoqKg0KDQoqKioyLiBtZW5nZXJqYWthbiB0dWdhcy10dWdhcyoqKg0KDQoqKiozLiBtZW5naWt1dGkgdXRzIGRhbiB1YXMgZGVuZ2FuIGlwcyBtaW5pbWFsIDMuNSoqKg0KDQoqKio0LiBsdWx1cyBtYXRhIGt1bGlhaCBhdGF1IHRpZGFrIChqaWthIHRpZGFrIGFrYW4ga2VtYmFsaSBtZW5ndWxhbmcsIGppa2EgbHVsdXMgbGFuanV0KSoqKg0KDQoqKio1LiBzZW1lc3RlciBiZXJpa3V0bnlhIChqaWthIGJlbHVtIHNlbWVzdGVyIDcgbWFrYSBtZW5naWt1dGkga2VnaWF0YW4gc2ViZWx1bW55YSwgamlrYSBzdWRhaCBzZW1lc3RlciA3IGxhbmp1dCkqKioNCg0KKioqNi4gbWFnYW5nKioqDQoNCioqKjcuIG1lbnl1c3VuIHNrcmlwc2kqKioNCg0KKioqOC4gbWVuZ2FqdWthbiBza3JpcHNpKGppa2EgZGl0b2xhayBtYWthIHJldmlzaSBkYW4gYWp1a2FuIGtlbWJhbGksIGppa2EgZGl0ZXJpbWEgbGFuanV0IHNpZGFuZyoqKg0KDQoqKio5LiBzaWRhbmcgc2tyaXBzaSoqKg0KDQoqKioxMC4gbHVsdXMqKioNCg0KIyMgZmxvd2NoYXJ0DQoNCjxpbWcgc3JjPSJGbG93Y2hhcnQucG5nIi8+DQoNCiMgTWVuZ2FwYSBhbmRhIGhhcnVzIGJlbGFqYXIgQWxnb3JpdG1hIGRhbiBTdHJ1a3R1ciBEYXRhPw0KDQoqamF3YWJhbioNCg0KMS4gbWVtYnVhdCBjYXJhIGJlcnBpa2lyIGtpdGEgZGFsYW0gbWVuZ2hhZGFwaSBzZWJ1YWggbWFzYWxhaCBtZW5qYWRpIHJhc2lvbmFsLCBsb2dpcywgZGFuIHNpc3RlbWF0aXMuDQoyLiBtZW1wZXJsdWFzIGNhcmEga2l0YSBiZXJwaWtpciBkYW4gYmVycGlraXIgcGFuamFuZyBkYWxhbSBtZW55ZWxlc2Fpa2FuIG1hc2FsYWguDQozLiBtZW1wZXJrdWF0IGFuYWxpc2lzIGtpdGEgZGFsYW0gbWVtYnVhdCBzdWF0dSBwcm9ncmFtLg0KNC4gbWFtcHUgbWVtYWhhbWkgY2FyYSBiZXJwaWtpciBkYXJpIHNlYnVhaCBrb21wdXRlciBhdGF1IHByb2dyYW0uDQoNCiMgU2VidXRrYW4gMyBiYWhhc2EgcGVtcm9ncmFtYW4geWFuZyB5YW5nIHBhbGluZyBiYW55YWsgZGlndW5ha2FuIGRhbGFtIFNhaW5zIERhdGEsIEJlcmlrYW4gcGVuamVsYXNhbiBrZWxlYmloYW4sIGtla3VyYW5nYW4sIGRhbiBodWJ1bmdhbiBiYWhhc2EgcGVtcm9nYW1hbiB5YW5nIHNhdHUgZGVuZ2FuIHlhbmcgbGFpbm55YS4NCg0KKmphd2FiYW4qDQoNCmphdmEsIHBoeXRvbiwgUg0KDQojIyBqYXZhDQpKYXZhIG1lcnVwYWthbiBzYWxhaCBzYXR1IGJhaGFzYSBwZW1yb2dyYW1hbiB5YW5nIHNhbmdhdCBwb3B1bGVyIGthcmVuYSBkYXBhdCBkaWd1bmFrYW4gcGFkYSBiZXJiYWdhaSBwbGF0Zm9ybSB5YW5nIGJlcmJlZGEuIEZsZWtzaWJpbGl0YXMgaW5pIG1lbmphZGkgZm9rdXMga2FyZW5hIGtpbmkgcHJvZ3JhbSBkaWhhcnVza2FuIHRhayBoYW55YSBvcHRpbWFsIGRpIHNhdHUgcGxhdGZvcm0gbmFtdW4ganVnYSBkYXBhdCBkaWd1bmFrYW4gc2VjYXJhIGJhaWsgZGkgYmFueWFrIHRpcGUgcGVyYW5na2F0Lg0KDQojIyMga2VsZWJpaGFuIGphdmENCg0KKioqMS4gc2VkZXJoYW5hKioqDQoNCmphdmEgbWVtaWxpa2kga2VtdWRhaGFuIGRhbGFtIG1lbGFrdWthbiBwZW55dXN1bmFuIHNlYnVhaCBzY3JpcHQsIHNlbGFpbiBpdHUgYmFoYXNhIHBlbXJvZ3JhbWFuIHBhZGEgamF2YSBtdWRhaCB1bnR1ayBkaXBlbGFqYXJpIGRhbiBkaXBhaGFtaS4NCg0KKioqMi4gYmVyb3JpZW50YXNpIHBhZGEgb2JqZWsqKioNCg0KamF2YSBtZXJ1cGFrYW4gc2FsYWggc2F0dSBqZW5pcyBwZW1yb2dyYW1hbiB5YW5nIG1lbmdndW5ha2FuIGtvbnNlcCBPT1BzLCBzZWhpbmdnYSBzZXRpYXAgYXBsaWthc2kgeWFuZyBkaWJ1YXQgYXRhdSBkaWJhbmd1biBkZW5nYW4gbWVuZ2d1bmFrYW4gamF2YSBkYXBhdCBkaXNlc3VhaWthbiB0YW1waWxhbiBkYW4gaXNpIGFwbGlrYXNpIHRlcnNlYnV0IHVudHVrIGRpZ3VuYWthbiBkaSBwcm9ncmFtIGxhaW4uDQoNCioqKjMuIGJlcnNpZmF0IG11bHRpcGxhdGZvcm0qKioNCg0KamF2YSBiZXJzaWZhdCBtdWx0aXBsYXRmb3JtLCBhdGF1IGFydGlueWEgYmlzYSBkaWd1bmFrYW4gcGFkYSBwbGF0Zm9ybSBhcGFwdW4uIGRlbmdhbiBzaWZhdG55YSB5YW5nIG11bHRpcGxhdGZvcm0gbWVtYnVhdCBiZXJiYWdhaSBqZW5pcyBwZXJhbmdrYXQgZWxla3Ryb25payBtYW1wdSBtZW5qYWxhbmthbiBhcGxpa2FzaSBkYW4gcHJvZ3JhbSB5YW5nIGRpYnVhdCBtZW5nZ3VuYWthbiBqYXZhLg0KDQojIyMga2VrdXJhbmdhbiBqYXZhDQoNCioqKjEuIG1lbWFrYW4gYmFueWFrIG1lbW9yaSoqKg0KDQpkYWxhbSBwZW5nZ3VuYWFubnlhIGphdmEgbWVtYmVyaWthbiBiYW55YWsgZml0dXIgeWFuZyBtZW5kdWt1bmcsIG5hbXVuIGhhbCB0ZXJzZWJ1dCBkYXBhdCBtZW1ha2FuIGJhbnlha255YSBwZW5nZ3VuYWFuIG1lbW9yaSB5YW5nIGN1a3VwIGJlc2FyIGRhbGFtIHBlbmdndW5hYW5ueWEuDQoNCioqKjIuIG1lbmdndW5ha2FuIGtvZGUgeWFuZyBydW1pdCoqKg0KDQpqYXZhIG1lbWFuZyBtdWRhaCB1bnR1ayBkaWd1bmFrYW4gZGFuIGRpcGFoYW1pLCBuYW11biBpbmkgbWVtYnVhdCBrb2RlIGRhbGFtIGphdmEgbWVuamFkaSBrYWxpbWF0IHlhbmcgcGFuamFuZyBkYW4gcnVtaXQuDQoNCioqKjMuIG11ZGFoIHVudHVrIGRpdGlydSoqKg0KDQpzb3VyY2Uga29kZSBwYWRhIGJhaGFzYSBwZW1yb2dyYW1hbiBqYXZhIG11ZGFoIHVudHVrIHRlcmN1cmkgYXRhdSBkaWFtYmlsIGFsaWgsIHNlaGluZ2dhIGRhcGF0IG1lbXVuY3Vsa2FuIG1hc2FsYWggc2VwZXJ0aSBtdW5jdWxueWEgYXBsaWthc2kgZGFuIHByb2dyYW0gc2VqZW5pcywgZGFuIG1hc2FsYWgga2VhbWFuYW4gZGFsYW0gYXBsaWthc2kgYnVhdGFubnlhLg0KDQojIyBwaHl0b24NCg0KUGh5dG9uIGFkYWxhaCBiYWhhc2EgcGVtcm9ncmFtYW4gdGluZ2thdCB0aW5nZ2kgbmFtdW4gbXVkYWggZGlwYWhhbWkgb2xlaCBwZW11bGEuIEhhbCBpbmkgZGlzZWJhYmthbiBrYXJlbmEgcGVtYmFjYWFubnlhIG1lbmdndW5ha2FuIHN5bnRheCB0aWRhayB0ZXJsYWx1IHJ1bWl0LiBQaHl0b24gYmFueWFrIGRpZ3VuYWthbiBvbGVoIHBlcnVzYWhhYW4gYmVzYXIgZGFsYW0gcGVuZ2VtYmFuZ2FubnlhLCBzZXBlcnRpIEluc3RhZ3JhbSwgUGludGVyZXN0IGJhaGthbiBHb29nbGUuIG9sZWgga2FyZW5hIGl0dSBiYWhhc2EgcGVtcm9ncmFtYW4gaW5pIG1lbWlsaWtpIGt1YWxpdGFzIHlhbmcgYmFpayBkYWxhbSB0dWp1YW4gcGVuZ2VtYmFuZ2FuIHdlYi4NCg0KIyMjIGtlbGViaWhpbmEgcHl0aG9uDQoNCioqKjEuIG11ZGFoIGRpcGVsYWphcmkqKioNCg0Kc2FtYSBzZXBlcnRpIGphdmEsIHB5dGhvbiBqdWdhIG1lbmdndW5ha2FuIGJhaGFzYSBzZWRlcmhhbmEgeWFuZyBtdWRhaCB1bnR1ayBkaWd1bmFrYW4gZGFuIGRpcGVsYWphcmkuDQoNCioqKjIuIGdyYXRpcyoqKg0KDQpweXRob24gbWVydXBha2FuIGJhaGFzYSBwZW1yb2dyYW1hbiB5YW5nIGRhcGF0IGRpdW5kdWggc2VjYXJhIGdyYXRpcywga2FyZW5hIG11ZGFobnlhIHVudHVrIGRpcGVyb2xlaCBtZW1idWF0IGJhaGFzYSBwZW1yb2dyYW1hbiBpbmkgYmViYXMgdW50dWsgZGlndW5ha2FuLCBkYW4gZGFwYXQgZGlndW5ha2FuIHNlYmFnYWkgYWxhdCBwZW1iZWxhamFyYW4gZGFsYW0gbWVtYWhhbWkgZGFzYXIgcGVtcm9ncmFtYW4uDQoNCioqKjMuIG1lbXB1bnlhaSBsaWJyYXJ5IHlhbmcgYmFueWFrIGRhbiBsdWFzKioqDQoNCnB5dGhvbiBtZW1pbGlraSBiYW55YWsgbGlicmFyeSBkaWRhbGFtbnlhLCBzZWhpbmdnYSBkZW5nYW4gaW5pIGRhcGF0IG1lbXVkYWhrYW4gZGFsYW0gcGVtYWthaWFuIGtvZGUuIHNlaGluZ2dhIHRpZGFrIHBlcmx1IGRpdHVsaXMgc2VjYXJhIHVsYW5nIGRhbiBtYW51YWwuDQoNCiMjIyBrZWt1cmFuZ2FuIHB5dGhvbg0KDQoqKioxLiBrZXRlcmdhbnR1bmdhbiBweXRob24qKioNCg0Ka2VtdWRhaGFuIHlhbmcgZGliZXJpa2FuIG9sZWggYmFoYXNhIHBlbXJvZ3JhbWFuIHB5dGhvbiBtZW1idWF0IHBhcmEgcGVtYWthaW55YSB0ZXJsYWx1IHRlcmJpYXNhIGRlbmdhbiBpdHUsIHNlaGluZ2dhIHNhYXQgcGVuZ2d1bmEgaW5naW4gYmVyYWxpaCBrZSBiYWhhc2EgcGVtcm9ncmFtYW4gbGFpbiBha2FuIG1lbWdhbGFtaSBzZWRpa2l0IGtlc3VsaXRhbiB1bnR1ayBtZW1haGFtaW55YS4NCg0KKioqMi4gbGFtYmF0bnlhIGVrc2VrdXNpKioqDQoNCnB5dGhvbiBiZWtlcmphIGxlYmloIGxhbWJhdCBkaWJhbmRpbmdrYW4gZGVuZ2FuIGJhaGFzYSBwZW1yb2dyYW1hbiBsYWluLCBzZWhpbmdnYSBha2FuIG1lbWJ1dHVoa2FuIGxlYmloIGJhbnlhayB3YWt0dSBwYWRhIHNhYXQgcGVuZ3VqaWFuIGRhbiBtZW5qYWxhbmthbiBhcGxpa2FzaSB0ZXJzZWJ1dC4NCg0KKioqMy4ga2V0ZXJiYXRhc2FuIGtvZGUqKioNCg0KcHl0aG9uIG11bmdraW4gbXVkYWggdW50dWsgZGlndW5ha2FuIGRhbGFtIHBlbmdlbWJhbmdhbiB3ZWIsIG5hbXVuIG1lbWlsaWtpIGtldGVyYmF0YXNhbiBkYWxhbSBwZW51bGlzYW4ga29kZW55YS4gaGFsIGluaSBtZW1idWF0IHNlZGlraXQgZGV2ZWxvcGVyIHlhbmcgbWVuZ2d1bmFrYW4gaW5pIGRhbGFtIHBlbmdlbWJhbmdhbiBhcGxpa2FzaSBtZXJla2EuIHNlbGFpbiBpdHUga2V0ZXJiYXRhc2FuIGluaSBtZW1idWF0IHN1bGl0bnlhIHBlbXJvZ3JhbWFuIHlhbmcgZGlidWF0IHVudHVrIHR1anVhbiBtb2JpbGUgZGV2ZWxvcG1lbnQuDQoNCiMjIFINCg0KUiBtZXJ1cGFrYW4gQmFoYXNhIHBlbXJvZ3JhbWFuIGRhbiBhbGF0IGFuYWxpc2lzIHlhbmcgZGlrZW1iYW5na2FuIHBhZGEgdGFodW4gMTk5My4gQmFoYXNhIFBlbXJvZ3JhbWFuIGluaSBiYW55YWsgZGlndW5ha2FuIGRpZHVuaWEgZGlrYXJlbmFrYW4gUiBpbmkgZGFwYXQgZGl0ZXJhcGthbiBkYWxhbSBpbG11IHN0YXRpc3RpYywgdmlzdWFsaXNhc2kgZGF0YSBkYW4gbWFjaGluZSBsZWFybmluZyB5YW5nIHNhbmdhdCBsdWFzLg0KDQojIyMga2VsZWJpaGFuIFINCg0KKioqMS4gZmxleGliZWwqKioNCg0KYmFoYXNhIHBlbXJvZ3JhbWFuIHBhZGEgciBkYXBhdCB0ZXJodWJ1bmcga2UgZGFsYW0gcGxhdGZvcm0gbGFpbm55YSwgc2VoaW5nZ2EgZGFwYXQgdGVyaHVidW5nIGtlIGJlcmJhZ2FpIGJhc2lzIG9wZXJhc2kgc2VwZXJ0aSBtaWNyb3NvZnQgZXhjZWwsIE9yYWNsZSwgbXlTUUwsIGRsbC4NCg0KKioqMi4gcGVuZ2d1bmFhbiB1bnR1ayBzdGF0aXN0aWsqKioNCg0KUiB1bXVtbnlhIGRpZ3VuYWthbiB1bnR1ayBrZXBlcmx1YW4gc3RhdGlzdGlrYSwgc2VoaW5nZ2EgcGVuZ2d1bmFuIFIgdW50dWsga2VwZXJsdWFuIHN0YXRpc3RpayBzYW5nYXQgZGl1bmdndWxrYW4gZGliYW5kaW5na2FuIGRlbmdhbiBiYWhhc2EgcGVtcm9ncmFtYW4gbGFpbi4NCg0KKioqMy4gZ3JhdGlzKioqDQpzYW1hIHNlcGVydGkgUGh5dG9uLCBiYWhhc2EgcGVtcm9ncmFtYW4gUiBqdWdhIG9wZW4gc291cmNlIHlhbmcgYmVyYXJ0aSBSIGRhcGF0IGRlbmdhbiBtdWRhaCBkaXBlcm9sZWggb2xlaCBzaWFwYSBzYWphIHVudHVrIGJlbGFqYXIgY2FyYSBwZW1yb2dyYW1hbiBhdGF1cHVuIHVudHVrIHBlbmdndW5hYW4gdGluZ2thdCBsYW5qdXQuDQoNCiMjIyBrZWt1cmFuZ2FuIFINCg0KKioqcGVueWltcGFuYW4gZGF0YSoqKg0KDQpkYWxhbSBwZW5nZ3VuYWFuIFIsIGRhdGEgZGlzaW1wYW4gc2VjYXJhIGZpc2lrIHlhbmcgYWthbiBtZW1ha2FuIGJhbnlhayBtZW1vcmkuIGhhbCBpbmkgbWVtYnVhdCBtZW1vcmkgeWFuZyBzYW5nYXQgYmVzYXIgc2FhdCBkaWd1bmFrYW4gdW50dWsga2VwZXJsdWFuIGJpZyBkYXRhLg0KDQoqKipidWthbiB5YW5nIG11ZGFoIGRpcGFoYW1pKioqDQoNCmJhaGFzYSBwZW1yb2dyYW1hbiBSIHNhbmdhdCBydW1pdCBkYW4gc3VsaXQgZGlwZWxhamFyaSB1bnR1ayBwZW5nZ3VuYWFuIHBlcnRhbWEga2FsaSwga2V0aW1iYW5nIGJhaGFzYSBwZW1yb2dyYW1hbiBncmF0aXMgbGFpbiBzZXBlcnRpIHBoeXRvbi4gc2VoaW5nZ2EgUiB0aWRha2xhaCBiZWdpdHUgcmFtYWggdW50dWsgb3JhbmcgeWFuZyBpbmdpbiBiZWxhamFyIG1lbmdlbmFpIHBlbXJvZ3JhbWFuLg==