Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sdilV-000LSH-Mw for pgsql-general@arkaria.postgresql.org; Tue, 13 Aug 2024 04:04:09 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1sdilT-001HsG-TJ for pgsql-general@arkaria.postgresql.org; Tue, 13 Aug 2024 04:04:07 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sdilT-001Hs8-FY for pgsql-general@lists.postgresql.org; Tue, 13 Aug 2024 04:04:07 +0000 Received: from mail-ed1-x529.google.com ([2a00:1450:4864:20::529]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1sdilQ-004aGo-3d for pgsql-general@lists.postgresql.org; Tue, 13 Aug 2024 04:04:06 +0000 Received: by mail-ed1-x529.google.com with SMTP id 4fb4d7f45d1cf-5b8c2a6135dso5781446a12.1 for ; Mon, 12 Aug 2024 21:04:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1723521842; x=1724126642; darn=lists.postgresql.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=If9zOD/timo/xIdplP7Daj82RxJvR/qrnlsPVisl0Ww=; b=F8YRc61Qh4Z0qiy/Sq4YLBeDjHot53APCYz9+KZq9QECtt1E9I5QgJJ1lm8qoSF92K cp1y3mq6Hijy5UhSQDgLYX+CEGHWlMeDTeYmoV/Jq9OY7NHB4ffiv3t7xWO0h75coH+5 7qUHCSpXhznrjxg4koxHA9jSsyWozGhbKL6Pi+QX9Yfvwc0NIybKmAAPs067J5XF3JYT 19m1pJ92e6FR6+6LSbDsr3LZKcrZUfR3Yae68fXMoqWaAKfcuugpT3u6HmJyeb7wDio3 ieSLCV8keYWu9/vumwGEPyUzX6zNSMXBDmTIh4fQK62q7XCm7nfilga3sSNf03F5k5Hs EGpg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1723521842; x=1724126642; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=If9zOD/timo/xIdplP7Daj82RxJvR/qrnlsPVisl0Ww=; b=HC2bPl2FSaA2vnid/8jSv3uaXk/TaolWDH9xS+QeBum8wMYXtl8MUhgg1Hfkfde4BP Pe9/7lvDd5TxFxmE5IoAT31LWQKb+EmxW/mDqGIrPnBdoiDdik5qR6dA6MLak3cwojVP 9+/u2GIdDWooWhi2DNLU8hjKOQYvZEwnGBbTrTjPdEkJDYAOyMw90HDm5QIz69agUGAK 09XNlHjKgmhisfAKTAfQHtb1aw9sQYxEoVar30kgmZR39nHlDlMIVluFN9lyNFDVMfz5 UU2eSgtO9PT+T9Ph1DFnP6g2g5kiZ1XwiSU66vrfYJrxaqkM05LozNKDJmUJGOTEfi+y 3MrQ== X-Gm-Message-State: AOJu0YyTSNgPx3eo/TuxiB5d0a61GNmAHVZkBqszA2i5/ATftpX9J2of fYgZWiWSg403t67Zra6i9RC08I1fILxyEn96PWpvcnsZQ4qRbTf7iTAXm6xLzSghWok0ZQj1BgZ Mux/wMoqWPXcfKTe20yTovVkksVPzGuqt X-Google-Smtp-Source: AGHT+IG4Fj4LUijiJvgwy0rDjg6oD1t/quK925hsCPiyTcAU9ErbTxSFUS1gmCfR5w8tdZoCDCdfym0Bu3Z0x0+82rI= X-Received: by 2002:a05:6402:430b:b0:5a3:b45:3970 with SMTP id 4fb4d7f45d1cf-5bd44bc6cc1mr1767978a12.0.1723521841871; Mon, 12 Aug 2024 21:04:01 -0700 (PDT) MIME-Version: 1.0 From: Siraj G Date: Tue, 13 Aug 2024 09:33:50 +0530 Message-ID: Subject: Problem with a Query To: pgsql-general@lists.postgresql.org Content-Type: multipart/alternative; boundary="00000000000025c1b5061f88b30a" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --00000000000025c1b5061f88b30a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello! We migrated a PgSQL database from Cloud SQL to compute engine and since then there is a SQL we observed taking a long time. After some study, I found that the SQL is using NESTED LOOP where the cost is too high. I tried VACUUM FULL and ANALYZE, but to no avail. Only when I disabled the nested loop (enable_nestloop) the query starts running normally. I checked in the cloud SQL the nested loop is enabled, not sure why this difference. Can anyone please assist. Here is the execution plan (bad one): ---------------------------------------------------------------------------= ---------------------------------------------------------------------------= ---------------------------------------------------------------------------= ------------------------------------- Nested Loop (cost=3D120339.76..132772.17 rows=3D1 width=3D775) (actual time=3D901159.223..901897.801 rows=3D12 loops=3D1) Join Filter: (marketing_app_homecounsellinglead.id =3D w0.cancel_event_i= d) Rows Removed by Join Filter: 28926 Buffers: shared hit=3D502303510 read=3D299 dirtied=3D1 -> Unique (cost=3D1.58..4283.42 rows=3D1 width=3D4) (actual time=3D47.768..51.917 rows=3D13 loops=3D1) Buffers: shared hit=3D9680 read=3D19 -> Nested Loop Semi Join (cost=3D1.58..4283.42 rows=3D1 width=3D= 4) (actual time=3D47.767..51.900 rows=3D36 loops=3D1) Buffers: shared hit=3D9680 read=3D19 -> Nested Loop (cost=3D1.00..4282.75 rows=3D1 width=3D8) (= actual time=3D46.703..51.596 rows=3D44 loops=3D1) Buffers: shared hit=3D9379 read=3D19 -> Index Scan using marketing_a_cancel__55ffff_idx on marketing_app_leadhistory w0 (cost=3D0.57..4274.30 rows=3D1 width=3D8) (ac= tual time=3D46.678..51.232 rows=3D44 loops=3D1) Index Cond: ((cancel_event_id IS NOT NULL) AND (cancel_event_type =3D 1)) Filter: ((status_id =3D 93) AND ((followup_date)::date >=3D '2024-08-01'::date) AND ((followup_date)::date = <=3D '2024-08-07'::date)) Rows Removed by Filter: 22268 Buffers: shared hit=3D9170 read=3D19 -> Index Scan using marketing_app_leadinfo_pkey on marketing_app_leadinfo w1 (cost=3D0.43..8.45 rows=3D1 width=3D8) (actual time=3D0.006..0.006 rows=3D1 loops=3D44) Index Cond: (id =3D w0.lead_id) Buffers: shared hit=3D209 -> Nested Loop Semi Join (cost=3D0.58..0.66 rows=3D1 width= =3D12) (actual time=3D0.006..0.006 rows=3D1 loops=3D44) Join Filter: (v0_1.id =3D u0_2.id) Buffers: shared hit=3D301 -> Index Only Scan using branch_id_idx on branch v0_1 (cost=3D0.14..0.16 rows=3D1 width=3D4) (actual time=3D0.001..0.002 rows=3D= 1 loops=3D44) Index Cond: (id =3D w1.branch_id) Heap Fetches: 44 Buffers: shared hit=3D88 -> Nested Loop (cost=3D0.43..0.49 rows=3D1 width=3D8= ) (actual time=3D0.004..0.004 rows=3D1 loops=3D44) Join Filter: (u0_2.id =3D u1_2.branch_id) Buffers: shared hit=3D213 -> Index Only Scan using branch_id_idx on branch u0_2 (cost=3D0.14..0.16 rows=3D1 width=3D4) (actual time=3D0.001..0= .001 rows=3D1 loops=3D44) Index Cond: (id =3D w1.branch_id) Heap Fetches: 44 Buffers: shared hit=3D88 -> Index Only Scan using "Employee_brancanh_employee_id_branch_id_06fcf064_uniq" on authentication_employee_branch u1_2 (cost=3D0.29..0.31 rows=3D1 width=3D4) (actual time=3D0.002..0.002 rows=3D1 loops=3D44) Index Cond: ((employee_id =3D 43) AND (branch_id =3D w1.branch_id)) Heap Fetches: 36 Buffers: shared hit=3D125 -> Hash Join (cost=3D120338.17..128483.90 rows=3D387 width=3D775) (act= ual time=3D69312.677..69372.647 rows=3D2226 loops=3D13) Hash Cond: (marketing_app_homecounsellinglead.lead_id =3D marketing_app_leadinfo.id) Buffers: shared hit=3D502293830 read=3D280 dirtied=3D1 -> Seq Scan on marketing_app_homecounsellinglead (cost=3D0.00..7513.53 rows=3D167553 width=3D775) (actual time=3D0.003..19.= 903 rows=3D167589 loops=3D13) Buffers: shared hit=3D75894 -> Hash (cost=3D119938.59..119938.59 rows=3D31967 width=3D4) (= actual time=3D901063.121..901063.129 rows=3D5138545 loops=3D1) Buckets: 8388608 (originally 32768) Batches: 1 (originally 1) Memory Usage: 246188kB Buffers: shared hit=3D502217936 read=3D280 dirtied=3D1 -> Nested Loop (cost=3D56.29..119938.59 rows=3D31967 width= =3D4) (actual time=3D0.271..899599.420 rows=3D5138545 loops=3D1) Join Filter: (u0.id =3D marketing_app_leadinfo.branch_= id) Rows Removed by Join Filter: 713188839 Buffers: shared hit=3D502217936 read=3D280 dirtied=3D1 -> Nested Loop (cost=3D55.85..1005.32 rows=3D20 width=3D16) (actual time=3D0.237..35.473 rows=3D75208 loops=3D1) Buffers: shared hit=3D272 -> Nested Loop Semi Join (cost=3D14.63..122.14 rows=3D20 width=3D4) (actual time=3D0.034..1.153 rows=3D553 loops=3D1) Join Filter: (marketing_app_contactsource.field_type_id =3D u0_1.id) Rows Removed by Join Filter: 1090 Buffers: shared hit=3D194 -> Index Scan using marketing_app_contactsource_pkey on marketing_app_contactsource (cost=3D0.28..54.74 rows=3D550 width=3D8) (actual time=3D0.006..0.460 rows= =3D553 loops=3D1) Buffers: shared hit=3D189 -> Materialize (cost=3D14.36..26.16 rows= =3D5 width=3D8) (actual time=3D0.000..0.000 rows=3D3 loops=3D553) Buffers: shared hit=3D5 -> Hash Join (cost=3D14.36..26.14 rows=3D5 width=3D8) (actual time=3D0.023..0.032 rows=3D10 loops=3D1) Hash Cond: (u0_1.id =3D u1_1.fieldtype_id) Buffers: shared hit=3D5 -> Seq Scan on authentication_fieldtype u0_1 (cost=3D0.00..11.40 rows=3D140 width=3D4) (a= ctual time=3D0.004..0.006 rows=3D10 loops=3D1) Buffers: shared hit=3D1 -> Hash (cost=3D14.29..14.29 rows=3D5 width=3D4) (actual time=3D0.014..0.015 rows=3D10 loops=3D1) Buckets: 1024 Batches: 1 Memory Usage: 9kB Buffers: shared hit=3D4 -> Index Only Scan using authentication_employee__employee_id_fieldtype_id_a490d886_uniq on authentication_employee_field_type u1_1 (cost =3D0.29..14.29 rows=3D5 width=3D4) (actual time=3D0.009..0.012 rows=3D10 lo= ops=3D1) Index Cond: (employee_id =3D 43) Heap Fetches: 10 Buffers: shared hit=3D4 -> HashAggregate (cost=3D41.22..42.69 rows=3D1= 47 width=3D12) (actual time=3D0.001..0.042 rows=3D136 loops=3D553) Group Key: v0.id Batches: 1 Memory Usage: 40kB Buffers: shared hit=3D78 -> Hash Semi Join (cost=3D29.97..40.85 rows=3D147 width=3D12) (actual time=3D0.136..0.176 rows=3D136 loops=3D1) Hash Cond: (v0.id =3D u0.id) Buffers: shared hit=3D78 -> Seq Scan on branch v0 (cost=3D0.00..8.78 rows=3D178 width=3D4) (actual time=3D0.003..0.015 rows= =3D178 loops=3D1) Buffers: shared hit=3D7 -> Hash (cost=3D28.13..28.13 rows=3D147 width=3D8) (actual time=3D0.129..0.132 rows=3D136 loops=3D1) Buckets: 1024 Batches: 1 Memory Usage: 14kB Buffers: shared hit=3D71 -> Hash Join (cost=3D18.87..28.13 rows=3D147 width=3D8) (actual time=3D0.069..0.118 row= s=3D136 loops=3D1) Hash Cond: (u0.id =3D u1.branch_id) Buffers: shared hit=3D71 -> Seq Scan on branch u0 (cost=3D0.00..8.78 rows=3D178 width=3D4) (actual time=3D0.002..0.026 ro= ws=3D178 loops=3D1) Buffers: shared hit=3D7 -> Hash (cost=3D17.03..17.03 rows=3D147 width=3D4) (actual time=3D0.063..0.064 row= s=3D136 loops=3D1) Buckets: 1024 Batches: 1 Memory Usage: 13kB Buffers: shared hit=3D64 -> Index Only Scan using "Employee_brancanh_employee_id_branch_id_06fcf064_uniq" on authentication_employee_branch u1 (cost=3D0.29..1 7.03 rows=3D147 width=3D4) (actual time=3D0.008..0.050 rows=3D136 loops=3D1= ) Index Cond: (employee_id =3D 43) Heap Fetches: 122 Buffers: shared hit=3D64 -> Index Scan using marketing_app_leadinfo_contact_source_id_b9ffb703 on marketing_app_leadinfo (cost=3D0.43..5632.63 rows=3D25123 width=3D12) (actual time=3D0.354..10.98= 0 row s=3D9551 loops=3D75208) Index Cond: (contact_source_id =3D marketing_app_contactsource.id) Filter: ((academic_year)::text =3D '2024-25'::te= xt) Rows Removed by Filter: 15269 Buffers: shared hit=3D502217664 read=3D280 dirti= ed=3D1 Planning: Buffers: shared hit=3D163 Planning Time: 2.082 ms JIT: Functions: 84 Options: Inlining false, Optimization false, Expressions true, Deforming true Timing: Generation 5.327 ms, Inlining 0.000 ms, Optimization 1.802 ms, Emission 37.293 ms, Total 44.422 ms Execution Time: 901926.050 ms (107 rows) --00000000000025c1b5061f88b30a Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: base64 PGRpdiBkaXI9Imx0ciI+SGVsbG8hPGRpdj48YnI+PC9kaXY+PGRpdj5XZSBtaWdyYXRlZCBhIFBn U1FMIGRhdGFiYXNlIGZyb20gQ2xvdWQgU1FMIHRvIGNvbXB1dGXCoGVuZ2luZSBhbmQgc2luY2Ug dGhlbiB0aGVyZSBpcyBhIFNRTCB3ZSBvYnNlcnZlZCB0YWtpbmcgYSBsb25nIHRpbWUuIEFmdGVy IHNvbWUgc3R1ZHksIEkgZm91bmQgdGhhdCB0aGUgU1FMIGlzIHVzaW5nIE5FU1RFRCBMT09QIHdo ZXJlIHRoZSBjb3N0IGlzIHRvbyBoaWdoLiBJIHRyaWVkIFZBQ1VVTSBGVUxMIGFuZCBBTkFMWVpF LCBidXQgdG8gbm8gYXZhaWwuIE9ubHkgd2hlbiBJIGRpc2FibGVkIHRoZSBuZXN0ZWQgbG9vcCAo ZW5hYmxlX25lc3Rsb29wKSB0aGUgcXVlcnkgc3RhcnRzIHJ1bm5pbmcgbm9ybWFsbHkuPC9kaXY+ PGRpdj48YnI+PC9kaXY+PGRpdj5JIGNoZWNrZWQgaW4gdGhlIGNsb3VkIFNRTCB0aGUgbmVzdGVk IGxvb3AgaXMgZW5hYmxlZCwgbm90IHN1cmUgd2h5IHRoaXMgZGlmZmVyZW5jZS4gQ2FuIGFueW9u ZSBwbGVhc2UgYXNzaXN0LjwvZGl2PjxkaXY+PGJyPjwvZGl2PjxkaXY+SGVyZSBpcyB0aGUgZXhl Y3V0aW9uIHBsYW4gKGJhZCBvbmUpOjwvZGl2PjxkaXY+LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLTxicj7CoE5lc3RlZCBMb29wIMKgKGNvc3Q9MTIwMzM5Ljc2Li4xMzI3NzIuMTcg cm93cz0xIHdpZHRoPTc3NSkgKGFjdHVhbCB0aW1lPTkwMTE1OS4yMjMuLjkwMTg5Ny44MDEgcm93 cz0xMiBsb29wcz0xKTxicj7CoCDCoEpvaW4gRmlsdGVyOiAoPGEgaHJlZj0iaHR0cDovL21hcmtl dGluZ19hcHBfaG9tZWNvdW5zZWxsaW5nbGVhZC5pZCI+bWFya2V0aW5nX2FwcF9ob21lY291bnNl bGxpbmdsZWFkLmlkPC9hPiA9IHcwLmNhbmNlbF9ldmVudF9pZCk8YnI+wqAgwqBSb3dzIFJlbW92 ZWQgYnkgSm9pbiBGaWx0ZXI6IDI4OTI2PGJyPsKgIMKgQnVmZmVyczogc2hhcmVkIGhpdD01MDIz MDM1MTAgcmVhZD0yOTkgZGlydGllZD0xPGJyPsKgIMKgLSZndDsgwqBVbmlxdWUgwqAoY29zdD0x LjU4Li40MjgzLjQyIHJvd3M9MSB3aWR0aD00KSAoYWN0dWFsIHRpbWU9NDcuNzY4Li41MS45MTcg cm93cz0xMyBsb29wcz0xKTxicj7CoCDCoCDCoCDCoCDCoEJ1ZmZlcnM6IHNoYXJlZCBoaXQ9OTY4 MCByZWFkPTE5PGJyPsKgIMKgIMKgIMKgIMKgLSZndDsgwqBOZXN0ZWQgTG9vcCBTZW1pIEpvaW4g wqAoY29zdD0xLjU4Li40MjgzLjQyIHJvd3M9MSB3aWR0aD00KSAoYWN0dWFsIHRpbWU9NDcuNzY3 Li41MS45MDAgcm93cz0zNiBsb29wcz0xKTxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEJ1ZmZl cnM6IHNoYXJlZCBoaXQ9OTY4MCByZWFkPTE5PGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgLSZn dDsgwqBOZXN0ZWQgTG9vcCDCoChjb3N0PTEuMDAuLjQyODIuNzUgcm93cz0xIHdpZHRoPTgpIChh Y3R1YWwgdGltZT00Ni43MDMuLjUxLjU5NiByb3dzPTQ0IGxvb3BzPTEpPGJyPsKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgQnVmZmVyczogc2hhcmVkIGhpdD05Mzc5IHJlYWQ9MTk8YnI+ wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAtJmd0OyDCoEluZGV4IFNjYW4gdXNpbmcg bWFya2V0aW5nX2FfY2FuY2VsX181NWZmZmZfaWR4IG9uIG1hcmtldGluZ19hcHBfbGVhZGhpc3Rv cnkgdzAgwqAoY29zdD0wLjU3Li40Mjc0LjMwIHJvd3M9MSB3aWR0aD04KSAoYWN0dWFsIHRpbWU9 NDYuNjc4Li41MS4yMzIgcm93cz00NCBsb29wcz0xKTxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoEluZGV4IENvbmQ6ICgoY2FuY2VsX2V2ZW50X2lkIElTIE5PVCBO VUxMKSBBTkQgKGNhbmNlbF9ldmVudF90eXBlID0gMSkpPGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgRmlsdGVyOiAoKHN0YXR1c19pZCA9IDkzKSBBTkQgKChmb2xs b3d1cF9kYXRlKTo6ZGF0ZSAmZ3Q7PSAmIzM5OzIwMjQtMDgtMDEmIzM5Ozo6ZGF0ZSkgQU5EICgo Zm9sbG93dXBfZGF0ZSk6OmRhdGUgJmx0Oz0gJiMzOTsyMDI0LTA4LTA3JiMzOTs6OmRhdGUpKTxi cj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoFJvd3MgUmVtb3ZlZCBi eSBGaWx0ZXI6IDIyMjY4PGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgQnVmZmVyczogc2hhcmVkIGhpdD05MTcwIHJlYWQ9MTk8YnI+wqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAtJmd0OyDCoEluZGV4IFNjYW4gdXNpbmcgbWFya2V0aW5nX2FwcF9sZWFk aW5mb19wa2V5IG9uIG1hcmtldGluZ19hcHBfbGVhZGluZm8gdzEgwqAoY29zdD0wLjQzLi44LjQ1 IHJvd3M9MSB3aWR0aD04KSAoYWN0dWFsIHRpbWU9MC4wMDYuLjAuMDA2IHJvd3M9MSBsb29wcz00 NCk8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBJbmRleCBDb25k OiAoaWQgPSB3MC5sZWFkX2lkKTxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoEJ1ZmZlcnM6IHNoYXJlZCBoaXQ9MjA5PGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg LSZndDsgwqBOZXN0ZWQgTG9vcCBTZW1pIEpvaW4gwqAoY29zdD0wLjU4Li4wLjY2IHJvd3M9MSB3 aWR0aD0xMikgKGFjdHVhbCB0aW1lPTAuMDA2Li4wLjAwNiByb3dzPTEgbG9vcHM9NDQpPGJyPsKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgSm9pbiBGaWx0ZXI6ICg8YSBocmVmPSJodHRw Oi8vdjBfMS5pZCI+djBfMS5pZDwvYT4gPSA8YSBocmVmPSJodHRwOi8vdTBfMi5pZCI+dTBfMi5p ZDwvYT4pPGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgQnVmZmVyczogc2hhcmVk IGhpdD0zMDE8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAtJmd0OyDCoEluZGV4 IE9ubHkgU2NhbiB1c2luZyBicmFuY2hfaWRfaWR4IG9uIGJyYW5jaCB2MF8xIMKgKGNvc3Q9MC4x NC4uMC4xNiByb3dzPTEgd2lkdGg9NCkgKGFjdHVhbCB0aW1lPTAuMDAxLi4wLjAwMiByb3dzPTEg bG9vcHM9NDQpPGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgSW5k ZXggQ29uZDogKGlkID0gdzEuYnJhbmNoX2lkKTxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoEhlYXAgRmV0Y2hlczogNDQ8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqBCdWZmZXJzOiBzaGFyZWQgaGl0PTg4PGJyPsKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgLSZndDsgwqBOZXN0ZWQgTG9vcCDCoChjb3N0PTAuNDMuLjAu NDkgcm93cz0xIHdpZHRoPTgpIChhY3R1YWwgdGltZT0wLjAwNC4uMC4wMDQgcm93cz0xIGxvb3Bz PTQ0KTxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEpvaW4gRmls dGVyOiAoPGEgaHJlZj0iaHR0cDovL3UwXzIuaWQiPnUwXzIuaWQ8L2E+ID0gdTFfMi5icmFuY2hf aWQpPGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgQnVmZmVyczog c2hhcmVkIGhpdD0yMTM8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAtJmd0OyDCoEluZGV4IE9ubHkgU2NhbiB1c2luZyBicmFuY2hfaWRfaWR4IG9uIGJyYW5jaCB1 MF8yIMKgKGNvc3Q9MC4xNC4uMC4xNiByb3dzPTEgd2lkdGg9NCkgKGFjdHVhbCB0aW1lPTAuMDAx Li4wLjAwMSByb3dzPTEgbG9vcHM9NDQpPGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgSW5kZXggQ29uZDogKGlkID0gdzEuYnJhbmNoX2lkKTxicj7C oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEhlYXAgRmV0 Y2hlczogNDQ8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqBCdWZmZXJzOiBzaGFyZWQgaGl0PTg4PGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgLSZndDsgwqBJbmRleCBPbmx5IFNjYW4gdXNpbmcgJnF1b3Q7RW1wbG95 ZWVfYnJhbmNhbmhfZW1wbG95ZWVfaWRfYnJhbmNoX2lkXzA2ZmNmMDY0X3VuaXEmcXVvdDsgb24g YXV0aGVudGljYXRpb25fZW1wbG95ZWVfYnJhbmNoIHUxXzIgwqAoY29zdD0wLjI5Li4wLjMxIHJv d3M9MSB3aWR0aD00KSAoYWN0dWFsIHRpbWU9MC4wMDIuLjAuMDAyIHJvd3M9MSBsb29wcz00NCk8 YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBJbmRl eCBDb25kOiAoKGVtcGxveWVlX2lkID0gNDMpIEFORCAoYnJhbmNoX2lkID0gdzEuYnJhbmNoX2lk KSk8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBI ZWFwIEZldGNoZXM6IDM2PGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgQnVmZmVyczogc2hhcmVkIGhpdD0xMjU8YnI+wqAgwqAtJmd0OyDCoEhhc2gg Sm9pbiDCoChjb3N0PTEyMDMzOC4xNy4uMTI4NDgzLjkwIHJvd3M9Mzg3IHdpZHRoPTc3NSkgKGFj dHVhbCB0aW1lPTY5MzEyLjY3Ny4uNjkzNzIuNjQ3IHJvd3M9MjIyNiBsb29wcz0xMyk8YnI+wqAg wqAgwqAgwqAgwqBIYXNoIENvbmQ6IChtYXJrZXRpbmdfYXBwX2hvbWVjb3Vuc2VsbGluZ2xlYWQu bGVhZF9pZCA9IDxhIGhyZWY9Imh0dHA6Ly9tYXJrZXRpbmdfYXBwX2xlYWRpbmZvLmlkIj5tYXJr ZXRpbmdfYXBwX2xlYWRpbmZvLmlkPC9hPik8YnI+wqAgwqAgwqAgwqAgwqBCdWZmZXJzOiBzaGFy ZWQgaGl0PTUwMjI5MzgzMCByZWFkPTI4MCBkaXJ0aWVkPTE8YnI+wqAgwqAgwqAgwqAgwqAtJmd0 OyDCoFNlcSBTY2FuIG9uIG1hcmtldGluZ19hcHBfaG9tZWNvdW5zZWxsaW5nbGVhZCDCoChjb3N0 PTAuMDAuLjc1MTMuNTMgcm93cz0xNjc1NTMgd2lkdGg9Nzc1KSAoYWN0dWFsIHRpbWU9MC4wMDMu LjE5LjkwMyByb3dzPTE2NzU4OSBsb29wcz0xMyk8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBC dWZmZXJzOiBzaGFyZWQgaGl0PTc1ODk0PGJyPgkJCSDCoCDCoCDCoCDCoCDCoCDCoC0mZ3Q7IMKg SGFzaCDCoChjb3N0PTExOTkzOC41OS4uMTE5OTM4LjU5IHJvd3M9MzE5Njcgd2lkdGg9NCkgKGFj dHVhbCB0aW1lPTkwMTA2My4xMjEuLjkwMTA2My4xMjkgcm93cz01MTM4NTQ1IGxvb3BzPTEpPGJy PsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgQnVja2V0czogODM4ODYwOCAob3JpZ2luYWxseSAzMjc2 OCkgwqBCYXRjaGVzOiAxIChvcmlnaW5hbGx5IDEpIMKgTWVtb3J5IFVzYWdlOiAyNDYxODhrQjxi cj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEJ1ZmZlcnM6IHNoYXJlZCBoaXQ9NTAyMjE3OTM2IHJl YWQ9MjgwIGRpcnRpZWQ9MTxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoC0mZ3Q7IMKgTmVzdGVk IExvb3AgwqAoY29zdD01Ni4yOS4uMTE5OTM4LjU5IHJvd3M9MzE5Njcgd2lkdGg9NCkgKGFjdHVh bCB0aW1lPTAuMjcxLi44OTk1OTkuNDIwIHJvd3M9NTEzODU0NSBsb29wcz0xKTxicj7CoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEpvaW4gRmlsdGVyOiAoPGEgaHJlZj0iaHR0cDovL3Uw LmlkIj51MC5pZDwvYT4gPSBtYXJrZXRpbmdfYXBwX2xlYWRpbmZvLmJyYW5jaF9pZCk8YnI+wqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBSb3dzIFJlbW92ZWQgYnkgSm9pbiBGaWx0ZXI6 IDcxMzE4ODgzOTxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEJ1ZmZlcnM6IHNo YXJlZCBoaXQ9NTAyMjE3OTM2IHJlYWQ9MjgwIGRpcnRpZWQ9MTxicj7CoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoC0mZ3Q7IMKgTmVzdGVkIExvb3AgwqAoY29zdD01NS44NS4uMTAwNS4z MiByb3dzPTIwIHdpZHRoPTE2KSAoYWN0dWFsIHRpbWU9MC4yMzcuLjM1LjQ3MyByb3dzPTc1MjA4 IGxvb3BzPTEpPGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgQnVm ZmVyczogc2hhcmVkIGhpdD0yNzI8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAtJmd0OyDCoE5lc3RlZCBMb29wIFNlbWkgSm9pbiDCoChjb3N0PTE0LjYzLi4xMjIu MTQgcm93cz0yMCB3aWR0aD00KSAoYWN0dWFsIHRpbWU9MC4wMzQuLjEuMTUzIHJvd3M9NTUzIGxv b3BzPTEpPGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgSm9pbiBGaWx0ZXI6IChtYXJrZXRpbmdfYXBwX2NvbnRhY3Rzb3VyY2UuZmllbGRfdHlwZV9p ZCA9IDxhIGhyZWY9Imh0dHA6Ly91MF8xLmlkIj51MF8xLmlkPC9hPik8YnI+wqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBSb3dzIFJlbW92ZWQgYnkgSm9p biBGaWx0ZXI6IDEwOTA8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqBCdWZmZXJzOiBzaGFyZWQgaGl0PTE5NDxicj7CoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoC0mZ3Q7IMKgSW5kZXggU2NhbiB1c2luZyBt YXJrZXRpbmdfYXBwX2NvbnRhY3Rzb3VyY2VfcGtleSBvbiBtYXJrZXRpbmdfYXBwX2NvbnRhY3Rz b3VyY2UgwqAoY29zdD0wLjI4Li41NC43NCByb3dzPTU1MCB3aWR0aD04KSAoYWN0dWFsIHRpbWU9 MC4wMDYuLjAuNDYwIHJvd3M9NTUzIDxicj5sb29wcz0xKTxicj7CoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEJ1ZmZlcnM6IHNoYXJlZCBo aXQ9MTg5PGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgLSZndDsgwqBNYXRlcmlhbGl6ZSDCoChjb3N0PTE0LjM2Li4yNi4xNiByb3dzPTUgd2lkdGg9 OCkgKGFjdHVhbCB0aW1lPTAuMDAwLi4wLjAwMCByb3dzPTMgbG9vcHM9NTUzKTxicj7CoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEJ1ZmZl cnM6IHNoYXJlZCBoaXQ9NTxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoC0mZ3Q7IMKgSGFzaCBKb2luIMKgKGNvc3Q9MTQuMzYuLjI2 LjE0IHJvd3M9NSB3aWR0aD04KSAoYWN0dWFsIHRpbWU9MC4wMjMuLjAuMDMyIHJvd3M9MTAgbG9v cHM9MSk8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqBIYXNoIENvbmQ6ICg8YSBocmVmPSJodHRwOi8vdTBfMS5pZCI+ dTBfMS5pZDwvYT4gPSB1MV8xLmZpZWxkdHlwZV9pZCk8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBCdWZmZXJzOiBz aGFyZWQgaGl0PTU8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAtJmd0OyDCoFNlcSBTY2FuIG9uIGF1dGhlbnRpY2F0 aW9uX2ZpZWxkdHlwZSB1MF8xIMKgKGNvc3Q9MC4wMC4uMTEuNDAgcm93cz0xNDAgd2lkdGg9NCkg KGFjdHVhbCB0aW1lPTAuMDA0Li4wLjAwNiByb3dzPTEwIGxvb3BzPTEpPGJyPsKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgQnVmZmVyczogc2hhcmVkIGhpdD0xPGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgLSZndDsgwqBIYXNo IMKgKGNvc3Q9MTQuMjkuLjE0LjI5IHJvd3M9NSB3aWR0aD00KSAoYWN0dWFsIHRpbWU9MC4wMTQu LjAuMDE1IHJvd3M9MTAgbG9vcHM9MSk8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBCdWNrZXRzOiAx MDI0IMKgQmF0Y2hlczogMSDCoE1lbW9yeSBVc2FnZTogOWtCPGJyPsKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgQnVmZmVyczogc2hhcmVkIGhpdD00PGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgLSZndDsgwqBJ bmRleCBPbmx5IFNjYW4gdXNpbmcgYXV0aGVudGljYXRpb25fZW1wbG95ZWVfX2VtcGxveWVlX2lk X2ZpZWxkdHlwZV9pZF9hNDkwZDg4Nl91bmlxIG9uIGF1dGhlbnRpY2F0aW9uX2VtcGxveWVlX2Zp ZWxkX3R5cGUgdTFfMSDCoChjb3N0PGJyPj0wLjI5Li4xNC4yOSByb3dzPTUgd2lkdGg9NCkgKGFj dHVhbCB0aW1lPTAuMDA5Li4wLjAxMiByb3dzPTEwIGxvb3BzPTEpPGJyPsKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgSW5kZXggQ29uZDogKGVtcGxveWVlX2lkID0gNDMpPGJyPsKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgSGVhcCBGZXRjaGVzOiAxMDxicj7CoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoEJ1ZmZlcnM6IHNoYXJlZCBoaXQ9NDxicj7CoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoC0mZ3Q7IMKgSGFzaEFnZ3JlZ2F0ZSDCoChjb3N0PTQxLjIy Li40Mi42OSByb3dzPTE0NyB3aWR0aD0xMikgKGFjdHVhbCB0aW1lPTAuMDAxLi4wLjA0MiByb3dz PTEzNiBsb29wcz01NTMpPGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgR3JvdXAgS2V5OiA8YSBocmVmPSJodHRwOi8vdjAuaWQiPnYwLmlkPC9hPjxi cj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEJhdGNo ZXM6IDEgwqBNZW1vcnkgVXNhZ2U6IDQwa0I8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqBCdWZmZXJzOiBzaGFyZWQgaGl0PTc4PGJyPsKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgLSZndDsgwqBIYXNoIFNl bWkgSm9pbiDCoChjb3N0PTI5Ljk3Li40MC44NSByb3dzPTE0NyB3aWR0aD0xMikgKGFjdHVhbCB0 aW1lPTAuMTM2Li4wLjE3NiByb3dzPTEzNiBsb29wcz0xKTxicj7CoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEhhc2ggQ29uZDogKDxhIGhy ZWY9Imh0dHA6Ly92MC5pZCI+djAuaWQ8L2E+ID0gPGEgaHJlZj0iaHR0cDovL3UwLmlkIj51MC5p ZDwvYT4pPGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgQnVmZmVyczogc2hhcmVkIGhpdD03ODxicj7CoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoC0mZ3Q7IMKgU2VxIFNjYW4g b24gYnJhbmNoIHYwIMKgKGNvc3Q9MC4wMC4uOC43OCByb3dzPTE3OCB3aWR0aD00KSAoYWN0dWFs IHRpbWU9MC4wMDMuLjAuMDE1IHJvd3M9MTc4IGxvb3BzPTEpPGJyPsKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgQnVmZmVy czogc2hhcmVkIGhpdD03PGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgLSZndDsgwqBIYXNoIMKgKGNvc3Q9MjguMTMuLjI4LjEzIHJv d3M9MTQ3IHdpZHRoPTgpIChhY3R1YWwgdGltZT0wLjEyOS4uMC4xMzIgcm93cz0xMzYgbG9vcHM9 MSk8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqBCdWNrZXRzOiAxMDI0IMKgQmF0Y2hlczogMSDCoE1lbW9yeSBVc2Fn ZTogMTRrQjxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoEJ1ZmZlcnM6IHNoYXJlZCBoaXQ9NzE8YnI+wqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAtJmd0OyDCoEhhc2ggSm9pbiDCoChjb3N0PTE4Ljg3Li4yOC4xMyByb3dzPTE0NyB3aWR0aD04 KSAoYWN0dWFsIHRpbWU9MC4wNjkuLjAuMTE4IHJvd3M9MTM2IGxvb3BzPTEpPGJyPsKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgSGFzaCBDb25kOiAoPGEgaHJlZj0iaHR0cDovL3UwLmlkIj51MC5pZDwvYT4g PSB1MS5icmFuY2hfaWQpPGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgQnVmZmVyczogc2hhcmVkIGhp dD03MTxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoC0mZ3Q7IMKgU2VxIFNjYW4gb24gYnJhbmNoIHUw IMKgKGNvc3Q9MC4wMC4uOC43OCByb3dzPTE3OCB3aWR0aD00KSAoYWN0dWFsIHRpbWU9MC4wMDIu LjAuMDI2IHJvd3M9MTc4IGxvb3BzPTEpPGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg QnVmZmVyczogc2hhcmVkIGhpdD03PGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgLSZndDsgwqBIYXNo IMKgKGNvc3Q9MTcuMDMuLjE3LjAzIHJvd3M9MTQ3IHdpZHRoPTQpIChhY3R1YWwgdGltZT0wLjA2 My4uMC4wNjQgcm93cz0xMzYgbG9vcHM9MSk8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqBCdWNrZXRzOiAxMDI0IMKgQmF0Y2hlczogMSDCoE1lbW9yeSBVc2FnZTogMTNrQjxicj7CoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEJ1ZmZlcnM6IHNoYXJlZCBoaXQ9NjQ8YnI+wqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAtJmd0OyDCoEluZGV4IE9ubHkgU2NhbiB1c2luZyAmcXVv dDtFbXBsb3llZV9icmFuY2FuaF9lbXBsb3llZV9pZF9icmFuY2hfaWRfMDZmY2YwNjRfdW5pcSZx dW90OyBvbiBhdXRoZW50aWNhdGlvbl9lbXBsb3llZV9icmFuY2ggdTEgwqAoY29zdD0wLjI5Li4x PGJyPjcuMDMgcm93cz0xNDcgd2lkdGg9NCkgKGFjdHVhbCB0aW1lPTAuMDA4Li4wLjA1MCByb3dz PTEzNiBsb29wcz0xKTxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoElu ZGV4IENvbmQ6IChlbXBsb3llZV9pZCA9IDQzKTxicj7CoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoEhlYXAgRmV0Y2hlczogMTIyPGJyPsKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgQnVmZmVyczogc2hhcmVkIGhpdD02NDxicj7CoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoC0mZ3Q7IMKgSW5kZXggU2NhbiB1c2luZyBtYXJrZXRpbmdfYXBwX2xl YWRpbmZvX2NvbnRhY3Rfc291cmNlX2lkX2I5ZmZiNzAzIG9uIG1hcmtldGluZ19hcHBfbGVhZGlu Zm8gwqAoY29zdD0wLjQzLi41NjMyLjYzIHJvd3M9MjUxMjMgd2lkdGg9MTIpIChhY3R1YWwgdGlt ZT0wLjM1NC4uMTAuOTgwIHJvdzxicj5zPTk1NTEgbG9vcHM9NzUyMDgpPGJyPsKgIMKgIMKgIMKg IMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgIMKgSW5kZXggQ29uZDogKGNvbnRhY3Rfc291cmNl X2lkID0gPGEgaHJlZj0iaHR0cDovL21hcmtldGluZ19hcHBfY29udGFjdHNvdXJjZS5pZCI+bWFy a2V0aW5nX2FwcF9jb250YWN0c291cmNlLmlkPC9hPik8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqAgwqAgwqAgwqAgwqBGaWx0ZXI6ICgoYWNhZGVtaWNfeWVhcik6OnRleHQgPSAmIzM5 OzIwMjQtMjUmIzM5Ozo6dGV4dCk8YnI+wqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAgwqAg wqAgwqAgwqBSb3dzIFJlbW92ZWQgYnkgRmlsdGVyOiAxNTI2OTxicj7CoCDCoCDCoCDCoCDCoCDC oCDCoCDCoCDCoCDCoCDCoCDCoCDCoCDCoEJ1ZmZlcnM6IHNoYXJlZCBoaXQ9NTAyMjE3NjY0IHJl YWQ9MjgwIGRpcnRpZWQ9MTxicj7CoFBsYW5uaW5nOjxicj7CoCDCoEJ1ZmZlcnM6IHNoYXJlZCBo aXQ9MTYzPGJyPsKgUGxhbm5pbmcgVGltZTogMi4wODIgbXM8YnI+wqBKSVQ6PGJyPsKgIMKgRnVu Y3Rpb25zOiA4NDxicj7CoCDCoE9wdGlvbnM6IElubGluaW5nIGZhbHNlLCBPcHRpbWl6YXRpb24g ZmFsc2UsIEV4cHJlc3Npb25zIHRydWUsIERlZm9ybWluZyB0cnVlPGJyPsKgIMKgVGltaW5nOiBH ZW5lcmF0aW9uIDUuMzI3IG1zLCBJbmxpbmluZyAwLjAwMCBtcywgT3B0aW1pemF0aW9uIDEuODAy IG1zLCBFbWlzc2lvbiAzNy4yOTMgbXMsIFRvdGFsIDQ0LjQyMiBtczxicj7CoEV4ZWN1dGlvbiBU aW1lOiA5MDE5MjYuMDUwIG1zPGJyPigxMDcgcm93cyk8YnI+PC9kaXY+PC9kaXY+DQo= --00000000000025c1b5061f88b30a--