From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============3381468813863573574==" MIME-Version: 1.0 From: Sreeni (Sreenivasa) Busam (Stellus) Subject: Re: [SPDK] Program core dumps when I/O is issued in thread. Date: Tue, 21 Nov 2017 21:22:57 +0000 Message-ID: In-Reply-To: 929C3F71-B6E7-474F-B4AA-FB20754F208A@intel.com List-ID: To: spdk@lists.01.org --===============3381468813863573574== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Ok. Thanks Jim. That is the problem. Let me test it and confirm you. From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Harris, James R Sent: Tuesday, November 21, 2017 12:31 PM To: Storage Performance Development Kit Subject: Re: [SPDK] Program core dumps when I/O is issued in thread. Hi Sreeni, I think you need a pthread_join() to make sure the main thread doesn=E2=80= =99t start cleaning up immediately after calling pthread_create(). -Jim From: SPDK = > on behalf of "Sreeni (Sreenivasa) Busam (Stellus)" > Reply-To: Storage Performance Development Kit > Date: Tuesday, November 21, 2017 at 1:14 PM To: Storage Performance Development Kit > Subject: Re: [SPDK] Program core dumps when I/O is issued in thread. Did any of you get a chance to look it this? I have modified the code for h= ello_world.c to issue I/O on device in a thread. The program crashes in qpa= ir allocation. Please let me know your thoughts on why it fails. Thanks for your help. From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Sreeni (Sreeni= vasa) Busam (Stellus) Sent: Monday, November 20, 2017 12:50 PM To: Storage Performance Development Kit > Subject: Re: [SPDK] Program core dumps when I/O is issued in thread. Hi Paul/Jim, I am trying to create some threads and issue I/O write and read by creating= qpair in each of the thread. If the I/O commands are run in main thread th= en the program works fine, but if I create a thread, the programs crashes a= nd fails in qpair allocation spdk_nvme_ctrlr_alloc_io_qpair(). I have attached the complete program. Here is the trace where crash happens. 0x0000000000412844 in nvme_pcie_qpair_process_completions ( qpair=3D0x103ffe9310, max_completions=3D127) at nvme_pcie.c:1893 #1 0x000000000040da10 in nvme_transport_qpair_process_completions ( qpair=3D0x103ffe9310, max_completions=3D0) at nvme_transport.c:201 #2 0x000000000040b4d4 in spdk_nvme_qpair_process_completions ( qpair=3D0x103ffe9310, max_completions=3D0) at nvme_qpair.c:368 #3 0x000000000041166f in _nvme_pcie_ctrlr_create_io_qpair ( ctrlr=3D0x103ffe93c0, qpair=3D0x103ff8ec90, qid=3D1) at nvme_pcie.c:1360 #4 0x00000000004118db in nvme_pcie_ctrlr_create_io_qpair (ctrlr=3D0x103ffe= 93c0, qid=3D1, opts=3D0x7f012053ecf0) at nvme_pcie.c:1426 #5 0x000000000040d7d7 in nvme_transport_ctrlr_create_io_qpair ( ctrlr=3D0x103ffe93c0, qid=3D1, opts=3D0x7f012053ecf0) at nvme_transport= .c:153 #6 0x000000000040512b in spdk_nvme_ctrlr_alloc_io_qpair (ctrlr=3D0x103ffe9= 3c0, user_opts=3D0x0, opts_size=3D0) at nvme_ctrlr.c:281 #7 0x000000000040441c in test_io_func1 (arg=3D0x7fff327fba48) at iostat.c:= 288 #8 0x00007f01211126ba in start_thread (arg=3D0x7f012053f700) at pthread_create.c:333 #9 0x00007f0120e483dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S please take a look and let know any pointers to debug the issue. I changed the ns_entry as shown here. struct ns_entry { struct spdk_nvme_ctrlr *ctrlr; struct spdk_nvme_ns *ns; int nsid; char ctrlr_name[MAX_CTRLR_NAME]; struct ns_entry *next; struct spdk_nvme_qpair *qpair[5]; int qpair_allocated; } Thanks, Sreeni From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Luse, Paul E Sent: Friday, November 17, 2017 11:02 AM To: Storage Performance Development Kit > Subject: Re: [SPDK] Regarding NVMe driver command queue depth. Cool, so working as you would expect now? From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Sreeni (Sreeni= vasa) Busam (Stellus) Sent: Friday, November 17, 2017 11:52 AM To: Storage Performance Development Kit > Subject: Re: [SPDK] Regarding NVMe driver command queue depth. Hi Jim, Thanks for taking a look at the problem. It is a logical bug. I fixed it. The memory for the qpair was allocated outside the ns_entry loop. I have two SSD devices and the memory was not allocated for the qpair for s= econd ns_entry. Here is the problem. ns_entry =3D g_namespaces; ns_entry->qpair_2 =3D spdk_nvme_ctrlr_alloc_io_qpair(ns_entry->ctrlr, = NULL, 0); if (ns_entry->qpair_2 =3D=3D NULL) { printf("The qpair allocation failed.\n"); exit (0); } while (ns_entry !=3D NULL) { cnt =3D 1; while (cnt) { // Fails to be successfully submit rc =3D stellus_spdk_nvme_ns_cmd_write(ns_entry, ns_entry->q= pair_2, sequence->buf, 0, /* LBA start */ 1, /* number of LBAs */ io_complete, sequence, 0) =E2=80=A6. Sreeni From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Harris, James R Sent: Friday, November 17, 2017 8:44 AM To: Storage Performance Development Kit > Subject: Re: [SPDK] Regarding NVMe driver command queue depth. Hi Sreeni, Can you step through your second call to spdk_nvme_ctrlr_alloc_io_qpair? T= he callstack clearly shows that qpair=3D0x0 was passed into stellus_spdk_nv= me_ns_cmd_write() at frame #3. So I think we should back up and figure out= why no I/O qpair was allocated (or maybe it was allocated but not saved in= a structure or something). -Jim From: SPDK = > on behalf of "Sreeni (Sreenivasa) Busam (Stellus)" > Reply-To: Storage Performance Development Kit > Date: Thursday, November 16, 2017 at 4:57 PM To: Storage Performance Development Kit > Subject: Re: [SPDK] Regarding NVMe driver command queue depth. I have been trying to test the number of commands that can be given to the = device at a time. I verified that a maximum of 254 commands could be issued= for a qpair. So I created a 2nd qpair for ns_entry and issued the I/O comm= ands, it was failing in the first command itself. Is it invalid to create 2= qpair for the same ns_entry and send command to device? The qpair is succe= ssfully created, but I could not submit command. I modified the hello_world program to test this and attached the related co= de. Please take a look and let me know what is the problem. 0x000000000040bae2 in nvme_allocate_request (qpair=3D0x0, payload=3D0x7fffa4726ba0, payload_size=3D512, cb_fn=3D0x4041a4 , cb_arg=3D0x7b4270) at nvme.c:85 #1 0x000000000040996c in _nvme_ns_cmd_rw (ns=3D0x100ff8ee40, qpair=3D0x0, payload=3D0x7fffa4726ba0, payload_offset=3D0, md_offset=3D0, lba=3D0, l= ba_count=3D1, cb_fn=3D0x4041a4 , cb_arg=3D0x7b4270, opc=3D1, io_flags= =3D0, apptag_mask=3D0, apptag=3D0, check_sgl=3Dtrue) at nvme_ns_cmd.c:440 #2 0x0000000000409fea in spdk_nvme_ns_cmd_write (ns=3D0x100ff8ee40, qpair= =3D0x0, buffer=3D0x10000f7000, lba=3D0, lba_count=3D1, cb_fn=3D0x4041a4 , cb_arg=3D0x7b4270, io_flags=3D0) at nvme_ns_cmd.c:649 #3 0x000000000040439d in stellus_spdk_nvme_ns_cmd_write (ns_entry=3D0x7b13= c0, qpair=3D0x0, buffer=3D0x10000f7000, lba=3D0, lba_count=3D1, cb_fn=3D0x40420d , cb_arg=3D0x7b4270, ioflags=3D0) at iost= at.c:233 #4 0x00000000004046b8 in test_io_func1 () at iostat.c:342 #5 0x0000000000404a94 in main (argc=3D1, argv=3D0x7fffa4726db8) at iostat.= c:503 (gdb) f 3 #3 0x000000000040439d in stellus_spdk_nvme_ns_cmd_write (ns_entry=3D0x7b13= c0, qpair=3D0x0, buffer=3D0x10000f7000, lba=3D0, lba_count=3D1, cb_fn=3D0x40420d , cb_arg=3D0x7b4270, ioflags=3D0) at iost= at.c:233 233 rc =3D spdk_nvme_ns_cmd_write(ns_entry->ns, qpair, = buffer, (gdb) p qpair $1 =3D (struct spdk_nvme_qpair *) 0x0 If any of you get time, please look at it. Thank you for your suggestion. From: SPDK [mailto:spdk-bounces(a)lists.01.org] On Behalf Of Sreeni (Sreeni= vasa) Busam (Stellus) Sent: Thursday, November 16, 2017 11:26 AM To: spdk(a)lists.01.org Subject: [SPDK] Regarding NVMe driver command queue depth. Hi Paul, I was reading about the driver from SPDK site, and interested in understand= ing the queue depth for a device. =E2=80=9CThe specification allows for thousands, but most devices support b= etween 32 and 128. The specification makes no guarantees about the performa= nce available from each queue pair, but in practice the full performance of= a device is almost always achievable using just one queue pair. For exampl= e, if a device claims to be capable of 450,000 I/O per second at queue dept= h 128, in practice it does not matter if the driver is using 4 queue pairs = each with queue depth 32, or a single queue pair with queue depth 128=E2=80= =9D When queue depth is mentioned for device, is it the number of commands that= can be issued from application to controller, and outstanding at any time? Is there NVMe driver API to set the queue depth? Is my understanding correc= t if I think that the size of queue is at firmware level? Please give some detail about the parameter. Thanks, Sreeni --===============3381468813863573574== Content-Type: text/html MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.html" PGh0bWwgeG1sbnM6dj0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTp2bWwiIHhtbG5zOm89InVy bjpzY2hlbWFzLW1pY3Jvc29mdC1jb206b2ZmaWNlOm9mZmljZSIgeG1sbnM6dz0idXJuOnNjaGVt YXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6d29yZCIgeG1sbnM6bT0iaHR0cDovL3NjaGVtYXMubWlj cm9zb2Z0LmNvbS9vZmZpY2UvMjAwNC8xMi9vbW1sIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv VFIvUkVDLWh0bWw0MCI+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIg Y29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxtZXRhIG5hbWU9IkdlbmVyYXRv ciIgY29udGVudD0iTWljcm9zb2Z0IFdvcmQgMTUgKGZpbHRlcmVkIG1lZGl1bSkiPg0KPHN0eWxl PjwhLS0NCi8qIEZvbnQgRGVmaW5pdGlvbnMgKi8NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6 IkNhbWJyaWEgTWF0aCI7DQoJcGFub3NlLTE6MiA0IDUgMyA1IDQgNiAzIDIgNDt9DQpAZm9udC1m YWNlDQoJe2ZvbnQtZmFtaWx5OiJNYWxndW4gR290aGljIjsNCglwYW5vc2UtMToyIDExIDUgMyAy IDAgMCAyIDAgNDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5OkNhbGlicmk7DQoJcGFub3Nl LTE6MiAxNSA1IDIgMiAyIDQgMyAyIDQ7fQ0KQGZvbnQtZmFjZQ0KCXtmb250LWZhbWlseToiXEBN YWxndW4gR290aGljIjsNCglwYW5vc2UtMToyIDExIDUgMyAyIDAgMCAyIDAgNDt9DQovKiBTdHls ZSBEZWZpbml0aW9ucyAqLw0KcC5Nc29Ob3JtYWwsIGxpLk1zb05vcm1hbCwgZGl2Lk1zb05vcm1h bA0KCXttYXJnaW46MGluOw0KCW1hcmdpbi1ib3R0b206LjAwMDFwdDsNCglmb250LXNpemU6MTEu MHB0Ow0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNlcmlmO30NCmE6bGluaywgc3Bhbi5N c29IeXBlcmxpbmsNCgl7bXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0KCWNvbG9yOiMwNTYzQzE7DQoJ dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt9DQphOnZpc2l0ZWQsIHNwYW4uTXNvSHlwZXJsaW5r Rm9sbG93ZWQNCgl7bXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0KCWNvbG9yOiM5NTRGNzI7DQoJdGV4 dC1kZWNvcmF0aW9uOnVuZGVybGluZTt9DQpzcGFuLkVtYWlsU3R5bGUxNw0KCXttc28tc3R5bGUt dHlwZTpwZXJzb25hbDsNCglmb250LWZhbWlseToiQ2FsaWJyaSIsc2Fucy1zZXJpZjsNCgljb2xv cjp3aW5kb3d0ZXh0O30NCnNwYW4uRW1haWxTdHlsZTE4DQoJe21zby1zdHlsZS10eXBlOnBlcnNv bmFsOw0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNlcmlmOw0KCWNvbG9yOiMxRjQ5N0Q7 fQ0Kc3Bhbi5FbWFpbFN0eWxlMTkNCgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWw7DQoJZm9udC1m YW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7DQoJY29sb3I6d2luZG93dGV4dDt9DQpzcGFuLkVt YWlsU3R5bGUyMA0KCXttc28tc3R5bGUtdHlwZTpwZXJzb25hbDsNCglmb250LWZhbWlseToiQ2Fs aWJyaSIsc2Fucy1zZXJpZjsNCgljb2xvcjojMUY0OTdEO30NCnNwYW4uRW1haWxTdHlsZTIxDQoJ e21zby1zdHlsZS10eXBlOnBlcnNvbmFsOw0KCWZvbnQtZmFtaWx5OiJDYWxpYnJpIixzYW5zLXNl cmlmOw0KCWNvbG9yOiMxRjQ5N0Q7fQ0Kc3Bhbi5FbWFpbFN0eWxlMjINCgl7bXNvLXN0eWxlLXR5 cGU6cGVyc29uYWw7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2VyaWY7DQoJY29sb3I6 IzFGNDk3RDt9DQpzcGFuLkVtYWlsU3R5bGUyMw0KCXttc28tc3R5bGUtdHlwZTpwZXJzb25hbDsN Cglmb250LWZhbWlseToiQ2FsaWJyaSIsc2Fucy1zZXJpZjsNCgljb2xvcjojMUY0OTdEO30NCnNw YW4uRW1haWxTdHlsZTI0DQoJe21zby1zdHlsZS10eXBlOnBlcnNvbmFsOw0KCWZvbnQtZmFtaWx5 OiJDYWxpYnJpIixzYW5zLXNlcmlmOw0KCWNvbG9yOndpbmRvd3RleHQ7fQ0Kc3Bhbi5FbWFpbFN0 eWxlMjUNCgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWwtcmVwbHk7DQoJZm9udC1mYW1pbHk6IkNh bGlicmkiLHNhbnMtc2VyaWY7DQoJY29sb3I6IzFGNDk3RDt9DQouTXNvQ2hwRGVmYXVsdA0KCXtt c28tc3R5bGUtdHlwZTpleHBvcnQtb25seTsNCglmb250LXNpemU6MTAuMHB0O30NCkBwYWdlIFdv cmRTZWN0aW9uMQ0KCXtzaXplOjguNWluIDExLjBpbjsNCgltYXJnaW46MS4waW4gMS4waW4gMS4w aW4gMS4waW47fQ0KZGl2LldvcmRTZWN0aW9uMQ0KCXtwYWdlOldvcmRTZWN0aW9uMTt9DQotLT48 L3N0eWxlPjwhLS1baWYgZ3RlIG1zbyA5XT48eG1sPg0KPG86c2hhcGVkZWZhdWx0cyB2OmV4dD0i ZWRpdCIgc3BpZG1heD0iMTAyNiIgLz4NCjwveG1sPjwhW2VuZGlmXS0tPjwhLS1baWYgZ3RlIG1z byA5XT48eG1sPg0KPG86c2hhcGVsYXlvdXQgdjpleHQ9ImVkaXQiPg0KPG86aWRtYXAgdjpleHQ9 ImVkaXQiIGRhdGE9IjEiIC8+DQo8L286c2hhcGVsYXlvdXQ+PC94bWw+PCFbZW5kaWZdLS0+DQo8 L2hlYWQ+DQo8Ym9keSBiZ2NvbG9yPSJ3aGl0ZSIgbGFuZz0iRU4tVVMiIGxpbms9IiMwNTYzQzEi IHZsaW5rPSIjOTU0RjcyIj4NCjxkaXYgY2xhc3M9IldvcmRTZWN0aW9uMSI+DQo8cCBjbGFzcz0i TXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+T2suIFRoYW5rcyBKaW0uIFRo YXQgaXMgdGhlIHByb2JsZW0uPG86cD48L286cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05v cm1hbCI+PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPkxldCBtZSB0ZXN0IGl0IGFuZCBjb25m aXJtIHlvdS48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48YSBu YW1lPSJfTWFpbEVuZENvbXBvc2UiPjxzcGFuIHN0eWxlPSJjb2xvcjojMUY0OTdEIj48bzpwPiZu YnNwOzwvbzpwPjwvc3Bhbj48L2E+PC9wPg0KPGRpdj4NCjxkaXYgc3R5bGU9ImJvcmRlcjpub25l O2JvcmRlci10b3A6c29saWQgI0UxRTFFMSAxLjBwdDtwYWRkaW5nOjMuMHB0IDBpbiAwaW4gMGlu Ij4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxiPkZyb206PC9iPiBTUERLIFttYWlsdG86c3Bkay1i b3VuY2VzQGxpc3RzLjAxLm9yZ10gPGI+T24gQmVoYWxmIE9mDQo8L2I+SGFycmlzLCBKYW1lcyBS PGJyPg0KPGI+U2VudDo8L2I+IFR1ZXNkYXksIE5vdmVtYmVyIDIxLCAyMDE3IDEyOjMxIFBNPGJy Pg0KPGI+VG86PC9iPiBTdG9yYWdlIFBlcmZvcm1hbmNlIERldmVsb3BtZW50IEtpdCAmbHQ7c3Bk a0BsaXN0cy4wMS5vcmcmZ3Q7PGJyPg0KPGI+U3ViamVjdDo8L2I+IFJlOiBbU1BES10gUHJvZ3Jh bSBjb3JlIGR1bXBzIHdoZW4gSS9PIGlzIGlzc3VlZCBpbiB0aHJlYWQuPG86cD48L286cD48L3A+ DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48 L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj5IaSBTcmVlbmksPG86cD48L286cD48L3A+DQo8cCBj bGFzcz0iTXNvTm9ybWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt YWwiPkkgdGhpbmsgeW91IG5lZWQgYSBwdGhyZWFkX2pvaW4oKSB0byBtYWtlIHN1cmUgdGhlIG1h aW4gdGhyZWFkIGRvZXNu4oCZdCBzdGFydCBjbGVhbmluZyB1cCBpbW1lZGlhdGVseSBhZnRlciBj YWxsaW5nIHB0aHJlYWRfY3JlYXRlKCkuPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9y bWFsIj48bzpwPiZuYnNwOzwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPi1KaW08bzpw PjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0K PHAgY2xhc3M9Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8ZGl2IHN0eWxlPSJi b3JkZXI6bm9uZTtib3JkZXItdG9wOnNvbGlkICNCNUM0REYgMS4wcHQ7cGFkZGluZzozLjBwdCAw aW4gMGluIDBpbiI+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6LjVp biI+PGI+PHNwYW4gc3R5bGU9ImNvbG9yOmJsYWNrIj5Gcm9tOiA8L3NwYW4+DQo8L2I+PHNwYW4g c3R5bGU9ImNvbG9yOmJsYWNrIj5TUERLICZsdDs8YSBocmVmPSJtYWlsdG86c3Bkay1ib3VuY2Vz QGxpc3RzLjAxLm9yZyI+c3Bkay1ib3VuY2VzQGxpc3RzLjAxLm9yZzwvYT4mZ3Q7IG9uIGJlaGFs ZiBvZiAmcXVvdDtTcmVlbmkgKFNyZWVuaXZhc2EpIEJ1c2FtIChTdGVsbHVzKSZxdW90OyAmbHQ7 PGEgaHJlZj0ibWFpbHRvOnMuYnVzYW1Ac3RlbGx1cy5jb20iPnMuYnVzYW1Ac3RlbGx1cy5jb208 L2E+Jmd0Ozxicj4NCjxiPlJlcGx5LVRvOiA8L2I+U3RvcmFnZSBQZXJmb3JtYW5jZSBEZXZlbG9w bWVudCBLaXQgJmx0OzxhIGhyZWY9Im1haWx0bzpzcGRrQGxpc3RzLjAxLm9yZyI+c3Bka0BsaXN0 cy4wMS5vcmc8L2E+Jmd0Ozxicj4NCjxiPkRhdGU6IDwvYj5UdWVzZGF5LCBOb3ZlbWJlciAyMSwg MjAxNyBhdCAxOjE0IFBNPGJyPg0KPGI+VG86IDwvYj5TdG9yYWdlIFBlcmZvcm1hbmNlIERldmVs b3BtZW50IEtpdCAmbHQ7PGEgaHJlZj0ibWFpbHRvOnNwZGtAbGlzdHMuMDEub3JnIj5zcGRrQGxp c3RzLjAxLm9yZzwvYT4mZ3Q7PGJyPg0KPGI+U3ViamVjdDogPC9iPlJlOiBbU1BES10gUHJvZ3Jh bSBjb3JlIGR1bXBzIHdoZW4gSS9PIGlzIGlzc3VlZCBpbiB0aHJlYWQuPC9zcGFuPjxzcGFuIHN0 eWxlPSJmb250LXNpemU6MTIuMHB0O2NvbG9yOmJsYWNrIj48bzpwPjwvbzpwPjwvc3Bhbj48L3A+ DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6 LjVpbiI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O1RpbWVzIE5ldyBSb21hbiZxdW90 OyxzZXJpZiI+PG86cD4mbmJzcDs8L286cD48L3NwYW4+PC9wPg0KPC9kaXY+DQo8cCBjbGFzcz0i TXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6LjVpbiI+PHNwYW4gc3R5bGU9ImNvbG9yOiMx RjQ5N0QiPkRpZCBhbnkgb2YgeW91IGdldCBhIGNoYW5jZSB0byBsb29rIGl0IHRoaXM/IEkgaGF2 ZSBtb2RpZmllZCB0aGUgY29kZSBmb3IgaGVsbG9fd29ybGQuYyB0byBpc3N1ZSBJL08gb24gZGV2 aWNlIGluIGEgdGhyZWFkLiBUaGUgcHJvZ3JhbSBjcmFzaGVzIGluIHFwYWlyIGFsbG9jYXRpb24u PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdp bi1sZWZ0Oi41aW4iPjxzcGFuIHN0eWxlPSJjb2xvcjojMUY0OTdEIj5QbGVhc2UgbGV0IG1lIGtu b3cgeW91ciB0aG91Z2h0cyBvbiB3aHkgaXQgZmFpbHMuIFRoYW5rcyBmb3IgeW91ciBoZWxwLjwv c3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4t bGVmdDouNWluIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+Jm5ic3A7PC9zcGFuPjxvOnA+ PC9vOnA+PC9wPg0KPGRpdj4NCjxkaXYgc3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci10b3A6c29s aWQgI0UxRTFFMSAxLjBwdDtwYWRkaW5nOjMuMHB0IDBpbiAwaW4gMGluIj4NCjxwIGNsYXNzPSJN c29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj48Yj5Gcm9tOjwvYj4gU1BESyBbPGEg aHJlZj0ibWFpbHRvOnNwZGstYm91bmNlc0BsaXN0cy4wMS5vcmciPm1haWx0bzpzcGRrLWJvdW5j ZXNAbGlzdHMuMDEub3JnPC9hPl0NCjxiPk9uIEJlaGFsZiBPZiA8L2I+U3JlZW5pIChTcmVlbml2 YXNhKSBCdXNhbSAoU3RlbGx1cyk8YnI+DQo8Yj5TZW50OjwvYj4gTW9uZGF5LCBOb3ZlbWJlciAy MCwgMjAxNyAxMjo1MCBQTTxicj4NCjxiPlRvOjwvYj4gU3RvcmFnZSBQZXJmb3JtYW5jZSBEZXZl bG9wbWVudCBLaXQgJmx0OzxhIGhyZWY9Im1haWx0bzpzcGRrQGxpc3RzLjAxLm9yZyI+c3Bka0Bs aXN0cy4wMS5vcmc8L2E+Jmd0Ozxicj4NCjxiPlN1YmplY3Q6PC9iPiBSZTogW1NQREtdIFByb2dy YW0gY29yZSBkdW1wcyB3aGVuIEkvTyBpcyBpc3N1ZWQgaW4gdGhyZWFkLjxvOnA+PC9vOnA+PC9w Pg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVm dDouNWluIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxl PSJtYXJnaW4tbGVmdDouNWluIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+SGkgUGF1bC9K aW0sPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1h cmdpbi1sZWZ0Oi41aW4iPjxzcGFuIHN0eWxlPSJjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3NwYW4+ PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6 LjVpbiI+PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPkkgYW0gdHJ5aW5nIHRvIGNyZWF0ZSBz b21lIHRocmVhZHMgYW5kIGlzc3VlIEkvTyB3cml0ZSBhbmQgcmVhZCBieSBjcmVhdGluZyBxcGFp ciBpbiBlYWNoIG9mIHRoZSB0aHJlYWQuIElmIHRoZSBJL08gY29tbWFuZHMgYXJlIHJ1biBpbiBt YWluIHRocmVhZCB0aGVuIHRoZSBwcm9ncmFtIHdvcmtzIGZpbmUsIGJ1dCBpZg0KIEkgY3JlYXRl IGEgdGhyZWFkLCB0aGUgcHJvZ3JhbXMgY3Jhc2hlcyBhbmQgZmFpbHMgaW4gcXBhaXIgYWxsb2Nh dGlvbiBzcGRrX252bWVfY3RybHJfYWxsb2NfaW9fcXBhaXIoKS48L3NwYW4+PG86cD48L286cD48 L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6LjVpbiI+PHNwYW4g c3R5bGU9ImNvbG9yOiMxRjQ5N0QiPkkgaGF2ZSBhdHRhY2hlZCB0aGUgY29tcGxldGUgcHJvZ3Jh bS4gSGVyZSBpcyB0aGUgdHJhY2Ugd2hlcmUgY3Jhc2ggaGFwcGVucy48L3NwYW4+PG86cD48L286 cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6LjVpbiI+PHNw YW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPjB4MDAwMDAwMDAwMDQxMjg0NCBpbiBudm1lX3BjaWVf cXBhaXJfcHJvY2Vzc19jb21wbGV0aW9ucyAoPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xh c3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPjxzcGFuIHN0eWxlPSJjb2xv cjojMUY0OTdEIj4mbmJzcDsmbmJzcDsmbmJzcDsgcXBhaXI9MHgxMDNmZmU5MzEwLCBtYXhfY29t cGxldGlvbnM9MTI3KSBhdCBudm1lX3BjaWUuYzoxODkzPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0K PHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPjxzcGFuIHN0eWxl PSJjb2xvcjojMUY0OTdEIj4jMSZuYnNwOyAweDAwMDAwMDAwMDA0MGRhMTAgaW4gbnZtZV90cmFu c3BvcnRfcXBhaXJfcHJvY2Vzc19jb21wbGV0aW9ucyAoPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0K PHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPjxzcGFuIHN0eWxl PSJjb2xvcjojMUY0OTdEIj4mbmJzcDsmbmJzcDsmbmJzcDsgcXBhaXI9MHgxMDNmZmU5MzEwLCBt YXhfY29tcGxldGlvbnM9MCkgYXQgbnZtZV90cmFuc3BvcnQuYzoyMDE8L3NwYW4+PG86cD48L286 cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6LjVpbiI+PHNw YW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPiMyJm5ic3A7IDB4MDAwMDAwMDAwMDQwYjRkNCBpbiBz cGRrX252bWVfcXBhaXJfcHJvY2Vzc19jb21wbGV0aW9ucyAoPC9zcGFuPjxvOnA+PC9vOnA+PC9w Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPjxzcGFuIHN0 eWxlPSJjb2xvcjojMUY0OTdEIj4mbmJzcDsmbmJzcDsmbmJzcDsgcXBhaXI9MHgxMDNmZmU5MzEw LCBtYXhfY29tcGxldGlvbnM9MCkgYXQgbnZtZV9xcGFpci5jOjM2ODwvc3Bhbj48bzpwPjwvbzpw PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj48c3Bh biBzdHlsZT0iY29sb3I6IzFGNDk3RCI+IzMmbmJzcDsgMHgwMDAwMDAwMDAwNDExNjZmIGluIF9u dm1lX3BjaWVfY3RybHJfY3JlYXRlX2lvX3FwYWlyICg8L3NwYW4+PG86cD48L286cD48L3A+DQo8 cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6LjVpbiI+PHNwYW4gc3R5bGU9 ImNvbG9yOiMxRjQ5N0QiPiZuYnNwOyZuYnNwOyZuYnNwOyBjdHJscj0weDEwM2ZmZTkzYzAsIHFw YWlyPTB4MTAzZmY4ZWM5MCwgcWlkPTEpIGF0IG52bWVfcGNpZS5jOjEzNjA8L3NwYW4+PG86cD48 L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6LjVpbiI+ PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPiM0Jm5ic3A7IDB4MDAwMDAwMDAwMDQxMThkYiBp biBudm1lX3BjaWVfY3RybHJfY3JlYXRlX2lvX3FwYWlyIChjdHJscj0weDEwM2ZmZTkzYzAsPC9z cGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1s ZWZ0Oi41aW4iPjxzcGFuIHN0eWxlPSJjb2xvcjojMUY0OTdEIj4mbmJzcDsmbmJzcDsmbmJzcDsg cWlkPTEsIG9wdHM9MHg3ZjAxMjA1M2VjZjApIGF0IG52bWVfcGNpZS5jOjE0MjY8L3NwYW4+PG86 cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6LjVp biI+PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPiM1Jm5ic3A7IDB4MDAwMDAwMDAwMDQwZDdk NyBpbiBudm1lX3RyYW5zcG9ydF9jdHJscl9jcmVhdGVfaW9fcXBhaXIgKDwvc3Bhbj48bzpwPjwv bzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj48 c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+Jm5ic3A7Jm5ic3A7Jm5ic3A7IGN0cmxyPTB4MTAz ZmZlOTNjMCwgcWlkPTEsIG9wdHM9MHg3ZjAxMjA1M2VjZjApIGF0IG52bWVfdHJhbnNwb3J0LmM6 MTUzPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1h cmdpbi1sZWZ0Oi41aW4iPjxzcGFuIHN0eWxlPSJjb2xvcjojMUY0OTdEIj4jNiZuYnNwOyAweDAw MDAwMDAwMDA0MDUxMmIgaW4gc3Bka19udm1lX2N0cmxyX2FsbG9jX2lvX3FwYWlyIChjdHJscj0w eDEwM2ZmZTkzYzAsPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIg c3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPjxzcGFuIHN0eWxlPSJjb2xvcjojMUY0OTdEIj4mbmJz cDsmbmJzcDsmbmJzcDsgdXNlcl9vcHRzPTB4MCwgb3B0c19zaXplPTApIGF0IG52bWVfY3RybHIu YzoyODE8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0i bWFyZ2luLWxlZnQ6LjVpbiI+PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPiM3Jm5ic3A7IDB4 MDAwMDAwMDAwMDQwNDQxYyBpbiB0ZXN0X2lvX2Z1bmMxIChhcmc9MHg3ZmZmMzI3ZmJhNDgpIGF0 IGlvc3RhdC5jOjI4ODwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwi IHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+Izgm bmJzcDsgMHgwMDAwN2YwMTIxMTEyNmJhIGluIHN0YXJ0X3RocmVhZCAoYXJnPTB4N2YwMTIwNTNm NzAwKTwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJt YXJnaW4tbGVmdDouNWluIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+Jm5ic3A7Jm5ic3A7 Jm5ic3A7IGF0IHB0aHJlYWRfY3JlYXRlLmM6MzMzPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAg Y2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPjxzcGFuIHN0eWxlPSJj b2xvcjojMUY0OTdEIj4jOSZuYnNwOyAweDAwMDA3ZjAxMjBlNDgzZGQgaW4gY2xvbmUgKCk8L3Nw YW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxl ZnQ6LjVpbiI+PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPiZuYnNwOyZuYnNwOyZuYnNwOyBh dCAuLi9zeXNkZXBzL3VuaXgvc3lzdi9saW51eC94ODZfNjQvY2xvbmUuUzwvc3Bhbj48bzpwPjwv bzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj48 c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+cGxlYXNlIHRha2UgYSBsb29rIGFuZCBsZXQga25v dyBhbnkgcG9pbnRlcnMgdG8gZGVidWcgdGhlIGlzc3VlLg0KPC9zcGFuPjxvOnA+PC9vOnA+PC9w Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPjxzcGFuIHN0 eWxlPSJjb2xvcjojMUY0OTdEIj5JIGNoYW5nZWQgdGhlIG5zX2VudHJ5IGFzIHNob3duIGhlcmUu PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdp bi1sZWZ0Oi41aW47dGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5 OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij5zdHJ1Y3QgbnNfZW50cnkgezwvc3Bhbj48bzpwPjwv bzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluO3Rl eHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDb3VyaWVy IE5ldyZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHN0cnVjdCBzcGRrX252bWVfY3Ry bHImbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgKmN0cmxyOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4N CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluO3RleHQtYXV0b3Nw YWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90 OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHN0cnVjdCBzcGRrX252bWVfbnMmbmJzcDsmbmJz cDsgKm5zOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxl PSJtYXJnaW4tbGVmdDouNWluO3RleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250 LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 IGludCBuc2lkOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0 eWxlPSJtYXJnaW4tbGVmdDouNWluO3RleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJm b250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7IGNoYXIgY3RybHJfbmFtZVtNQVhfQ1RSTFJfTkFNRV07PC9zcGFuPjxvOnA+PC9vOnA+PC9w Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW47dGV4dC1hdXRv c3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1 b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgc3RydWN0IG5zX2VudHJ5Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICpuZXh0Ozwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxw IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluO3RleHQtYXV0b3NwYWNl Om5vbmUiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+ Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IHN0cnVjdCBzcGRrX252bWVfcXBhaXImbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsgKnFwYWlyWzVdOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNz PSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj48c3BhbiBzdHlsZT0iZm9udC1m YW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBp bnQgcXBhaXJfYWxsb2NhdGVkOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29O b3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6 JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPn08L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFz cz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6LjVpbiI+PHNwYW4gc3R5bGU9ImNvbG9y OiMxRjQ5N0QiPiZuYnNwOzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt YWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+ VGhhbmtzLDwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxl PSJtYXJnaW4tbGVmdDouNWluIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+U3JlZW5pPC9z cGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1s ZWZ0Oi41aW4iPjxzcGFuIHN0eWxlPSJjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3NwYW4+PG86cD48 L286cD48L3A+DQo8ZGl2Pg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xp ZCAjRTFFMUUxIDEuMHB0O3BhZGRpbmc6My4wcHQgMGluIDBpbiAwaW4iPg0KPHAgY2xhc3M9Ik1z b05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPjxiPkZyb206PC9iPiBTUERLIFs8YSBo cmVmPSJtYWlsdG86c3Bkay1ib3VuY2VzQGxpc3RzLjAxLm9yZyI+bWFpbHRvOnNwZGstYm91bmNl c0BsaXN0cy4wMS5vcmc8L2E+XQ0KPGI+T24gQmVoYWxmIE9mIDwvYj5MdXNlLCBQYXVsIEU8YnI+ DQo8Yj5TZW50OjwvYj4gRnJpZGF5LCBOb3ZlbWJlciAxNywgMjAxNyAxMTowMiBBTTxicj4NCjxi PlRvOjwvYj4gU3RvcmFnZSBQZXJmb3JtYW5jZSBEZXZlbG9wbWVudCBLaXQgJmx0OzxhIGhyZWY9 Im1haWx0bzpzcGRrQGxpc3RzLjAxLm9yZyI+c3Bka0BsaXN0cy4wMS5vcmc8L2E+Jmd0Ozxicj4N CjxiPlN1YmplY3Q6PC9iPiBSZTogW1NQREtdIFJlZ2FyZGluZyBOVk1lIGRyaXZlciBjb21tYW5k IHF1ZXVlIGRlcHRoLjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJN c29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj4mbmJzcDs8bzpwPjwvbzpwPjwvcD4N CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj48c3BhbiBzdHls ZT0iY29sb3I6IzFGNDk3RCI+Q29vbCwgc28gd29ya2luZyBhcyB5b3Ugd291bGQgZXhwZWN0IG5v dz88L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFy Z2luLWxlZnQ6LjVpbiI+PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPiZuYnNwOzwvc3Bhbj48 bzpwPjwvbzpwPjwvcD4NCjxkaXY+DQo8ZGl2IHN0eWxlPSJib3JkZXI6bm9uZTtib3JkZXItdG9w OnNvbGlkICNFMUUxRTEgMS4wcHQ7cGFkZGluZzozLjBwdCAwaW4gMGluIDBpbiI+DQo8cCBjbGFz cz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6LjVpbiI+PGEgbmFtZT0iX19fX19yZXBs eXNlcGFyYXRvciI+PC9hPjxiPkZyb206PC9iPiBTUERLIFs8YSBocmVmPSJtYWlsdG86c3Bkay1i b3VuY2VzQGxpc3RzLjAxLm9yZyI+bWFpbHRvOnNwZGstYm91bmNlc0BsaXN0cy4wMS5vcmc8L2E+ XQ0KPGI+T24gQmVoYWxmIE9mIDwvYj5TcmVlbmkgKFNyZWVuaXZhc2EpIEJ1c2FtIChTdGVsbHVz KTxicj4NCjxiPlNlbnQ6PC9iPiBGcmlkYXksIE5vdmVtYmVyIDE3LCAyMDE3IDExOjUyIEFNPGJy Pg0KPGI+VG86PC9iPiBTdG9yYWdlIFBlcmZvcm1hbmNlIERldmVsb3BtZW50IEtpdCAmbHQ7PGEg aHJlZj0ibWFpbHRvOnNwZGtAbGlzdHMuMDEub3JnIj5zcGRrQGxpc3RzLjAxLm9yZzwvYT4mZ3Q7 PGJyPg0KPGI+U3ViamVjdDo8L2I+IFJlOiBbU1BES10gUmVnYXJkaW5nIE5WTWUgZHJpdmVyIGNv bW1hbmQgcXVldWUgZGVwdGguPG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xh c3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPiZuYnNwOzxvOnA+PC9vOnA+ PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPjxzcGFu IHN0eWxlPSJjb2xvcjojMUY0OTdEIj5IaSBKaW0sPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAg Y2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPjxzcGFuIHN0eWxlPSJj b2xvcjojMUY0OTdEIj4mbmJzcDs8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNv Tm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6LjVpbiI+PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5 N0QiPlRoYW5rcyBmb3IgdGFraW5nIGEgbG9vayBhdCB0aGUgcHJvYmxlbS4gSXQgaXMgYSBsb2dp Y2FsIGJ1Zy4gSSBmaXhlZCBpdC4NCjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJN c29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj48c3BhbiBzdHlsZT0iY29sb3I6IzFG NDk3RCI+VGhlIG1lbW9yeSBmb3IgdGhlIHFwYWlyIHdhcyBhbGxvY2F0ZWQgb3V0c2lkZSB0aGUg bnNfZW50cnkgbG9vcC4NCjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3Jt YWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+ SSBoYXZlIHR3byBTU0QgZGV2aWNlcyBhbmQgdGhlIG1lbW9yeSB3YXMgbm90IGFsbG9jYXRlZCBm b3IgdGhlIHFwYWlyIGZvciBzZWNvbmQgbnNfZW50cnkuPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0K PHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPjxzcGFuIHN0eWxl PSJjb2xvcjojMUY0OTdEIj5IZXJlIGlzIHRoZSBwcm9ibGVtLjwvc3Bhbj48bzpwPjwvbzpwPjwv cD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluO3RleHQtYXV0 b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZx dW90OyI+bnNfZW50cnkgPSBnX25hbWVzcGFjZXM7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAg Y2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW47dGV4dC1hdXRvc3BhY2U6 bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4m bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsNCjxiPm5zX2VudHJ5LSZndDtxcGFpcl8yID0gc3Bka19u dm1lX2N0cmxyX2FsbG9jX2lvX3FwYWlyKG5zX2VudHJ5LSZndDtjdHJsciwgTlVMTCwgMCk7PC9i Pjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJn aW4tbGVmdDouNWluO3RleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LWZhbWls eTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGlmIChu c19lbnRyeS0mZ3Q7cXBhaXJfMiA9PSBOVUxMKSB7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAg Y2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW47dGV4dC1hdXRvc3BhY2U6 bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4m bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgcHJpbnRmKCZxdW90O1RoZSBxcGFpciBhbGxvY2F0aW9uIGZhaWxlZC5cbiZxdW90Oyk7PC9z cGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1s ZWZ0Oi41aW47dGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZx dW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgZXhpdCAoMCk7PC9zcGFuPjxvOnA+PC9vOnA+PC9w Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW47dGV4dC1hdXRv c3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1 b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgfTwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxw IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj48c3BhbiBzdHlsZT0i Zm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyB3aGlsZSAobnNfZW50cnkgIT0gTlVMTCkgezwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxw IGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluO3RleHQtYXV0b3NwYWNl Om5vbmUiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+ Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7IGNudCA9IDE7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIg c3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW47dGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9 ImZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgd2hpbGUgKGNudCkgezwv c3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4t bGVmdDouNWluO3RleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTom cXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IC8vIEZhaWxzIHRvIGJlIHN1Y2Nlc3NmdWxseSBz dWJtaXQ8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0i bWFyZ2luLWxlZnQ6LjVpbjt0ZXh0LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1m YW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyByYyA9IHN0ZWxsdXNfc3Bka19udm1lX25zX2NtZF93cml0ZShuc19lbnRyeSwgbnNf ZW50cnktJmd0O3FwYWlyXzIsIHNlcXVlbmNlLSZndDtidWYsPC9zcGFuPjxvOnA+PC9vOnA+PC9w Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW47dGV4dC1hdXRv c3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1 b3Q7Ij4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgJm5ic3A7Jm5ic3A7Jm5ic3A7IDAsIC8qIExCQSBz dGFydCAqLzwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxl PSJtYXJnaW4tbGVmdDouNWluO3RleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250 LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZu YnNwOyZuYnNwOyZuYnNwOyAxLCAvKiBudW1iZXIgb2YgTEJBcyAqLzwvc3Bhbj48bzpwPjwvbzpw PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj48c3Bh biBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyAmbmJzcDsmbmJzcDsmbmJzcDsgaW9fY29tcGxldGUsIHNlcXVlbmNlLCAwKTwv c3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4t bGVmdDouNWluIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVv dDsiPiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyDigKYuPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIg c3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPjxzcGFuIHN0eWxlPSJjb2xvcjojMUY0OTdEIj4mbmJz cDs8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFy Z2luLWxlZnQ6LjVpbiI+PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPiZuYnNwOzwvc3Bhbj48 bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDou NWluIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+U3JlZW5pPC9zcGFuPjxvOnA+PC9vOnA+ PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPjxzcGFu IHN0eWxlPSJjb2xvcjojMUY0OTdEIj4mbmJzcDs8L3NwYW4+PG86cD48L286cD48L3A+DQo8ZGl2 Pg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjRTFFMUUxIDEuMHB0 O3BhZGRpbmc6My4wcHQgMGluIDBpbiAwaW4iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9 Im1hcmdpbi1sZWZ0Oi41aW4iPjxiPkZyb206PC9iPiBTUERLIFs8YSBocmVmPSJtYWlsdG86c3Bk ay1ib3VuY2VzQGxpc3RzLjAxLm9yZyI+bWFpbHRvOnNwZGstYm91bmNlc0BsaXN0cy4wMS5vcmc8 L2E+XQ0KPGI+T24gQmVoYWxmIE9mIDwvYj5IYXJyaXMsIEphbWVzIFI8YnI+DQo8Yj5TZW50Ojwv Yj4gRnJpZGF5LCBOb3ZlbWJlciAxNywgMjAxNyA4OjQ0IEFNPGJyPg0KPGI+VG86PC9iPiBTdG9y YWdlIFBlcmZvcm1hbmNlIERldmVsb3BtZW50IEtpdCAmbHQ7PGEgaHJlZj0ibWFpbHRvOnNwZGtA bGlzdHMuMDEub3JnIj5zcGRrQGxpc3RzLjAxLm9yZzwvYT4mZ3Q7PGJyPg0KPGI+U3ViamVjdDo8 L2I+IFJlOiBbU1BES10gUmVnYXJkaW5nIE5WTWUgZHJpdmVyIGNvbW1hbmQgcXVldWUgZGVwdGgu PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5 bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1z b05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPkhpIFNyZWVuaSw8bzpwPjwvbzpwPjwv cD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDouNWluIj4mbmJzcDs8 bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDou NWluIj5DYW4geW91IHN0ZXAgdGhyb3VnaCB5b3VyIHNlY29uZCBjYWxsIHRvIHNwZGtfbnZtZV9j dHJscl9hbGxvY19pb19xcGFpcj8mbmJzcDsgVGhlIGNhbGxzdGFjayBjbGVhcmx5IHNob3dzIHRo YXQgcXBhaXI9MHgwIHdhcyBwYXNzZWQgaW50byBzdGVsbHVzX3NwZGtfbnZtZV9uc19jbWRfd3Jp dGUoKSBhdCBmcmFtZSAjMy4mbmJzcDsgU28gSSB0aGluayB3ZSBzaG91bGQgYmFjayB1cCBhbmQN CiBmaWd1cmUgb3V0IHdoeSBubyBJL08gcXBhaXIgd2FzIGFsbG9jYXRlZCAob3IgbWF5YmUgaXQg d2FzIGFsbG9jYXRlZCBidXQgbm90IHNhdmVkIGluIGEgc3RydWN0dXJlIG9yIHNvbWV0aGluZyku PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6 LjVpbiI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0i bWFyZ2luLWxlZnQ6LjVpbiI+LUppbTxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h bCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPHAgY2xh c3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0Oi41aW4iPiZuYnNwOzxvOnA+PC9vOnA+ PC9wPg0KPGRpdiBzdHlsZT0iYm9yZGVyOm5vbmU7Ym9yZGVyLXRvcDpzb2xpZCAjQjVDNERGIDEu MHB0O3BhZGRpbmc6My4wcHQgMGluIDBpbiAwaW4iPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5 bGU9Im1hcmdpbi1sZWZ0OjEuMGluIj48Yj48c3BhbiBzdHlsZT0iY29sb3I6YmxhY2siPkZyb206 DQo8L3NwYW4+PC9iPjxzcGFuIHN0eWxlPSJjb2xvcjpibGFjayI+U1BESyAmbHQ7PGEgaHJlZj0i bWFpbHRvOnNwZGstYm91bmNlc0BsaXN0cy4wMS5vcmciPnNwZGstYm91bmNlc0BsaXN0cy4wMS5v cmc8L2E+Jmd0OyBvbiBiZWhhbGYgb2YgJnF1b3Q7U3JlZW5pIChTcmVlbml2YXNhKSBCdXNhbSAo U3RlbGx1cykmcXVvdDsgJmx0OzxhIGhyZWY9Im1haWx0bzpzLmJ1c2FtQHN0ZWxsdXMuY29tIj5z LmJ1c2FtQHN0ZWxsdXMuY29tPC9hPiZndDs8YnI+DQo8Yj5SZXBseS1UbzogPC9iPlN0b3JhZ2Ug UGVyZm9ybWFuY2UgRGV2ZWxvcG1lbnQgS2l0ICZsdDs8YSBocmVmPSJtYWlsdG86c3Bka0BsaXN0 cy4wMS5vcmciPnNwZGtAbGlzdHMuMDEub3JnPC9hPiZndDs8YnI+DQo8Yj5EYXRlOiA8L2I+VGh1 cnNkYXksIE5vdmVtYmVyIDE2LCAyMDE3IGF0IDQ6NTcgUE08YnI+DQo8Yj5UbzogPC9iPlN0b3Jh Z2UgUGVyZm9ybWFuY2UgRGV2ZWxvcG1lbnQgS2l0ICZsdDs8YSBocmVmPSJtYWlsdG86c3Bka0Bs aXN0cy4wMS5vcmciPnNwZGtAbGlzdHMuMDEub3JnPC9hPiZndDs8YnI+DQo8Yj5TdWJqZWN0OiA8 L2I+UmU6IFtTUERLXSBSZWdhcmRpbmcgTlZNZSBkcml2ZXIgY29tbWFuZCBxdWV1ZSBkZXB0aC48 L3NwYW4+PG86cD48L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFzcz0iTXNvTm9ybWFs IiBzdHlsZT0ibWFyZ2luLWxlZnQ6MS4waW4iPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVv dDtUaW1lcyBOZXcgUm9tYW4mcXVvdDssc2VyaWYiPiZuYnNwOzwvc3Bhbj48bzpwPjwvbzpwPjwv cD4NCjwvZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0OjEuMGlu Ij48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+SSBoYXZlIGJlZW4gdHJ5aW5nIHRvIHRlc3Qg dGhlIG51bWJlciBvZiBjb21tYW5kcyB0aGF0IGNhbiBiZSBnaXZlbiB0byB0aGUgZGV2aWNlIGF0 IGEgdGltZS4gSSB2ZXJpZmllZCB0aGF0IGEgbWF4aW11bSBvZiAyNTQgY29tbWFuZHMgY291bGQg YmUgaXNzdWVkIGZvciBhIHFwYWlyLiBTbyBJIGNyZWF0ZWQgYSAyPHN1cD5uZDwvc3VwPg0KIHFw YWlyIGZvciBuc19lbnRyeSBhbmQgaXNzdWVkIHRoZSBJL08gY29tbWFuZHMsIGl0IHdhcyBmYWls aW5nIGluIHRoZSBmaXJzdCBjb21tYW5kIGl0c2VsZi4gSXMgaXQgaW52YWxpZCB0byBjcmVhdGUg MiBxcGFpciBmb3IgdGhlIHNhbWUgbnNfZW50cnkgYW5kIHNlbmQgY29tbWFuZCB0byBkZXZpY2U/ IFRoZSBxcGFpciBpcyBzdWNjZXNzZnVsbHkgY3JlYXRlZCwgYnV0IEkgY291bGQgbm90IHN1Ym1p dCBjb21tYW5kLjwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0 eWxlPSJtYXJnaW4tbGVmdDoxLjBpbiI+PHNwYW4gc3R5bGU9ImNvbG9yOiMxRjQ5N0QiPkkgbW9k aWZpZWQgdGhlIGhlbGxvX3dvcmxkIHByb2dyYW0gdG8gdGVzdCB0aGlzIGFuZCBhdHRhY2hlZCB0 aGUgcmVsYXRlZCBjb2RlLiAmbmJzcDs8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0i TXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6MS4waW4iPjxzcGFuIHN0eWxlPSJjb2xvcjoj MUY0OTdEIj5QbGVhc2UgdGFrZSBhIGxvb2sgYW5kIGxldCBtZSBrbm93IHdoYXQgaXMgdGhlIHBy b2JsZW0uPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9 Im1hcmdpbi1sZWZ0OjEuMGluIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+Jm5ic3A7PC9z cGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1s ZWZ0OjEuMGluO3RleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTom cXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+MHgwMDAwMDAwMDAwNDBiYWUyIGluIG52bWVfYWxsb2Nh dGVfcmVxdWVzdCAocXBhaXI9MHgwLDwvc3Bhbj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJN c29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDoxLjBpbjt0ZXh0LWF1dG9zcGFjZTpub25lIj48 c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyZu YnNwOyZuYnNwOyBwYXlsb2FkPTB4N2ZmZmE0NzI2YmEwLCBwYXlsb2FkX3NpemU9NTEyLCBjYl9m bj0weDQwNDFhNCAmbHQ7d3JpdGVfY29tcGxldGUmZ3Q7LDwvc3Bhbj48bzpwPjwvbzpwPjwvcD4N CjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDoxLjBpbjt0ZXh0LWF1dG9z cGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVv dDsiPiZuYnNwOyZuYnNwOyZuYnNwOyBjYl9hcmc9MHg3YjQyNzApIGF0IG52bWUuYzo4NTwvc3Bh bj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVm dDoxLjBpbjt0ZXh0LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1 b3Q7Q291cmllciBOZXcmcXVvdDsiPiMxJm5ic3A7IDB4MDAwMDAwMDAwMDQwOTk2YyBpbiBfbnZt ZV9uc19jbWRfcncgKG5zPTB4MTAwZmY4ZWU0MCwgcXBhaXI9MHgwLDwvc3Bhbj48bzpwPjwvbzpw PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDoxLjBpbjt0ZXh0 LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBO ZXcmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyBwYXlsb2FkPTB4N2ZmZmE0NzI2YmEwLCBwYXls b2FkX29mZnNldD0wLCBtZF9vZmZzZXQ9MCwgbGJhPTAsIGxiYV9jb3VudD0xLDwvc3Bhbj48bzpw PjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDoxLjBp bjt0ZXh0LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q291 cmllciBOZXcmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyBjYl9mbj0weDQwNDFhNCAmbHQ7d3Jp dGVfY29tcGxldGUmZ3Q7LCBjYl9hcmc9MHg3YjQyNzAsIG9wYz0xLCBpb19mbGFncz0wLDwvc3Bh bj48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVm dDoxLjBpbjt0ZXh0LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1 b3Q7Q291cmllciBOZXcmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyBhcHB0YWdfbWFzaz0wLCBh cHB0YWc9MCwgY2hlY2tfc2dsPXRydWUpIGF0IG52bWVfbnNfY21kLmM6NDQwPC9zcGFuPjxvOnA+ PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0OjEuMGlu O3RleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVvdDtDb3Vy aWVyIE5ldyZxdW90OyI+IzImbmJzcDsgMHgwMDAwMDAwMDAwNDA5ZmVhIGluIHNwZGtfbnZtZV9u c19jbWRfd3JpdGUgKG5zPTB4MTAwZmY4ZWU0MCwgcXBhaXI9MHgwLDwvc3Bhbj48bzpwPjwvbzpw PjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDoxLjBpbjt0ZXh0 LWF1dG9zcGFjZTpub25lIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBO ZXcmcXVvdDsiPiZuYnNwOyZuYnNwOyZuYnNwOyBidWZmZXI9MHgxMDAwMGY3MDAwLCBsYmE9MCwg bGJhX2NvdW50PTEsIGNiX2ZuPTB4NDA0MWE0ICZsdDt3cml0ZV9jb21wbGV0ZSZndDssPC9zcGFu PjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0 OjEuMGluO3RleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTomcXVv dDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7IGNiX2FyZz0weDdiNDI3MCwg aW9fZmxhZ3M9MCkgYXQgbnZtZV9uc19jbWQuYzo2NDk8L3NwYW4+PG86cD48L286cD48L3A+DQo8 cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6MS4waW47dGV4dC1hdXRvc3Bh Y2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7 Ij4jMyZuYnNwOyAweDAwMDAwMDAwMDA0MDQzOWQgaW4gc3RlbGx1c19zcGRrX252bWVfbnNfY21k X3dyaXRlIChuc19lbnRyeT0weDdiMTNjMCw8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFz cz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6MS4waW47dGV4dC1hdXRvc3BhY2U6bm9u ZSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJz cDsmbmJzcDsmbmJzcDsgcXBhaXI9MHgwLCBidWZmZXI9MHgxMDAwMGY3MDAwLCBsYmE9MCwgbGJh X2NvdW50PTEsPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5 bGU9Im1hcmdpbi1sZWZ0OjEuMGluO3RleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJm b250LWZhbWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7IGNi X2ZuPTB4NDA0MjBkICZsdDtpb19jb21wbGV0ZSZndDssIGNiX2FyZz0weDdiNDI3MCwgaW9mbGFn cz0wKSBhdCBpb3N0YXQuYzoyMzM8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNv Tm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6MS4waW47dGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNw YW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4jNCZuYnNwOyAw eDAwMDAwMDAwMDA0MDQ2YjggaW4gdGVzdF9pb19mdW5jMSAoKSBhdCBpb3N0YXQuYzozNDI8L3Nw YW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxl ZnQ6MS4waW47dGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZx dW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4jNSZuYnNwOyAweDAwMDAwMDAwMDA0MDRhOTQgaW4gbWFp biAoYXJnYz0xLCBhcmd2PTB4N2ZmZmE0NzI2ZGI4KSBhdCBpb3N0YXQuYzo1MDM8L3NwYW4+PG86 cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6MS4w aW47dGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0Nv dXJpZXIgTmV3JnF1b3Q7Ij4oZ2RiKSBmIDM8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFz cz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6MS4waW47dGV4dC1hdXRvc3BhY2U6bm9u ZSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4jMyZu YnNwOyAweDAwMDAwMDAwMDA0MDQzOWQgaW4gc3RlbGx1c19zcGRrX252bWVfbnNfY21kX3dyaXRl IChuc19lbnRyeT0weDdiMTNjMCw8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNv Tm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6MS4waW47dGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNw YW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4mbmJzcDsmbmJz cDsmbmJzcDsgcXBhaXI9MHgwLCBidWZmZXI9MHgxMDAwMGY3MDAwLCBsYmE9MCwgbGJhX2NvdW50 PTEsPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1h cmdpbi1sZWZ0OjEuMGluO3RleHQtYXV0b3NwYWNlOm5vbmUiPjxzcGFuIHN0eWxlPSJmb250LWZh bWlseTomcXVvdDtDb3VyaWVyIE5ldyZxdW90OyI+Jm5ic3A7Jm5ic3A7Jm5ic3A7IGNiX2ZuPTB4 NDA0MjBkICZsdDtpb19jb21wbGV0ZSZndDssIGNiX2FyZz0weDdiNDI3MCwgaW9mbGFncz0wKSBh dCBpb3N0YXQuYzoyMzM8L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFs IiBzdHlsZT0ibWFyZ2luLWxlZnQ6MS4waW47dGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5 bGU9ImZvbnQtZmFtaWx5OiZxdW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4yMzMmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgcmMgPSBz cGRrX252bWVfbnNfY21kX3dyaXRlKG5zX2VudHJ5LSZndDtucywgcXBhaXIsIGJ1ZmZlciw8L3Nw YW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxl ZnQ6MS4waW47dGV4dC1hdXRvc3BhY2U6bm9uZSI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZx dW90O0NvdXJpZXIgTmV3JnF1b3Q7Ij4oZ2RiKSBwIHFwYWlyPC9zcGFuPjxvOnA+PC9vOnA+PC9w Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0OjEuMGluIj48c3BhbiBz dHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7Q291cmllciBOZXcmcXVvdDsiPiQxID0gKHN0cnVjdCBz cGRrX252bWVfcXBhaXIgKikgMHgwPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1z b05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0OjEuMGluIj48c3BhbiBzdHlsZT0iY29sb3I6IzFG NDk3RCI+Jm5ic3A7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIg c3R5bGU9Im1hcmdpbi1sZWZ0OjEuMGluIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+SWYg YW55IG9mIHlvdSBnZXQgdGltZSwgcGxlYXNlIGxvb2sgYXQgaXQuIFRoYW5rIHlvdSBmb3IgeW91 ciBzdWdnZXN0aW9uLg0KPC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1h bCIgc3R5bGU9Im1hcmdpbi1sZWZ0OjEuMGluIj48c3BhbiBzdHlsZT0iY29sb3I6IzFGNDk3RCI+ Jm5ic3A7PC9zcGFuPjxvOnA+PC9vOnA+PC9wPg0KPGRpdj4NCjxkaXYgc3R5bGU9ImJvcmRlcjpu b25lO2JvcmRlci10b3A6c29saWQgI0UxRTFFMSAxLjBwdDtwYWRkaW5nOjMuMHB0IDBpbiAwaW4g MGluIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDoxLjBpbiI+PGI+ RnJvbTo8L2I+IFNQREsgWzxhIGhyZWY9Im1haWx0bzpzcGRrLWJvdW5jZXNAbGlzdHMuMDEub3Jn Ij5tYWlsdG86c3Bkay1ib3VuY2VzQGxpc3RzLjAxLm9yZzwvYT5dDQo8Yj5PbiBCZWhhbGYgT2Yg PC9iPlNyZWVuaSAoU3JlZW5pdmFzYSkgQnVzYW0gKFN0ZWxsdXMpPGJyPg0KPGI+U2VudDo8L2I+ IFRodXJzZGF5LCBOb3ZlbWJlciAxNiwgMjAxNyAxMToyNiBBTTxicj4NCjxiPlRvOjwvYj4gPGEg aHJlZj0ibWFpbHRvOnNwZGtAbGlzdHMuMDEub3JnIj5zcGRrQGxpc3RzLjAxLm9yZzwvYT48YnI+ DQo8Yj5TdWJqZWN0OjwvYj4gW1NQREtdIFJlZ2FyZGluZyBOVk1lIGRyaXZlciBjb21tYW5kIHF1 ZXVlIGRlcHRoLjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjxwIGNsYXNzPSJNc29O b3JtYWwiIHN0eWxlPSJtYXJnaW4tbGVmdDoxLjBpbiI+Jm5ic3A7PG86cD48L286cD48L3A+DQo8 cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6MS4waW4iPkhpIFBhdWwsPG86 cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6MS4w aW4iPiZuYnNwOzxvOnA+PC9vOnA+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1h cmdpbi1sZWZ0OjEuMGluIj5JIHdhcyByZWFkaW5nIGFib3V0IHRoZSBkcml2ZXIgZnJvbSBTUERL IHNpdGUsIGFuZCBpbnRlcmVzdGVkIGluIHVuZGVyc3RhbmRpbmcgdGhlIHF1ZXVlIGRlcHRoIGZv ciBhIGRldmljZS48bzpwPjwvbzpwPjwvcD4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiIHN0eWxlPSJt YXJnaW4tbGVmdDoxLjBpbiI+PHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMy41cHQ7Zm9udC1mYW1p bHk6JnF1b3Q7QXJpYWwmcXVvdDssc2Fucy1zZXJpZjtjb2xvcjojMzMzMzMzO2JhY2tncm91bmQ6 d2hpdGUiPuKAnFRoZSBzcGVjaWZpY2F0aW9uIGFsbG93cyBmb3IgdGhvdXNhbmRzLCBidXQgbW9z dCBkZXZpY2VzIHN1cHBvcnQgYmV0d2VlbiAzMiBhbmQgMTI4LiBUaGUgc3BlY2lmaWNhdGlvbiBt YWtlcyBubyBndWFyYW50ZWVzDQogYWJvdXQgdGhlIHBlcmZvcm1hbmNlIGF2YWlsYWJsZSBmcm9t IGVhY2ggcXVldWUgcGFpciwgYnV0IGluIHByYWN0aWNlIHRoZSBmdWxsIHBlcmZvcm1hbmNlIG9m IGEgZGV2aWNlIGlzIGFsbW9zdCBhbHdheXMgYWNoaWV2YWJsZSB1c2luZyBqdXN0IG9uZSBxdWV1 ZSBwYWlyLiBGb3IgZXhhbXBsZSwgaWYgYSBkZXZpY2UgY2xhaW1zIHRvIGJlIGNhcGFibGUgb2Yg NDUwLDAwMCBJL08gcGVyIHNlY29uZCBhdCBxdWV1ZSBkZXB0aCAxMjgsIGluIHByYWN0aWNlDQog aXQgZG9lcyBub3QgbWF0dGVyIGlmIHRoZSBkcml2ZXIgaXMgdXNpbmcgNCBxdWV1ZSBwYWlycyBl YWNoIHdpdGggcXVldWUgZGVwdGggMzIsIG9yIGEgc2luZ2xlIHF1ZXVlIHBhaXIgd2l0aCBxdWV1 ZSBkZXB0aCAxMjjigJ08L3NwYW4+PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFs IiBzdHlsZT0ibWFyZ2luLWxlZnQ6MS4waW4iPldoZW4gcXVldWUgZGVwdGggaXMgbWVudGlvbmVk IGZvciBkZXZpY2UsIGlzIGl0IHRoZSBudW1iZXIgb2YgY29tbWFuZHMgdGhhdCBjYW4gYmUgaXNz dWVkIGZyb20gYXBwbGljYXRpb24gdG8gY29udHJvbGxlciwgYW5kIG91dHN0YW5kaW5nIGF0IGFu eSB0aW1lPw0KPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFy Z2luLWxlZnQ6MS4waW4iPklzIHRoZXJlIE5WTWUgZHJpdmVyIEFQSSB0byBzZXQgdGhlIHF1ZXVl IGRlcHRoPyBJcyBteSB1bmRlcnN0YW5kaW5nIGNvcnJlY3QgaWYgSSB0aGluayB0aGF0IHRoZSBz aXplIG9mIHF1ZXVlIGlzIGF0IGZpcm13YXJlIGxldmVsPw0KPG86cD48L286cD48L3A+DQo8cCBj bGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6MS4waW4iPlBsZWFzZSBnaXZlIHNv bWUgZGV0YWlsIGFib3V0IHRoZSBwYXJhbWV0ZXIuPG86cD48L286cD48L3A+DQo8cCBjbGFzcz0i TXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6MS4waW4iPiZuYnNwOzxvOnA+PC9vOnA+PC9w Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCIgc3R5bGU9Im1hcmdpbi1sZWZ0OjEuMGluIj5UaGFua3Ms PG86cD48L286cD48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIiBzdHlsZT0ibWFyZ2luLWxlZnQ6 MS4waW4iPlNyZWVuaTxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2JvZHk+DQo8L2h0bWw+DQo= --===============3381468813863573574==--