Setup Awal OpenThink SAS

Beriktu ini adalah langkah-langkah yang harus ada lakukan setelah menerima versi preview/beta dari openthink sas :

Instalasi DNS Lokal

Untuk DNS lokal, kita akan menggunakan yg kecil dan ringan, yaitu dnsmasq.

dnsmasq, ini merupakan paduan antara DHCP server dan DNS server. Tapi untuk konfigurasi kita, DHCP nya tidak akan kita aktifkan.

Pertama-tama, install terlebih dahulu dnsmasw dengan perintah berikut :

[sourcecode lang="php"]
wildan@OpenThinkLabs:~$ sudo apt-get install dnsmasq
[/sourcecode]

Konfigurasi dnsmasq ini bisa dilihat di /etc/dnsmasq.conf.
Silahkan lihat-lihat sebentar untuk melihat konfigurasi ini untuk memahami bagaimana dnsmasq bekerja.

Secara default, dnsmasq akan membaca file /etc/hosts untuk me-resolve nama domain ke alamat IP.

Ok.

Sebagai contoh, Kita akan membuat sebuah domain berikut untuk aplikasi kita :

smun1-singaparna.ok dengan alamat IP : 192.168.0.2

Tinggal tambahkan entri berikut di /etc/hosts

[sourcecode lang="php"]
192.168.0.2 smun1-singaparna.ok smun1-singaparna.ok
[/sourcecode]

Kemudian tambahkan namserver baru di /etc/resolv.conf

[sourcecode lang="php"]
nameserver 192.168.0.2
[/sourcecode]

Ok .., skrg coba restart dnsmasq dengan perintah berikut :

[sourcecode lang="php"]
wildan@OpenThinkLabs:~$ sudo /etc/init.d/dnsmasq restart
* Restarting DNS forwarder and DHCP server dnsmasq
[/sourcecode]

Sekarang, coba kita cek apakah sudah resolve atau belum entri DNS kita tadi, dengan menggunakan perintah nslookup :

[sourcecode lang="php"]
wildan@OpenThinkLabs:~$ sudo nslookup smun1-singaparna.ok
Server: 192.168.0.2
Address: 192.168.0.2#53

Name: smun1-singaparna.ok
Address: 192.168.0.2
[/sourcecode]

Kalau output sudah seperti diatas, berarti, konfigurasi dnsmasq/DNS anda sudah berhasil !

Buat Database untuk digunakan oleh OpenThink SAS

Disini kita menggunakan nama database smknbantar kalong … :) , sedikit nda nyambung dengan contoh diatas. Silahkan sesuaikan saja nama database sesuai dengan nama sekolah anda atau apa saja yg deskriptif.

[sourcecode lang="php"]
wildan@OpenThinkLabs:~$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 3
Server version: 5.0.75-0ubuntu10 (Ubuntu)

Type ‘help;’ or ‘h’ for help. Type ‘c’ to clear the buffer.

mysql> create database smknbantarkalong ;
Query OK, 1 row affected (0.00 sec)

mysql> grant all on smknbantarkalong.* to ‘smkn’@'localhost’ identified by ‘aljabar83′ ;
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges ;
Query OK, 0 rows affected (0.00 sec)
[/sourcecode]

Pada perintah grant diatas, kita memberikan akses ke database smknbantarkalong dengan username : smkn dan password : aljabar83. Silahkan ubah sesuai dengan keinginan
anda.

Copy dan Ekstrak Arsip Source Code OpenThink SAS

Kita Akan menyimpan source code OpenThink SAS di direktori /opt/openthinksas.
Jadi pertamakali buatlah direktori openthinksas terlebih dahulu kemudian copy arsip source code openthink sas kedirektori ini dan ekstrak lah :

[sourcecode lang="php"]
wildan@OpenThinkLabs:~$ sudo mkdir /opt/openthinksas
wildan@OpenThinkLabs:~$ sudo cp /media/cdrom/openthinksas-alpha-sf10-branches-rev10.tar.gz
wildan@OpenThinkLabs:~$ cd /opt/openthinksas
wildan@OpenThinkLabs:~$ sudo tar -xvvzf openthinksas-alpha-sf10-branches-rev10.tar.gz
[/sourcecode]

Harap bersabar ketika proses ekstrak, karena akan sedikit lama .. :)
Karena dokumentasi API nya dan ada beberapa dokumentasi lainnya dimasukkan kedalam arsip sorce code tersebut.

Ok, Jika sudah, maka Anda akan mendapatkan direktori baru di /opt/openthinksas, sbb :

[sourcecode lang="php"]
wildan@OpenThinkLabs:/opt/openthinksas$ ls
openthinksas-alpha-sf10-branches-rev10 openthinksas-alpha-sf10-branches-rev10.tar.gz
[/sourcecode]

Selanjutnya move semua file dibawah direktori openthinksas-alpha-sf10-branches-rev10 ke /opt/openthinksas, dengan perintaj berikut :

[sourcecode lang="php"]
wildan@OpenThinkLabs:/opt/openthinksas$ sudo mv openthinksas-alpha-sf10-branches-rev10/* .
[/sourcecode]

Sekarang, hapus direktori openthinksas-alpha-sf10-branches-rev10 dan file openthinksas-alpha-sf10-branches-rev10.tar.gz , dengan perintah berikut :

[sourcecode lang="php"]
wildan@OpenThinkLabs:/opt/openthinksas$ sudo rm -rvf openthinksas-alpha-sf10-branches-rev10*
[/sourcecode]

Jika sudah, maka direktori /opt/openthinksas akan berisi file dan direktori sbb :

[sourcecode lang="php"]
wildan@OpenThinkLabs:/opt/openthinksas$ ls -lh
total 48K
drwxr-xr-x 5 wildan wildan 4.0K 2009-06-30 09:22 apps
drwxr-xr-x 2 wildan wildan 4.0K 2009-06-30 09:22 batch
drwxr-xr-x 4 wildan wildan 4.0K 2009-06-30 09:22 cache
drwxr-xr-x 2 wildan wildan 4.0K 2009-06-30 09:22 config
drwxr-xr-x 4 wildan wildan 4.0K 2009-06-30 09:22 data
drwxr-xr-x 10 wildan wildan 4.0K 2009-06-30 09:22 doc
drwxr-xr-x 6 wildan wildan 4.0K 2009-06-30 09:22 lib
drwxr-xr-x 2 wildan wildan 4.0K 2009-06-30 09:22 log
drwxr-xr-x 29 wildan wildan 4.0K 2009-06-30 09:22 plugins
-rwxr-xr-x 1 wildan wildan 389 2009-06-30 09:15 symfony
drwxr-xr-x 5 wildan wildan 4.0K 2009-06-30 09:22 test
drwxr-xr-x 18 wildan wildan 4.0K 2009-06-30 09:22 web
[/sourcecode]

Generate struktur database dan objek model

Selanjutnya, kita akan mengisi database yg telah kita buat tadi dengan tabel-tabel yang akan menyimpan data OpenThink SAS (OpenThink School Automation System).

Tetapi, sebelumnya Kita akan mengubah dua buah file konfigurasi terlebih dahulu, yaitu :

  • /opt/openthinksas/config/propel.ini , dan
  • /opt/openthinksas/config/databases.yml

Pertama, propel.ini terlebih dahulu, buka file tersebut :

[sourcecode lang="php"]
wildan@OpenThinkLabs:/opt/openthinksas$ sudo jed config/propel.ini
[/sourcecode]

File ini berisi konfigurasi ORM Propel (Object Relational Mapping), sbb :

[sourcecode lang="php"]
propel.targetPackage = lib.model
propel.project = simmsit
propel.database = mysql
propel.database.createUrl = mysql://localhost/simmsit
propel.database.url = mysql://root:ayambakar@localhost/simmsit

propel.addGenericAccessors = true
propel.addGenericMutators = true
propel.addTimeStamp = false

propel.schema.validate = false

; directories
propel.home = .
propel.output.dir = /home/wildan/jobstuff/tobethink/webapps/openthinksas
propel.schema.dir = ${propel.output.dir}/config
propel.conf.dir = ${propel.output.dir}/config
propel.phpconf.dir = ${propel.output.dir}/config
propel.sql.dir = ${propel.output.dir}/data/sql
propel.runtime.conf.file = runtime-conf.xml
propel.php.dir = ${propel.output.dir}
propel.default.schema.basename = schema
propel.datadump.mapper.from = *schema.xml
propel.datadump.mapper.to = *data.xml

; builder settings
propel.builder.peer.class = addon.propel.builder.SfPeerBuilder
propel.builder.object.class = addon.propel.builder.SfObjectBuilder

propel.builder.objectstub.class = addon.propel.builder.SfExtensionObjectBuilder
propel.builder.peerstub.class = addon.propel.builder.SfExtensionPeerBuilder
propel.builder.objectmultiextend.class = addon.propel.builder.SfMultiExtendObjectBuilder
propel.builder.mapbuilder.class = addon.propel.builder.SfMapBuilderBuilder
propel.builder.interface.class = propel.engine.builder.om.php5.PHP5InterfaceBuilder
propel.builder.node.class = propel.engine.builder.om.php5.PHP5NodeBuilder
propel.builder.nodepeer.class = propel.engine.builder.om.php5.PHP5NodePeerBuilder
propel.builder.nodestub.class = propel.engine.builder.om.php5.PHP5ExtensionNodeBuilder
propel.builder.nodepeerstub.class = propel.engine.builder.om.php5.PHP5ExtensionNodePeerBuilder

propel.schema.validate = false

propel.addVendorInfo = false
propel.mysql.tableType = InnoDB
propel.packageObjectModel = true

propel.builder.addIncludes = false
propel.builder.addComments = false
propel.builder.addBehaviors = false
[/sourcecode]

Ada beberapa konfigurasi yang harus diubah, yaitu baris berikut :

[sourcecode lang="php"]
propel.project = simmsit
propel.database.createUrl = mysql://localhost/simmsit
propel.database.url = mysql://root:ayambakar@localhost/simmsit
propel.output.dir = /home/wildan/jobstuff/tobethink/webapps/openthinksas
[/sourcecode]

Ubah baris-baris diatas menjadi :

[sourcecode lang="php"]
propel.project = openthinksas
propel.database.createUrl = mysql://localhost/{database-anda}
propel.database.url = mysql://{username}:{password}@localhost/{database-anda}
propel.output.dir = /opt/openthinksas
[/sourcecode]

Dengan (misal):

{database-anda} = skmnbantarkalong
{username} = smkn
{password} = aljabar83

Sehingga, barisan konfigurasi diatas menjadi sebagai berikut :

[sourcecode lang="php"]
propel.project = openthinksas
propel.database.createUrl = mysql://localhost/smknbantarkalong
propel.database.url = mysql://smkn:aljabar83@localhost/smknbantarkalong
propel.output.dir = /opt/openthinksas
[/sourcecode]

Kedua, Kita update file databases.yml

[sourcecode lang="php"]
wildan@OpenThinkLabs:/opt/openthinksas$ sudo jed config/databases.yml
[/sourcecode]

File ini berisi konfigurasi koneksi ke database :

[sourcecode lang="php"]
all:
propel:
class: sfPropelDatabase
param:
dsn: mysql://root:ayambakar@localhost/simmsit
[/sourcecode]

Jika, kita sesuaikan dengan konfigurasi username dan password database smknbantarkalong tadi, maka konfigurasi diatas akan menjadi sebagai berikut :

[sourcecode lang="php"]
all:
propel:
class: sfPropelDatabase
param:
dsn: mysql://smkn:aljabar83@localhost/smknbantarkalong
[/sourcecode]

Ok .., sekarang kita akan mulai menggenerate tabel-tabel database kita, tinggal jalankan perintah berikut :

[sourcecode lang="php"]
wildan@OpenThinkLabs:/opt/openthinksas$ sudo ./symfony propel-build-all
[/sourcecode]

Pastikan proses diatas berhasil. Jika berhasil dibagian akhir akan muncul pesan seperti berikut :

[sourcecode lang="php"]
……………………………………………………………
……………………………………………………………
BUILD FINISHED

Total time: 5.0374 seconds
>> file- /opt/openthinksas/config/genera…-sfSimpleForumPlugin-schema.xml
>> file- /opt/openthinksas/config/generated-sfSimpleCMSPlugin-schema.xml
>> file- /opt/openthinksas/config/generated-nahoWikiPlugin-schema.xml
>> file- /opt/openthinksas/config/generated-sfJobQueuePlugin-schema.xml
>> file- /opt/openthinksas/config/generated-sfGuardPlugin-schema.xm
[/sourcecode]

Sip.., jika sudah sampai dilangkah ini, Anda bisa login ke mysql, dan melihat kalau tabel-tabel di database smknbantarkalong telah ter-generate :

[sourcecode lang="php"]
wildan@OpenThinkLabs:/opt/openthinksas$ mysql -u smkn -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 75
Server version: 5.0.75-0ubuntu10 (Ubuntu)

Type ‘help;’ or ‘h’ for help. Type ‘c’ to clear the buffer.

mysql> use smknbantarkalong ;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables ;
+——————————-+
| Tables_in_smknbantarkalong |
+——————————-+
| absensi |
| aksi |
| asisten_walikelas |
| asset_categories |
| asset_detail |
| asset_peminjaman |
| berita |
| berita_categories |
| berita_comment |
| biaya_nonspp |
| biaya_spp |
| buffer_transaksi |
| bugs |
| catatan_rapor |
| configuration |
| event_akademik |
| gelombang_pendaftaran |
| guru |
| guru_matapelajaran |
| guru_matapelajaran_kelas |
| guru_walikelas |
| history_angsuran |
| history_gaji |
| history_pinjaman |
| history_tarif |
| inbox |
| informasi_uh |
| jadwal_pelajaran |
| jam_pelajaran |
| kamus |
| kelompok_matapelajaran |
| kelompok_matapelajaran_detail |
| kode_agama |
| kode_aspek_kepribadian |
| kode_bahasa |
| kode_bank |
| kode_biaya |
| kode_bidang_prestasi |
| kode_event |
| kode_fungsional |
| kode_gol_darah |
| kode_golongan |
| kode_jabatan |
| kode_jenispekerjaan |
| kode_kelas |
| kode_keluarga |
| kode_komponennilai |
| kode_kondisi |
| kode_leave |
| kode_lokasi |
| kode_matapelajaran |
| kode_pegawai |
| kode_pekerjaan |
| kode_pendidikan |
| kode_penilaian_kinerja |
| kode_sekolah |
| kode_status_marital |
| kode_status_pegawai |
| kode_status_rumah |
| kode_struktural |
| kode_tipe_jabatan |
| kode_tipenilai |
| kode_tipenilai_afektif |
| kode_tipenilai_praktik |
| kode_tunjangan |
| kode_unit_kerja |
| konfigurasi_unit |
| kurikulum |
| log_kerja |
| manajemen_pmh |
| manajemen_soal |
| naho_wiki_content |
| naho_wiki_page |
| naho_wiki_revision |
| nilai_afektif |
| nilai_ijazah |
| nilai_praktik |
| nilai_rapor |
| nilai_siswa |
| nilai_uan |
| outbox |
| pegawai |
| pegawai_absensi |
| pegawai_anak |
| pegawai_bahasa |
| pegawai_biaya |
| pegawai_diklat |
| pegawai_fungsional |
| pegawai_golongan |
| pegawai_keahlian |
| pegawai_keluarga |
| pegawai_leave |
| pegawai_organisasi |
| pegawai_pasangan |
| pegawai_pendidikan |
| pegawai_pengalaman_kerja |
| pegawai_penilaian_kinerja |
| pegawai_piutang |
| pegawai_prestasi |
| pegawai_rekening |
| pegawai_riwayat_sakit |
| pegawai_status |
| pegawai_struktural |
| pegawai_tarif |
| pegawai_tunjanganlain |
| pegawai_vargaji |
| pelajaran_kelas |
| pelajaran_ujian |
| pembiayaan |
| perkiraan |
| perusahaan |
| perusahaan_kontak |
| pesan_rapor |
| piutang |
| psb_panitia |
| rapor_tk |
| rumus_rapor |
| sf_bb_category |
| sf_bb_forum |
| sf_bb_post |
| sf_blog_comment |
| sf_blog_post |
| sf_blog_tag |
| sf_guard_group |
| sf_guard_group_permission |
| sf_guard_permission |
| sf_guard_remember_key |
| sf_guard_user |
| sf_guard_user_group |
| sf_guard_user_permission |
| sf_job |
| sf_job_log |
| sf_job_queue |
| sf_simple_cms_page |
| sf_simple_cms_slot |
| sf_simple_forum_category |
| sf_simple_forum_forum |
| sf_simple_forum_post |
| sf_simple_forum_topic |
| sf_simple_forum_topic_view |
| siswa |
| siswa_beasiswa |
| siswa_calon |
| siswa_do |
| siswa_kelas |
| siswa_kepribadian |
| siswa_lulus |
| siswa_mutasi |
| siswa_ortu |
| siswa_penyakit |
| siswa_prestasi |
| siswa_psg |
| siswa_psg_detail |
| siswa_psg_jurnal |
| siswa_psg_pembimbing |
| siswa_wali |
| status_spp |
| trans_in |
| wisewords |
+——————————-+
159 rows in set (0.01 sec)
[/sourcecode]

Load data master

Sekarang database beserta struktur tabel nya telah berhasil dibuat, sekarang kita tinggal me-load data master awal kedalam database. Silahkan downlod file berikut : datamaster-openthinksas.sql

[sourcecode lang="php"]
wildan@OpenThinkLabs:~/jobstuff/tobeThink/Files/sql$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 34
Server version: 5.0.75-0ubuntu10 (Ubuntu)

Type ‘help;’ or ‘h’ for help. Type ‘c’ to clear the buffer.
mysql> use smknbantarkalong ;
mysql> . datamaster-openthinksas.sql
[/sourcecode]

Setup Apache Virtual Host

akan ditulis …

Testing

Jika sudah coba akses web openthink sas, sesuai dengan virtual host yang telah anda konfigurasikan :

Berikut ini adalah contoh tampilan awal :

OpenThink SAS

OpenThink SAS

This post was written by:

- who has written 96 posts on OpenThink SAS.


Contact the author

  • sinceu

    untuk aljabar83 di ganti sama apa :

    grant all on smknbantarkalong.* to ‘smkn’@'localhost’ identified by ‘aljabar83′ ;

    saya samakan tidak berjalan

  • http://wildanm.wordpress.com Wildan Maulana

    Sudah masuk ke mysql prompt kan ya Pak ?

    mysql>

    aljabar83 itu password untuk mengakses database smknbantarkalong dengan username smkn.

    Jadi nanti ketika login perintahnya akan seperti berikut (jika menggunakan shell) :

    ——————–cut——————
    wildan@OpenThinkLabs:~$ mysql -u smkn -p
    Enter password:
    Welcome to the MySQL monitor. Commands end with ; or \g.
    Your MySQL connection id is 71
    Server version: 5.0.75-0ubuntu10 (Ubuntu)

    Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.

    mysql> use smknbantarkalong ;
    Reading table information for completion of table and column names
    You can turn off this feature to get a quicker startup with -A

    Database changed
    ——————–cut——————

    Atau menggunakan phpmyadmin untuk lebih mudah.

    Tidak bisa nya kenapa Pak ? ada pesan error apa ?


Follow openthinksas on Twitter


Advertising



Related Sites

PHVsPjxsaT48c3Ryb25nPndvb19hZHNfcm90YXRlPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzE8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzLzEyNXgxMjVhLmpwZzwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzI8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzLzEyNXgxMjViLmpwZzwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzM8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzLzEyNXgxMjVjLmpwZzwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzQ8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzLzEyNXgxMjVkLmpwZzwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX21wdV9hZHNlbnNlPC9zdHJvbmc+IC0gPHNjcmlwdCB0eXBlPVwidGV4dC9qYXZhc2NyaXB0XCI+PCEtLQ0KZ29vZ2xlX2FkX2NsaWVudCA9IFwiY2EtcHViLTcxODAzMzkyNDUzOTQ4MDdcIjsNCi8qIE9wZW5UaGlua1NBUywgMzAweDI1MCwgY3JlYXRlZCA4LzE5LzEwICovDQpnb29nbGVfYWRfc2xvdCA9IFwiMzAzNjU0Mzk5MFwiOw0KZ29vZ2xlX2FkX3dpZHRoID0gMzAwOw0KZ29vZ2xlX2FkX2hlaWdodCA9IDI1MDsNCi8vLS0+DQo8L3NjcmlwdD4NCjxzY3JpcHQgdHlwZT1cInRleHQvamF2YXNjcmlwdFwiDQpzcmM9XCJodHRwOi8vcGFnZWFkMi5nb29nbGVzeW5kaWNhdGlvbi5jb20vcGFnZWFkL3Nob3dfYWRzLmpzXCI+DQo8L3NjcmlwdD48L2xpPjxsaT48c3Ryb25nPndvb19hZF9tcHVfZGlzYWJsZTwvc3Ryb25nPiAtIGZhbHNlPC9saT48bGk+PHN0cm9uZz53b29fYWRfbXB1X2ltYWdlPC9zdHJvbmc+IC0gaHR0cDovL29wZW50aGlua2xhYnMuY29tL2ltYWdlcy93b3Jrc2hvcF9saXN0LmdpZjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX21wdV91cmw8L3N0cm9uZz4gLSBodHRwOi8vd29ya3Nob3Aub3BlbnRoaW5rbGFicy5jb20vPC9saT48bGk+PHN0cm9uZz53b29fYWRfdG9wX2Fkc2Vuc2U8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19hZF90b3BfZGlzYWJsZTwvc3Ryb25nPiAtIHRydWU8L2xpPjxsaT48c3Ryb25nPndvb19hZF90b3BfaW1hZ2U8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzLzQ2OHg2MGEuanBnPC9saT48bGk+PHN0cm9uZz53b29fYWRfdG9wX3VybDwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF8xPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tPC9saT48bGk+PHN0cm9uZz53b29fYWRfdXJsXzI8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hZF91cmxfMzwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF80PC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tPC9saT48bGk+PHN0cm9uZz53b29fYWx0X3N0eWxlc2hlZXQ8L3N0cm9uZz4gLSBncmVlbi5jc3M8L2xpPjxsaT48c3Ryb25nPndvb19hdXRob3I8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fYXV0b19pbWc8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2N1c3RvbV9jc3M8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19jdXN0b21fZmF2aWNvbjwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2ZlYXR1cmVkX2NhdGVnb3J5PC9zdHJvbmc+IC0gTmV3czwvbGk+PGxpPjxzdHJvbmc+d29vX2ZlYXRfZW50cmllczwvc3Ryb25nPiAtIDQ8L2xpPjxsaT48c3Ryb25nPndvb19mZWVkYnVybmVyX2lkPC9zdHJvbmc+IC0gT3BlblRoaW5rU0FTPC9saT48bGk+PHN0cm9uZz53b29fZmVlZGJ1cm5lcl91cmw8L3N0cm9uZz4gLSBodHRwOi8vZmVlZHMuZmVlZGJ1cm5lci5jb20vT3BlbnRoaW5rU0FTPC9saT48bGk+PHN0cm9uZz53b29fZ29vZ2xlX2FuYWx5dGljczwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2hvbWU8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29faG9tZV90aHVtYl9oZWlnaHQ8L3N0cm9uZz4gLSA1NzwvbGk+PGxpPjxzdHJvbmc+d29vX2hvbWVfdGh1bWJfd2lkdGg8L3N0cm9uZz4gLSAxMDA8L2xpPjxsaT48c3Ryb25nPndvb19pbWFnZV9zaW5nbGU8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2xvZ288L3N0cm9uZz4gLSBodHRwOi8vc2FzLm9wZW50aGlua2xhYnMuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNS1sb2dvX3dpdGhfdGV4dF9zYXMucG5nPC9saT48bGk+PHN0cm9uZz53b29fbWFudWFsPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tL3N1cHBvcnQvdGhlbWUtZG9jdW1lbnRhdGlvbi9nYXpldHRlLWVkaXRpb24vPC9saT48bGk+PHN0cm9uZz53b29fcmVzaXplPC9zdHJvbmc+IC0gdHJ1ZTwvbGk+PGxpPjxzdHJvbmc+d29vX3Nob3J0bmFtZTwvc3Ryb25nPiAtIHdvbzwvbGk+PGxpPjxzdHJvbmc+d29vX3Nob3dfY2Fyb3VzZWw8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX3Nob3dfdmlkZW88L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX3NpbmdsZV9oZWlnaHQ8L3N0cm9uZz4gLSAxODA8L2xpPjxsaT48c3Ryb25nPndvb19zaW5nbGVfd2lkdGg8L3N0cm9uZz4gLSAyNTA8L2xpPjxsaT48c3Ryb25nPndvb190YWJzPC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb190aGVtZW5hbWU8L3N0cm9uZz4gLSBHYXpldHRlPC9saT48bGk+PHN0cm9uZz53b29fdXBsb2Fkczwvc3Ryb25nPiAtIGE6Mzp7aTowO3M6NzY6Imh0dHA6Ly9zYXMub3BlbnRoaW5rbGFicy5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy81LWxvZ29fd2l0aF90ZXh0X3Nhcy5wbmciO2k6MTtzOjc2OiJodHRwOi8vc2FzLm9wZW50aGlua2xhYnMuY29tL3dwLWNvbnRlbnQvd29vX3VwbG9hZHMvNC1sb2dvX3dpdGhfdGV4dF9zYXMucG5nIjtpOjI7czo3MjoiaHR0cDovL3Nhcy5vcGVudGhpbmtsYWJzLmNvbS93cC1jb250ZW50L3dvb191cGxvYWRzLzMtbG9nb193aXRoX3RleHQuanBnIjt9PC9saT48bGk+PHN0cm9uZz53b29fdmlkZW9fY2F0ZWdvcnk8L3N0cm9uZz4gLSBOZXdzPC9saT48L3VsPg==