Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp2160250rwd; Fri, 26 May 2023 02:36:58 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ5bcXVNaf0MMV7B4wZg0+n9MdwSzXfq+pj+XGb4IfxQbgocw5vaEQCByp/M4LoiiWViWJ2j X-Received: by 2002:a17:902:d504:b0:1ae:72fc:a625 with SMTP id b4-20020a170902d50400b001ae72fca625mr2080893plg.37.1685093818113; Fri, 26 May 2023 02:36:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1685093818; cv=none; d=google.com; s=arc-20160816; b=SROB8mCFdfcOSoWZf5zV1NQfzGPqKNuJ+HeujYQAsBeME0BbzJCrrIKSO4SJ4KrkT8 c2cyDEt9228wmTxUZPAjhOHzhCigQ99AfNJSlipl/hCCFRfO1WeD4lUk8GNA8hElnkZb rV+1WVY2lE1Ahff1S0dYQdxe/6aNigl3jGodkLymCIApTxJonQjbP/g4f2S8D2irwPh+ kRCEky1zNuDThTST6xSXaBwntQeYKKaWgI+CuGTyARnpOnHiaOMZGisF4OthcpfX4DCc kET2LHOcIfejEzRU4wHxg8FcRS7exdwgJHjyAeh4um9wTrlrcKzhvohnhuOVx7Omrcow necw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:reply-to:references:in-reply-to:subject:to:from :mime-version:date:message-id:dkim-signature; bh=43Sxv/iPr7mMm/SDvZXfIeqXnCATJKk3Vwc0JYpJv8A=; b=jy4SCGhqnZ7/+IRP3KyuopRDsJNHo8CKLDXMUTGBseaDW7DqMZkao6cQ7qLkj65iK+ Ft1AJptwEkrL+TMHCoAvBLmDgY/fH6JioXvBL1mnKJJ21vSjoWfRSQ95Zd+Ra8P3O0EE 3qsLIFTynhK3c1bYX+hMLyCPZaeEiQpJJ4BD1csy8TvHMaQ++RnpQoEDZhb39op7Fa35 Nt+/o2pnaozKbn7qm/vK3bZD/+6QBEj+ixoUuuJMkNeUNB9uAxtxm7+5tTt+GyAehOKR oYDSXq9N2MTLh1qSMSSmiOhtqw3xf2pbh+AfLvuhXmkBahOnqr8mpS7fz1VC2u7Lct8L /eZA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20221208 header.b="k/tO4gwo"; spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j2-20020a170902da8200b001a1a44cc945si3929166plx.580.2023.05.26.02.36.35; Fri, 26 May 2023 02:36:58 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20221208 header.b="k/tO4gwo"; spf=pass (google.com: domain of linux-bluetooth-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-bluetooth-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S242702AbjEZJaI (ORCPT + 99 others); Fri, 26 May 2023 05:30:08 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40206 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S242575AbjEZJaG (ORCPT ); Fri, 26 May 2023 05:30:06 -0400 Received: from mail-ot1-x329.google.com (mail-ot1-x329.google.com [IPv6:2607:f8b0:4864:20::329]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 28F7EA4 for ; Fri, 26 May 2023 02:30:03 -0700 (PDT) Received: by mail-ot1-x329.google.com with SMTP id 46e09a7af769-6af6df7f93aso534135a34.0 for ; Fri, 26 May 2023 02:30:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1685093402; x=1687685402; h=reply-to:references:in-reply-to:subject:to:from:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=43Sxv/iPr7mMm/SDvZXfIeqXnCATJKk3Vwc0JYpJv8A=; b=k/tO4gwoR6LDXnMtI8LsRHw0Ag0PEe8zjotqJaClaomN0KjNBNTGPxfB3zNafMirg5 CWOs+BoIQElG2B/zpc+jyUHueshRzKp7ZZ/pBMr27m4M6F0/k5XbzoIfDtVUskMy/QkC 0wOgLs8rZnmQSmhIc8X9jq5Bgmszl5C4wbKIJbgTSrlcVzp3ClckXJMTSWdROmGTcWhF gIvnk5/IOd9PeczSKDI00ut4r9ca3d4YuwGtnUHb0wAWBMCXU8nWVv98T3vP7uWqISAO 80scT+BK9hflaxx3KBri2VGSS5KZxKC3mwJrQTDGbXt4h6cbjP82XIpDR26wH2JNImHr I2oA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685093402; x=1687685402; h=reply-to:references:in-reply-to:subject:to:from:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=43Sxv/iPr7mMm/SDvZXfIeqXnCATJKk3Vwc0JYpJv8A=; b=XHGH1TeqbzCbBL4wMShH5y7z3Q4QZsq1lHraaLSuxtMdD5xXWuujXOIy+MgWo23hiK cX+nBFmviSAflyV0VEnQ2KTUL3smOrxrfs3jhTvZX7JycY1ejE4Ay0zGW8ulyEhp1Vft jNjQ44g+lEspytnMqNzWhiHTvv6p9LNfMdh/hTDzbql3dqiyqHGgAdMFyAFBj1h3P6y2 HEJF1lkiSgMEVnCDiotYql2rv2DsecB2HD0mTOam0UsxWCAUxMkw1WrOYQOSyW6UFeuk OP6xz7A2QOHpS8ulc1PFjXcgOINOqEWUxmHo5ccm806Jto54WVoU81vZ/DCYztPZCqPS n1Uw== X-Gm-Message-State: AC+VfDxBqQvK6IWi1uj3o8ocrOl5B/f1ndDikCAq67usXTfBeHK8AW9B MNVLwRW06Y53f6bbAe7+k8p19q+YC48= X-Received: by 2002:a05:6830:61a:b0:6af:9f77:54c7 with SMTP id w26-20020a056830061a00b006af9f7754c7mr460810oti.9.1685093402038; Fri, 26 May 2023 02:30:02 -0700 (PDT) Received: from [172.17.0.2] ([40.84.170.17]) by smtp.gmail.com with ESMTPSA id e15-20020a05683013cf00b006af913c1044sm1537219otq.16.2023.05.26.02.30.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 26 May 2023 02:30:01 -0700 (PDT) Message-ID: <64707c19.050a0220.8f048.796a@mx.google.com> Date: Fri, 26 May 2023 02:30:01 -0700 (PDT) Content-Type: multipart/mixed; boundary="===============3934188870624001502==" MIME-Version: 1.0 From: bluez.test.bot@gmail.com To: linux-bluetooth@vger.kernel.org, iam@sung-woo.kim Subject: RE: Bluetooth: L2CAP: Fix use-after-free in l2cap_sock_ready_cb In-Reply-To: <20230526084038.2199788-1-iam@sung-woo.kim> References: <20230526084038.2199788-1-iam@sung-woo.kim> Reply-To: linux-bluetooth@vger.kernel.org X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE, URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-bluetooth@vger.kernel.org --===============3934188870624001502== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhpcyBpcyBhdXRvbWF0ZWQgZW1haWwgYW5kIHBsZWFzZSBkbyBub3QgcmVwbHkgdG8gdGhpcyBl bWFpbCEKCkRlYXIgc3VibWl0dGVyLAoKVGhhbmsgeW91IGZvciBzdWJtaXR0aW5nIHRoZSBwYXRj aGVzIHRvIHRoZSBsaW51eCBibHVldG9vdGggbWFpbGluZyBsaXN0LgpUaGlzIGlzIGEgQ0kgdGVz dCByZXN1bHRzIHdpdGggeW91ciBwYXRjaCBzZXJpZXM6ClBXIExpbms6aHR0cHM6Ly9wYXRjaHdv cmsua2VybmVsLm9yZy9wcm9qZWN0L2JsdWV0b290aC9saXN0Lz9zZXJpZXM9NzUxMjgxCgotLS1U ZXN0IHJlc3VsdC0tLQoKVGVzdCBTdW1tYXJ5OgpDaGVja1BhdGNoICAgICAgICAgICAgICAgICAg ICBGQUlMICAgICAgMC45OSBzZWNvbmRzCkdpdExpbnQgICAgICAgICAgICAgICAgICAgICAgIEZB SUwgICAgICAwLjYxIHNlY29uZHMKU3ViamVjdFByZWZpeCAgICAgICAgICAgICAgICAgUEFTUyAg ICAgIDAuMTAgc2Vjb25kcwpCdWlsZEtlcm5lbCAgICAgICAgICAgICAgICAgICBGQUlMICAgICAg MzAuMTYgc2Vjb25kcwpDaGVja0FsbFdhcm5pbmcgICAgICAgICAgICAgICBGQUlMICAgICAgMzMu MTkgc2Vjb25kcwpDaGVja1NwYXJzZSAgICAgICAgICAgICAgICAgICBGQUlMICAgICAgMzYuMjEg c2Vjb25kcwpDaGVja1NtYXRjaCAgICAgICAgICAgICAgICAgICBGQUlMICAgICAgMTAyLjAzIHNl Y29uZHMKQnVpbGRLZXJuZWwzMiAgICAgICAgICAgICAgICAgRkFJTCAgICAgIDI4LjgxIHNlY29u ZHMKVGVzdFJ1bm5lclNldHVwICAgICAgICAgICAgICAgRkFJTCAgICAgIDQ5NC44MiBzZWNvbmRz ClRlc3RSdW5uZXJfbDJjYXAtdGVzdGVyICAgICAgIEZBSUwgICAgICAwLjEyIHNlY29uZHMKVGVz dFJ1bm5lcl9pc28tdGVzdGVyICAgICAgICAgRkFJTCAgICAgIDAuMTMgc2Vjb25kcwpUZXN0UnVu bmVyX2JuZXAtdGVzdGVyICAgICAgICBGQUlMICAgICAgMC4xMiBzZWNvbmRzClRlc3RSdW5uZXJf bWdtdC10ZXN0ZXIgICAgICAgIEZBSUwgICAgICAwLjEzIHNlY29uZHMKVGVzdFJ1bm5lcl9yZmNv bW0tdGVzdGVyICAgICAgRkFJTCAgICAgIDAuMTMgc2Vjb25kcwpUZXN0UnVubmVyX3Njby10ZXN0 ZXIgICAgICAgICBGQUlMICAgICAgMC4xMyBzZWNvbmRzClRlc3RSdW5uZXJfaW9jdGwtdGVzdGVy ICAgICAgIEZBSUwgICAgICAwLjEyIHNlY29uZHMKVGVzdFJ1bm5lcl9tZXNoLXRlc3RlciAgICAg ICAgRkFJTCAgICAgIDAuMTIgc2Vjb25kcwpUZXN0UnVubmVyX3NtcC10ZXN0ZXIgICAgICAgICBG QUlMICAgICAgMC4xMiBzZWNvbmRzClRlc3RSdW5uZXJfdXNlcmNoYW4tdGVzdGVyICAgIEZBSUwg ICAgICAwLjEzIHNlY29uZHMKSW5jcmVtZW50YWxCdWlsZCAgICAgICAgICAgICAgRkFJTCAgICAg IDI2LjYxIHNlY29uZHMKCkRldGFpbHMKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjClRl c3Q6IENoZWNrUGF0Y2ggLSBGQUlMCkRlc2M6IFJ1biBjaGVja3BhdGNoLnBsIHNjcmlwdApPdXRw dXQ6CkJsdWV0b290aDogTDJDQVA6IEZpeCB1c2UtYWZ0ZXItZnJlZSBpbiBsMmNhcF9zb2NrX3Jl YWR5X2NiCldBUk5JTkc6IFBvc3NpYmxlIHVud3JhcHBlZCBjb21taXQgZGVzY3JpcHRpb24gKHBy ZWZlciBhIG1heGltdW0gNzUgY2hhcnMgcGVyIGxpbmUpCiM3OTogCkNQVTogMCBQSUQ6IDI3NiBD b21tOiBrd29ya2VyL3UzOjAgTm90IHRhaW50ZWQgNi4yLjAtMDAwMDEtZ2VmMzk3YmQ0ZDVmYi1k aXJ0eSAjNTkKCnRvdGFsOiAwIGVycm9ycywgMSB3YXJuaW5ncywgMCBjaGVja3MsIDkgbGluZXMg Y2hlY2tlZAoKTk9URTogRm9yIHNvbWUgb2YgdGhlIHJlcG9ydGVkIGRlZmVjdHMsIGNoZWNrcGF0 Y2ggbWF5IGJlIGFibGUgdG8KICAgICAgbWVjaGFuaWNhbGx5IGNvbnZlcnQgdG8gdGhlIHR5cGlj YWwgc3R5bGUgdXNpbmcgLS1maXggb3IgLS1maXgtaW5wbGFjZS4KCi9naXRodWIvd29ya3NwYWNl L3NyYy9zcmMvMTMyNTY2MDQucGF0Y2ggaGFzIHN0eWxlIHByb2JsZW1zLCBwbGVhc2UgcmV2aWV3 LgoKTk9URTogSWdub3JlZCBtZXNzYWdlIHR5cGVzOiBVTktOT1dOX0NPTU1JVF9JRAoKTk9URTog SWYgYW55IG9mIHRoZSBlcnJvcnMgYXJlIGZhbHNlIHBvc2l0aXZlcywgcGxlYXNlIHJlcG9ydAog ICAgICB0aGVtIHRvIHRoZSBtYWludGFpbmVyLCBzZWUgQ0hFQ0tQQVRDSCBpbiBNQUlOVEFJTkVS Uy4KCgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKVGVzdDogR2l0TGludCAtIEZBSUwK RGVzYzogUnVuIGdpdGxpbnQKT3V0cHV0OgpCbHVldG9vdGg6IEwyQ0FQOiBGaXggdXNlLWFmdGVy LWZyZWUgaW4gbDJjYXBfc29ja19yZWFkeV9jYgoKV0FSTklORzogSTMgLSBpZ25vcmUtYm9keS1s aW5lczogZ2l0bGludCB3aWxsIGJlIHN3aXRjaGluZyBmcm9tIHVzaW5nIFB5dGhvbiByZWdleCAn bWF0Y2gnIChtYXRjaCBiZWdpbm5pbmcpIHRvICdzZWFyY2gnIChtYXRjaCBhbnl3aGVyZSkgc2Vt YW50aWNzLiBQbGVhc2UgcmV2aWV3IHlvdXIgaWdub3JlLWJvZHktbGluZXMucmVnZXggb3B0aW9u IGFjY29yZGluZ2x5LiBUbyByZW1vdmUgdGhpcyB3YXJuaW5nLCBzZXQgZ2VuZXJhbC5yZWdleC1z dHlsZS1zZWFyY2g9VHJ1ZS4gTW9yZSBkZXRhaWxzOiBodHRwczovL2pvcmlzcm9vdmVycy5naXRo dWIuaW8vZ2l0bGludC9jb25maWd1cmF0aW9uLyNyZWdleC1zdHlsZS1zZWFyY2gKODogQjEgTGlu ZSBleGNlZWRzIG1heCBsZW5ndGggKDkyPjgwKTogIkJVRzogS0FTQU46IHVzZS1hZnRlci1mcmVl IGluIGwyY2FwX3NvY2tfcmVhZHlfY2IrMHhiNy8weDEwMCBuZXQvYmx1ZXRvb3RoL2wyY2FwX3Nv Y2suYzoxNjUwIgoxMTogQjEgTGluZSBleGNlZWRzIG1heCBsZW5ndGggKDgyPjgwKTogIkNQVTog MCBQSUQ6IDI3NiBDb21tOiBrd29ya2VyL3UzOjAgTm90IHRhaW50ZWQgNi4yLjAtMDAwMDEtZ2Vm Mzk3YmQ0ZDVmYi1kaXJ0eSAjNTkiCjEwMDogQjEgTGluZSBleGNlZWRzIG1heCBsZW5ndGggKDEw Nj44MCk6ICJwYWdlOjAwMDAwMDAwZGJjYTZhODAgcmVmY291bnQ6MSBtYXBjb3VudDowIG1hcHBp bmc6MDAwMDAwMDAwMDAwMDAwMCBpbmRleDoweGZmZmY4ODgxMDQ2MTQwMDAgcGZuOjB4MTA0NjE0 IgoxMDE6IEIxIExpbmUgZXhjZWVkcyBtYXggbGVuZ3RoICg4OT44MCk6ICJoZWFkOjAwMDAwMDAw ZGJjYTZhODAgb3JkZXI6MiBjb21wb3VuZF9tYXBjb3VudDowIHN1YnBhZ2VzX21hcGNvdW50OjAg Y29tcG91bmRfcGluY291bnQ6MCIKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjClRlc3Q6 IEJ1aWxkS2VybmVsIC0gRkFJTApEZXNjOiBCdWlsZCBLZXJuZWwgZm9yIEJsdWV0b290aApPdXRw dXQ6CgpuZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2suYzogSW4gZnVuY3Rpb24g4oCYbDJjYXBfc29j a19yZWxlYXNl4oCZOgpuZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2suYzoxNDE4OjI6IGVycm9yOiBp bXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhsMmNhcF9zb2NrX2NsZWFudXBfbGlz dGVu4oCZOyBkaWQgeW91IG1lYW4g4oCYbDJjYXBfc29ja19saXN0ZW7igJk/IFstV2Vycm9yPWlt cGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogMTQxOCB8ICBsMmNhcF9zb2NrX2NsZWFudXBf bGlzdGVuKHNrKTsKICAgICAgfCAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgogICAgICB8ICBs MmNhcF9zb2NrX2xpc3RlbgpuZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2suYzogQXQgdG9wIGxldmVs OgpuZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2suYzoxNDM2OjEzOiB3YXJuaW5nOiBjb25mbGljdGlu ZyB0eXBlcyBmb3Ig4oCYbDJjYXBfc29ja19jbGVhbnVwX2xpc3RlbuKAmQogMTQzNiB8IHN0YXRp YyB2b2lkIGwyY2FwX3NvY2tfY2xlYW51cF9saXN0ZW4oc3RydWN0IHNvY2sgKnBhcmVudCkKICAg ICAgfCAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cm5ldC9ibHVldG9vdGgv bDJjYXBfc29jay5jOjE0MzY6MTM6IGVycm9yOiBzdGF0aWMgZGVjbGFyYXRpb24gb2Yg4oCYbDJj YXBfc29ja19jbGVhbnVwX2xpc3RlbuKAmSBmb2xsb3dzIG5vbi1zdGF0aWMgZGVjbGFyYXRpb24K bmV0L2JsdWV0b290aC9sMmNhcF9zb2NrLmM6MTQxODoyOiBub3RlOiBwcmV2aW91cyBpbXBsaWNp dCBkZWNsYXJhdGlvbiBvZiDigJhsMmNhcF9zb2NrX2NsZWFudXBfbGlzdGVu4oCZIHdhcyBoZXJl CiAxNDE4IHwgIGwyY2FwX3NvY2tfY2xlYW51cF9saXN0ZW4oc2spOwogICAgICB8ICBefn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+CmNjMTogc29tZSB3YXJuaW5ncyBiZWluZyB0cmVhdGVkIGFzIGVy cm9ycwptYWtlWzNdOiAqKiogW3NjcmlwdHMvTWFrZWZpbGUuYnVpbGQ6MjUyOiBuZXQvYmx1ZXRv b3RoL2wyY2FwX3NvY2sub10gRXJyb3IgMQptYWtlWzJdOiAqKiogW3NjcmlwdHMvTWFrZWZpbGUu YnVpbGQ6NDk0OiBuZXQvYmx1ZXRvb3RoXSBFcnJvciAyCm1ha2VbMV06ICoqKiBbc2NyaXB0cy9N YWtlZmlsZS5idWlsZDo0OTQ6IG5ldF0gRXJyb3IgMgptYWtlWzFdOiAqKiogV2FpdGluZyBmb3Ig dW5maW5pc2hlZCBqb2JzLi4uLgptYWtlOiAqKiogW01ha2VmaWxlOjIwMjU6IC5dIEVycm9yIDIK IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjClRlc3Q6IENoZWNrQWxsV2FybmluZyAtIEZB SUwKRGVzYzogUnVuIGxpbnV4IGtlcm5lbCB3aXRoIGFsbCB3YXJuaW5nIGVuYWJsZWQKT3V0cHV0 OgoKbmV0L2JsdWV0b290aC9sMmNhcF9zb2NrLmM6IEluIGZ1bmN0aW9uIOKAmGwyY2FwX3NvY2tf cmVsZWFzZeKAmToKbmV0L2JsdWV0b290aC9sMmNhcF9zb2NrLmM6MTQxODoyOiBlcnJvcjogaW1w bGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCYbDJjYXBfc29ja19jbGVhbnVwX2xpc3Rl buKAmTsgZGlkIHlvdSBtZWFuIOKAmGwyY2FwX3NvY2tfbGlzdGVu4oCZPyBbLVdlcnJvcj1pbXBs aWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KIDE0MTggfCAgbDJjYXBfc29ja19jbGVhbnVwX2xp c3Rlbihzayk7CiAgICAgIHwgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgfCAgbDJj YXBfc29ja19saXN0ZW4KbmV0L2JsdWV0b290aC9sMmNhcF9zb2NrLmM6IEF0IHRvcCBsZXZlbDoK bmV0L2JsdWV0b290aC9sMmNhcF9zb2NrLmM6MTQzNjoxMzogd2FybmluZzogY29uZmxpY3Rpbmcg dHlwZXMgZm9yIOKAmGwyY2FwX3NvY2tfY2xlYW51cF9saXN0ZW7igJkKIDE0MzYgfCBzdGF0aWMg dm9pZCBsMmNhcF9zb2NrX2NsZWFudXBfbGlzdGVuKHN0cnVjdCBzb2NrICpwYXJlbnQpCiAgICAg IHwgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpuZXQvYmx1ZXRvb3RoL2wy Y2FwX3NvY2suYzoxNDM2OjEzOiBlcnJvcjogc3RhdGljIGRlY2xhcmF0aW9uIG9mIOKAmGwyY2Fw X3NvY2tfY2xlYW51cF9saXN0ZW7igJkgZm9sbG93cyBub24tc3RhdGljIGRlY2xhcmF0aW9uCm5l dC9ibHVldG9vdGgvbDJjYXBfc29jay5jOjE0MTg6Mjogbm90ZTogcHJldmlvdXMgaW1wbGljaXQg ZGVjbGFyYXRpb24gb2Yg4oCYbDJjYXBfc29ja19jbGVhbnVwX2xpc3RlbuKAmSB3YXMgaGVyZQog MTQxOCB8ICBsMmNhcF9zb2NrX2NsZWFudXBfbGlzdGVuKHNrKTsKICAgICAgfCAgXn5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fgpjYzE6IHNvbWUgd2FybmluZ3MgYmVpbmcgdHJlYXRlZCBhcyBlcnJv cnMKbWFrZVszXTogKioqIFtzY3JpcHRzL01ha2VmaWxlLmJ1aWxkOjI1MjogbmV0L2JsdWV0b290 aC9sMmNhcF9zb2NrLm9dIEVycm9yIDEKbWFrZVsyXTogKioqIFtzY3JpcHRzL01ha2VmaWxlLmJ1 aWxkOjQ5NDogbmV0L2JsdWV0b290aF0gRXJyb3IgMgptYWtlWzFdOiAqKiogW3NjcmlwdHMvTWFr ZWZpbGUuYnVpbGQ6NDk0OiBuZXRdIEVycm9yIDIKbWFrZVsxXTogKioqIFdhaXRpbmcgZm9yIHVu ZmluaXNoZWQgam9icy4uLi4KbWFrZTogKioqIFtNYWtlZmlsZToyMDI1OiAuXSBFcnJvciAyCiMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpUZXN0OiBDaGVja1NwYXJzZSAtIEZBSUwKRGVz YzogUnVuIHNwYXJzZSB0b29sIHdpdGggbGludXgga2VybmVsCk91dHB1dDoKCm5ldC9ibHVldG9v dGgvYWZfYmx1ZXRvb3RoLmM6MTc4OjI1OiB3YXJuaW5nOiBjb250ZXh0IGltYmFsYW5jZSBpbiAn YnRfYWNjZXB0X2VucXVldWUnIC0gZGlmZmVyZW50IGxvY2sgY29udGV4dHMgZm9yIGJhc2ljIGJs b2NrCmRyaXZlcnMvYmx1ZXRvb3RoL2hjaV9hZzZ4eC5jOjI1NzoyNDogd2FybmluZzogcmVzdHJp Y3RlZCBfX2xlMzIgZGVncmFkZXMgdG8gaW50ZWdlcgpkcml2ZXJzL2JsdWV0b290aC9oY2lfbXJ2 bC5jOjE3MDoyMzogd2FybmluZzogcmVzdHJpY3RlZCBfX2xlMTYgZGVncmFkZXMgdG8gaW50ZWdl cgpkcml2ZXJzL2JsdWV0b290aC9oY2lfbXJ2bC5jOjIwMzoyMzogd2FybmluZzogcmVzdHJpY3Rl ZCBfX2xlMTYgZGVncmFkZXMgdG8gaW50ZWdlcgpuZXQvYmx1ZXRvb3RoL2hjaV9ldmVudC5jOiBu b3RlOiBpbiBpbmNsdWRlZCBmaWxlICh0aHJvdWdoIGluY2x1ZGUvbmV0L2JsdWV0b290aC9oY2lf Y29yZS5oKToKLi9pbmNsdWRlL25ldC9ibHVldG9vdGgvaGNpLmg6MjY0Nzo0Nzogd2FybmluZzog YXJyYXkgb2YgZmxleGlibGUgc3RydWN0dXJlcwouL2luY2x1ZGUvbmV0L2JsdWV0b290aC9oY2ku aDoyNzMzOjQzOiB3YXJuaW5nOiBhcnJheSBvZiBmbGV4aWJsZSBzdHJ1Y3R1cmVzCmRyaXZlcnMv Ymx1ZXRvb3RoL2J0bXRrc2Rpby5jOjU1Nzo2Mzogd2FybmluZzogVXNpbmcgcGxhaW4gaW50ZWdl ciBhcyBOVUxMIHBvaW50ZXIKZHJpdmVycy9ibHVldG9vdGgvYnRtdGtzZGlvLmM6NTc5OjU1OiB3 YXJuaW5nOiBVc2luZyBwbGFpbiBpbnRlZ2VyIGFzIE5VTEwgcG9pbnRlcgpkcml2ZXJzL2JsdWV0 b290aC9idG10a3NkaW8uYzo2MTE6NjM6IHdhcm5pbmc6IFVzaW5nIHBsYWluIGludGVnZXIgYXMg TlVMTCBwb2ludGVyCmRyaXZlcnMvYmx1ZXRvb3RoL2J0bXRrc2Rpby5jOjYyNDo2Mzogd2Fybmlu ZzogVXNpbmcgcGxhaW4gaW50ZWdlciBhcyBOVUxMIHBvaW50ZXIKbmV0L2JsdWV0b290aC9sMmNh cF9zb2NrLmM6IEluIGZ1bmN0aW9uIOKAmGwyY2FwX3NvY2tfcmVsZWFzZeKAmToKbmV0L2JsdWV0 b290aC9sMmNhcF9zb2NrLmM6MTQxODoyOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2Yg ZnVuY3Rpb24g4oCYbDJjYXBfc29ja19jbGVhbnVwX2xpc3RlbuKAmTsgZGlkIHlvdSBtZWFuIOKA mGwyY2FwX3NvY2tfbGlzdGVu4oCZPyBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJh dGlvbl0KIDE0MTggfCAgbDJjYXBfc29ja19jbGVhbnVwX2xpc3Rlbihzayk7CiAgICAgIHwgIF5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KICAgICAgfCAgbDJjYXBfc29ja19saXN0ZW4KbmV0L2Js dWV0b290aC9sMmNhcF9zb2NrLmM6IEF0IHRvcCBsZXZlbDoKbmV0L2JsdWV0b290aC9sMmNhcF9z b2NrLmM6MTQzNjoxMzogd2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9yIOKAmGwyY2FwX3Nv Y2tfY2xlYW51cF9saXN0ZW7igJkKIDE0MzYgfCBzdGF0aWMgdm9pZCBsMmNhcF9zb2NrX2NsZWFu dXBfbGlzdGVuKHN0cnVjdCBzb2NrICpwYXJlbnQpCiAgICAgIHwgICAgICAgICAgICAgXn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn5+fgpuZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2suYzoxNDM2OjEzOiBl cnJvcjogc3RhdGljIGRlY2xhcmF0aW9uIG9mIOKAmGwyY2FwX3NvY2tfY2xlYW51cF9saXN0ZW7i gJkgZm9sbG93cyBub24tc3RhdGljIGRlY2xhcmF0aW9uCm5ldC9ibHVldG9vdGgvbDJjYXBfc29j ay5jOjE0MTg6Mjogbm90ZTogcHJldmlvdXMgaW1wbGljaXQgZGVjbGFyYXRpb24gb2Yg4oCYbDJj YXBfc29ja19jbGVhbnVwX2xpc3RlbuKAmSB3YXMgaGVyZQogMTQxOCB8ICBsMmNhcF9zb2NrX2Ns ZWFudXBfbGlzdGVuKHNrKTsKICAgICAgfCAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpjYzE6 IHNvbWUgd2FybmluZ3MgYmVpbmcgdHJlYXRlZCBhcyBlcnJvcnMKbWFrZVszXTogKioqIFtzY3Jp cHRzL01ha2VmaWxlLmJ1aWxkOjI1MjogbmV0L2JsdWV0b290aC9sMmNhcF9zb2NrLm9dIEVycm9y IDEKbWFrZVsyXTogKioqIFtzY3JpcHRzL01ha2VmaWxlLmJ1aWxkOjQ5NDogbmV0L2JsdWV0b290 aF0gRXJyb3IgMgptYWtlWzFdOiAqKiogW3NjcmlwdHMvTWFrZWZpbGUuYnVpbGQ6NDk0OiBuZXRd IEVycm9yIDIKbWFrZVsxXTogKioqIFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KZHJp dmVycy9ibHVldG9vdGgvaGNpX25va2lhLmM6Mjg0OjIzOiB3YXJuaW5nOiBpbmNvcnJlY3QgdHlw ZSBpbiBhc3NpZ25tZW50IChkaWZmZXJlbnQgYmFzZSB0eXBlcykKZHJpdmVycy9ibHVldG9vdGgv aGNpX25va2lhLmM6Mjg0OjIzOiAgICBleHBlY3RlZCB1bnNpZ25lZCBzaG9ydCBbdXNlcnR5cGVd IGJhdWQKZHJpdmVycy9ibHVldG9vdGgvaGNpX25va2lhLmM6Mjg0OjIzOiAgICBnb3QgcmVzdHJp Y3RlZCBfX2xlMTYgW3VzZXJ0eXBlXQpkcml2ZXJzL2JsdWV0b290aC9oY2lfbm9raWEuYzoyODc6 MjY6IHdhcm5pbmc6IGluY29ycmVjdCB0eXBlIGluIGFzc2lnbm1lbnQgKGRpZmZlcmVudCBiYXNl IHR5cGVzKQpkcml2ZXJzL2JsdWV0b290aC9oY2lfbm9raWEuYzoyODc6MjY6ICAgIGV4cGVjdGVk IHVuc2lnbmVkIHNob3J0IFt1c2VydHlwZV0gc3lzX2Nsawpkcml2ZXJzL2JsdWV0b290aC9oY2lf bm9raWEuYzoyODc6MjY6ICAgIGdvdCByZXN0cmljdGVkIF9fbGUxNiBbdXNlcnR5cGVdCm1ha2U6 ICoqKiBbTWFrZWZpbGU6MjAyNTogLl0gRXJyb3IgMgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMKVGVzdDogQ2hlY2tTbWF0Y2ggLSBGQUlMCkRlc2M6IFJ1biBzbWF0Y2ggdG9vbCB3aXRo IHNvdXJjZQpPdXRwdXQ6CgpuZXQvYmx1ZXRvb3RoL2hjaV9ldmVudC5jOiBub3RlOiBpbiBpbmNs dWRlZCBmaWxlICh0aHJvdWdoIGluY2x1ZGUvbmV0L2JsdWV0b290aC9oY2lfY29yZS5oKToKLi9p bmNsdWRlL25ldC9ibHVldG9vdGgvaGNpLmg6MjY0Nzo0Nzogd2FybmluZzogYXJyYXkgb2YgZmxl eGlibGUgc3RydWN0dXJlcwouL2luY2x1ZGUvbmV0L2JsdWV0b290aC9oY2kuaDoyNzMzOjQzOiB3 YXJuaW5nOiBhcnJheSBvZiBmbGV4aWJsZSBzdHJ1Y3R1cmVzCm5ldC9ibHVldG9vdGgvbDJjYXBf c29jay5jOiBJbiBmdW5jdGlvbiDigJhsMmNhcF9zb2NrX3JlbGVhc2XigJk6Cm5ldC9ibHVldG9v dGgvbDJjYXBfc29jay5jOjE0MTg6MjogZXJyb3I6IGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIGZ1 bmN0aW9uIOKAmGwyY2FwX3NvY2tfY2xlYW51cF9saXN0ZW7igJk7IGRpZCB5b3UgbWVhbiDigJhs MmNhcF9zb2NrX2xpc3RlbuKAmT8gWy1XZXJyb3I9aW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRp b25dCiAxNDE4IHwgIGwyY2FwX3NvY2tfY2xlYW51cF9saXN0ZW4oc2spOwogICAgICB8ICBefn5+ fn5+fn5+fn5+fn5+fn5+fn5+fn5+CiAgICAgIHwgIGwyY2FwX3NvY2tfbGlzdGVuCm5ldC9ibHVl dG9vdGgvbDJjYXBfc29jay5jOiBBdCB0b3AgbGV2ZWw6Cm5ldC9ibHVldG9vdGgvbDJjYXBfc29j ay5jOjE0MzY6MTM6IHdhcm5pbmc6IGNvbmZsaWN0aW5nIHR5cGVzIGZvciDigJhsMmNhcF9zb2Nr X2NsZWFudXBfbGlzdGVu4oCZCiAxNDM2IHwgc3RhdGljIHZvaWQgbDJjYXBfc29ja19jbGVhbnVw X2xpc3RlbihzdHJ1Y3Qgc29jayAqcGFyZW50KQogICAgICB8ICAgICAgICAgICAgIF5+fn5+fn5+ fn5+fn5+fn5+fn5+fn5+fn4KbmV0L2JsdWV0b290aC9sMmNhcF9zb2NrLmM6MTQzNjoxMzogZXJy b3I6IHN0YXRpYyBkZWNsYXJhdGlvbiBvZiDigJhsMmNhcF9zb2NrX2NsZWFudXBfbGlzdGVu4oCZ IGZvbGxvd3Mgbm9uLXN0YXRpYyBkZWNsYXJhdGlvbgpuZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2su YzoxNDE4OjI6IG5vdGU6IHByZXZpb3VzIGltcGxpY2l0IGRlY2xhcmF0aW9uIG9mIOKAmGwyY2Fw X3NvY2tfY2xlYW51cF9saXN0ZW7igJkgd2FzIGhlcmUKIDE0MTggfCAgbDJjYXBfc29ja19jbGVh bnVwX2xpc3Rlbihzayk7CiAgICAgIHwgIF5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn4KY2MxOiBz b21lIHdhcm5pbmdzIGJlaW5nIHRyZWF0ZWQgYXMgZXJyb3JzCm1ha2VbM106ICoqKiBbc2NyaXB0 cy9NYWtlZmlsZS5idWlsZDoyNTI6IG5ldC9ibHVldG9vdGgvbDJjYXBfc29jay5vXSBFcnJvciAx Cm1ha2VbM106ICoqKiBXYWl0aW5nIGZvciB1bmZpbmlzaGVkIGpvYnMuLi4uCm1ha2VbMl06ICoq KiBbc2NyaXB0cy9NYWtlZmlsZS5idWlsZDo0OTQ6IG5ldC9ibHVldG9vdGhdIEVycm9yIDIKbWFr ZVsxXTogKioqIFtzY3JpcHRzL01ha2VmaWxlLmJ1aWxkOjQ5NDogbmV0XSBFcnJvciAyCm1ha2U6 ICoqKiBbTWFrZWZpbGU6MjAyNTogLl0gRXJyb3IgMgojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMKVGVzdDogQnVpbGRLZXJuZWwzMiAtIEZBSUwKRGVzYzogQnVpbGQgMzJiaXQgS2VybmVs IGZvciBCbHVldG9vdGgKT3V0cHV0OgoKbmV0L2JsdWV0b290aC9sMmNhcF9zb2NrLmM6IEluIGZ1 bmN0aW9uIOKAmGwyY2FwX3NvY2tfcmVsZWFzZeKAmToKbmV0L2JsdWV0b290aC9sMmNhcF9zb2Nr LmM6MTQxODoyOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCYbDJj YXBfc29ja19jbGVhbnVwX2xpc3RlbuKAmTsgZGlkIHlvdSBtZWFuIOKAmGwyY2FwX3NvY2tfbGlz dGVu4oCZPyBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KIDE0MTggfCAg bDJjYXBfc29ja19jbGVhbnVwX2xpc3Rlbihzayk7CiAgICAgIHwgIF5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fn4KICAgICAgfCAgbDJjYXBfc29ja19saXN0ZW4KbmV0L2JsdWV0b290aC9sMmNhcF9z b2NrLmM6IEF0IHRvcCBsZXZlbDoKbmV0L2JsdWV0b290aC9sMmNhcF9zb2NrLmM6MTQzNjoxMzog d2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9yIOKAmGwyY2FwX3NvY2tfY2xlYW51cF9saXN0 ZW7igJkKIDE0MzYgfCBzdGF0aWMgdm9pZCBsMmNhcF9zb2NrX2NsZWFudXBfbGlzdGVuKHN0cnVj dCBzb2NrICpwYXJlbnQpCiAgICAgIHwgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+ fn5+fgpuZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2suYzoxNDM2OjEzOiBlcnJvcjogc3RhdGljIGRl Y2xhcmF0aW9uIG9mIOKAmGwyY2FwX3NvY2tfY2xlYW51cF9saXN0ZW7igJkgZm9sbG93cyBub24t c3RhdGljIGRlY2xhcmF0aW9uCm5ldC9ibHVldG9vdGgvbDJjYXBfc29jay5jOjE0MTg6Mjogbm90 ZTogcHJldmlvdXMgaW1wbGljaXQgZGVjbGFyYXRpb24gb2Yg4oCYbDJjYXBfc29ja19jbGVhbnVw X2xpc3RlbuKAmSB3YXMgaGVyZQogMTQxOCB8ICBsMmNhcF9zb2NrX2NsZWFudXBfbGlzdGVuKHNr KTsKICAgICAgfCAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpjYzE6IHNvbWUgd2FybmluZ3Mg YmVpbmcgdHJlYXRlZCBhcyBlcnJvcnMKbWFrZVszXTogKioqIFtzY3JpcHRzL01ha2VmaWxlLmJ1 aWxkOjI1MjogbmV0L2JsdWV0b290aC9sMmNhcF9zb2NrLm9dIEVycm9yIDEKbWFrZVsyXTogKioq IFtzY3JpcHRzL01ha2VmaWxlLmJ1aWxkOjQ5NDogbmV0L2JsdWV0b290aF0gRXJyb3IgMgptYWtl WzFdOiAqKiogW3NjcmlwdHMvTWFrZWZpbGUuYnVpbGQ6NDk0OiBuZXRdIEVycm9yIDIKbWFrZVsx XTogKioqIFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KbWFrZTogKioqIFtNYWtlZmls ZToyMDI1OiAuXSBFcnJvciAyCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpUZXN0OiBU ZXN0UnVubmVyU2V0dXAgLSBGQUlMCkRlc2M6IFNldHVwIGtlcm5lbCBhbmQgYmx1ZXogZm9yIHRl c3QtcnVubmVyCk91dHB1dDoKS2VybmVsOiAKbmV0L2JsdWV0b290aC9sMmNhcF9zb2NrLmM6IElu IGZ1bmN0aW9uIOKAmGwyY2FwX3NvY2tfcmVsZWFzZeKAmToKbmV0L2JsdWV0b290aC9sMmNhcF9z b2NrLmM6MTQxODoyOiBlcnJvcjogaW1wbGljaXQgZGVjbGFyYXRpb24gb2YgZnVuY3Rpb24g4oCY bDJjYXBfc29ja19jbGVhbnVwX2xpc3RlbuKAmTsgZGlkIHlvdSBtZWFuIOKAmGwyY2FwX3NvY2tf bGlzdGVu4oCZPyBbLVdlcnJvcj1pbXBsaWNpdC1mdW5jdGlvbi1kZWNsYXJhdGlvbl0KIDE0MTgg fCAgbDJjYXBfc29ja19jbGVhbnVwX2xpc3Rlbihzayk7CiAgICAgIHwgIF5+fn5+fn5+fn5+fn5+ fn5+fn5+fn5+fn4KICAgICAgfCAgbDJjYXBfc29ja19saXN0ZW4KbmV0L2JsdWV0b290aC9sMmNh cF9zb2NrLmM6IEF0IHRvcCBsZXZlbDoKbmV0L2JsdWV0b290aC9sMmNhcF9zb2NrLmM6MTQzNjox Mzogd2FybmluZzogY29uZmxpY3RpbmcgdHlwZXMgZm9yIOKAmGwyY2FwX3NvY2tfY2xlYW51cF9s aXN0ZW7igJkKIDE0MzYgfCBzdGF0aWMgdm9pZCBsMmNhcF9zb2NrX2NsZWFudXBfbGlzdGVuKHN0 cnVjdCBzb2NrICpwYXJlbnQpCiAgICAgIHwgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn5+ fn5+fn5+fgpuZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2suYzoxNDM2OjEzOiBlcnJvcjogc3RhdGlj IGRlY2xhcmF0aW9uIG9mIOKAmGwyY2FwX3NvY2tfY2xlYW51cF9saXN0ZW7igJkgZm9sbG93cyBu b24tc3RhdGljIGRlY2xhcmF0aW9uCm5ldC9ibHVldG9vdGgvbDJjYXBfc29jay5jOjE0MTg6Mjog bm90ZTogcHJldmlvdXMgaW1wbGljaXQgZGVjbGFyYXRpb24gb2Yg4oCYbDJjYXBfc29ja19jbGVh bnVwX2xpc3RlbuKAmSB3YXMgaGVyZQogMTQxOCB8ICBsMmNhcF9zb2NrX2NsZWFudXBfbGlzdGVu KHNrKTsKICAgICAgfCAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fgpjYzE6IHNvbWUgd2Fybmlu Z3MgYmVpbmcgdHJlYXRlZCBhcyBlcnJvcnMKbWFrZVszXTogKioqIFtzY3JpcHRzL01ha2VmaWxl LmJ1aWxkOjI1MjogbmV0L2JsdWV0b290aC9sMmNhcF9zb2NrLm9dIEVycm9yIDEKbWFrZVszXTog KioqIFdhaXRpbmcgZm9yIHVuZmluaXNoZWQgam9icy4uLi4KbWFrZVsyXTogKioqIFtzY3JpcHRz L01ha2VmaWxlLmJ1aWxkOjQ5NDogbmV0L2JsdWV0b290aF0gRXJyb3IgMgptYWtlWzJdOiAqKiog V2FpdGluZyBmb3IgdW5maW5pc2hlZCBqb2JzLi4uLgptYWtlWzFdOiAqKiogW3NjcmlwdHMvTWFr ZWZpbGUuYnVpbGQ6NDk0OiBuZXRdIEVycm9yIDIKbWFrZTogKioqIFtNYWtlZmlsZToyMDI1OiAu XSBFcnJvciAyCiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpUZXN0OiBUZXN0UnVubmVy X2wyY2FwLXRlc3RlciAtIEZBSUwKRGVzYzogUnVuIGwyY2FwLXRlc3RlciB3aXRoIHRlc3QtcnVu bmVyCk91dHB1dDoKCkNvdWxkIG5vdCBhY2Nlc3MgS1ZNIGtlcm5lbCBtb2R1bGU6IE5vIHN1Y2gg ZmlsZSBvciBkaXJlY3RvcnkKcWVtdS1zeXN0ZW0teDg2XzY0OiBmYWlsZWQgdG8gaW5pdGlhbGl6 ZSBLVk06IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKcWVtdS1zeXN0ZW0teDg2XzY0OiBCYWNr IHRvIHRjZyBhY2NlbGVyYXRvcgpxZW11OiBjb3VsZCBub3Qgb3BlbiBrZXJuZWwgZmlsZSAnL2dp dGh1Yi93b3Jrc3BhY2Uvc3JjL3NyYy9hcmNoL3g4Ni9ib290L2J6SW1hZ2UnOiBObyBzdWNoIGZp bGUgb3IgZGlyZWN0b3J5CiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpUZXN0OiBUZXN0 UnVubmVyX2lzby10ZXN0ZXIgLSBGQUlMCkRlc2M6IFJ1biBpc28tdGVzdGVyIHdpdGggdGVzdC1y dW5uZXIKT3V0cHV0OgoKQ291bGQgbm90IGFjY2VzcyBLVk0ga2VybmVsIG1vZHVsZTogTm8gc3Vj aCBmaWxlIG9yIGRpcmVjdG9yeQpxZW11LXN5c3RlbS14ODZfNjQ6IGZhaWxlZCB0byBpbml0aWFs aXplIEtWTTogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpxZW11LXN5c3RlbS14ODZfNjQ6IEJh Y2sgdG8gdGNnIGFjY2VsZXJhdG9yCnFlbXU6IGNvdWxkIG5vdCBvcGVuIGtlcm5lbCBmaWxlICcv Z2l0aHViL3dvcmtzcGFjZS9zcmMvc3JjL2FyY2gveDg2L2Jvb3QvYnpJbWFnZSc6IE5vIHN1Y2gg ZmlsZSBvciBkaXJlY3RvcnkKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjClRlc3Q6IFRl c3RSdW5uZXJfYm5lcC10ZXN0ZXIgLSBGQUlMCkRlc2M6IFJ1biBibmVwLXRlc3RlciB3aXRoIHRl c3QtcnVubmVyCk91dHB1dDoKCkNvdWxkIG5vdCBhY2Nlc3MgS1ZNIGtlcm5lbCBtb2R1bGU6IE5v IHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKcWVtdS1zeXN0ZW0teDg2XzY0OiBmYWlsZWQgdG8gaW5p dGlhbGl6ZSBLVk06IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKcWVtdS1zeXN0ZW0teDg2XzY0 OiBCYWNrIHRvIHRjZyBhY2NlbGVyYXRvcgpxZW11OiBjb3VsZCBub3Qgb3BlbiBrZXJuZWwgZmls ZSAnL2dpdGh1Yi93b3Jrc3BhY2Uvc3JjL3NyYy9hcmNoL3g4Ni9ib290L2J6SW1hZ2UnOiBObyBz dWNoIGZpbGUgb3IgZGlyZWN0b3J5CiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwpUZXN0 OiBUZXN0UnVubmVyX21nbXQtdGVzdGVyIC0gRkFJTApEZXNjOiBSdW4gbWdtdC10ZXN0ZXIgd2l0 aCB0ZXN0LXJ1bm5lcgpPdXRwdXQ6CgpDb3VsZCBub3QgYWNjZXNzIEtWTSBrZXJuZWwgbW9kdWxl OiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CnFlbXUtc3lzdGVtLXg4Nl82NDogZmFpbGVkIHRv IGluaXRpYWxpemUgS1ZNOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CnFlbXUtc3lzdGVtLXg4 Nl82NDogQmFjayB0byB0Y2cgYWNjZWxlcmF0b3IKcWVtdTogY291bGQgbm90IG9wZW4ga2VybmVs IGZpbGUgJy9naXRodWIvd29ya3NwYWNlL3NyYy9zcmMvYXJjaC94ODYvYm9vdC9iekltYWdlJzog Tm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMK VGVzdDogVGVzdFJ1bm5lcl9yZmNvbW0tdGVzdGVyIC0gRkFJTApEZXNjOiBSdW4gcmZjb21tLXRl c3RlciB3aXRoIHRlc3QtcnVubmVyCk91dHB1dDoKCkNvdWxkIG5vdCBhY2Nlc3MgS1ZNIGtlcm5l bCBtb2R1bGU6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKcWVtdS1zeXN0ZW0teDg2XzY0OiBm YWlsZWQgdG8gaW5pdGlhbGl6ZSBLVk06IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKcWVtdS1z eXN0ZW0teDg2XzY0OiBCYWNrIHRvIHRjZyBhY2NlbGVyYXRvcgpxZW11OiBjb3VsZCBub3Qgb3Bl biBrZXJuZWwgZmlsZSAnL2dpdGh1Yi93b3Jrc3BhY2Uvc3JjL3NyYy9hcmNoL3g4Ni9ib290L2J6 SW1hZ2UnOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CiMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIwpUZXN0OiBUZXN0UnVubmVyX3Njby10ZXN0ZXIgLSBGQUlMCkRlc2M6IFJ1biBzY28t dGVzdGVyIHdpdGggdGVzdC1ydW5uZXIKT3V0cHV0OgoKQ291bGQgbm90IGFjY2VzcyBLVk0ga2Vy bmVsIG1vZHVsZTogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpxZW11LXN5c3RlbS14ODZfNjQ6 IGZhaWxlZCB0byBpbml0aWFsaXplIEtWTTogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpxZW11 LXN5c3RlbS14ODZfNjQ6IEJhY2sgdG8gdGNnIGFjY2VsZXJhdG9yCnFlbXU6IGNvdWxkIG5vdCBv cGVuIGtlcm5lbCBmaWxlICcvZ2l0aHViL3dvcmtzcGFjZS9zcmMvc3JjL2FyY2gveDg2L2Jvb3Qv YnpJbWFnZSc6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjClRlc3Q6IFRlc3RSdW5uZXJfaW9jdGwtdGVzdGVyIC0gRkFJTApEZXNjOiBSdW4g aW9jdGwtdGVzdGVyIHdpdGggdGVzdC1ydW5uZXIKT3V0cHV0OgoKQ291bGQgbm90IGFjY2VzcyBL Vk0ga2VybmVsIG1vZHVsZTogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpxZW11LXN5c3RlbS14 ODZfNjQ6IGZhaWxlZCB0byBpbml0aWFsaXplIEtWTTogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9y eQpxZW11LXN5c3RlbS14ODZfNjQ6IEJhY2sgdG8gdGNnIGFjY2VsZXJhdG9yCnFlbXU6IGNvdWxk IG5vdCBvcGVuIGtlcm5lbCBmaWxlICcvZ2l0aHViL3dvcmtzcGFjZS9zcmMvc3JjL2FyY2gveDg2 L2Jvb3QvYnpJbWFnZSc6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjClRlc3Q6IFRlc3RSdW5uZXJfbWVzaC10ZXN0ZXIgLSBGQUlMCkRlc2M6 IFJ1biBtZXNoLXRlc3RlciB3aXRoIHRlc3QtcnVubmVyCk91dHB1dDoKCkNvdWxkIG5vdCBhY2Nl c3MgS1ZNIGtlcm5lbCBtb2R1bGU6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKcWVtdS1zeXN0 ZW0teDg2XzY0OiBmYWlsZWQgdG8gaW5pdGlhbGl6ZSBLVk06IE5vIHN1Y2ggZmlsZSBvciBkaXJl Y3RvcnkKcWVtdS1zeXN0ZW0teDg2XzY0OiBCYWNrIHRvIHRjZyBhY2NlbGVyYXRvcgpxZW11OiBj b3VsZCBub3Qgb3BlbiBrZXJuZWwgZmlsZSAnL2dpdGh1Yi93b3Jrc3BhY2Uvc3JjL3NyYy9hcmNo L3g4Ni9ib290L2J6SW1hZ2UnOiBObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5CiMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIwpUZXN0OiBUZXN0UnVubmVyX3NtcC10ZXN0ZXIgLSBGQUlMCkRl c2M6IFJ1biBzbXAtdGVzdGVyIHdpdGggdGVzdC1ydW5uZXIKT3V0cHV0OgoKQ291bGQgbm90IGFj Y2VzcyBLVk0ga2VybmVsIG1vZHVsZTogTm8gc3VjaCBmaWxlIG9yIGRpcmVjdG9yeQpxZW11LXN5 c3RlbS14ODZfNjQ6IGZhaWxlZCB0byBpbml0aWFsaXplIEtWTTogTm8gc3VjaCBmaWxlIG9yIGRp cmVjdG9yeQpxZW11LXN5c3RlbS14ODZfNjQ6IEJhY2sgdG8gdGNnIGFjY2VsZXJhdG9yCnFlbXU6 IGNvdWxkIG5vdCBvcGVuIGtlcm5lbCBmaWxlICcvZ2l0aHViL3dvcmtzcGFjZS9zcmMvc3JjL2Fy Y2gveDg2L2Jvb3QvYnpJbWFnZSc6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkKIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjClRlc3Q6IFRlc3RSdW5uZXJfdXNlcmNoYW4tdGVzdGVyIC0g RkFJTApEZXNjOiBSdW4gdXNlcmNoYW4tdGVzdGVyIHdpdGggdGVzdC1ydW5uZXIKT3V0cHV0OgoK Q291bGQgbm90IGFjY2VzcyBLVk0ga2VybmVsIG1vZHVsZTogTm8gc3VjaCBmaWxlIG9yIGRpcmVj dG9yeQpxZW11LXN5c3RlbS14ODZfNjQ6IGZhaWxlZCB0byBpbml0aWFsaXplIEtWTTogTm8gc3Vj aCBmaWxlIG9yIGRpcmVjdG9yeQpxZW11LXN5c3RlbS14ODZfNjQ6IEJhY2sgdG8gdGNnIGFjY2Vs ZXJhdG9yCnFlbXU6IGNvdWxkIG5vdCBvcGVuIGtlcm5lbCBmaWxlICcvZ2l0aHViL3dvcmtzcGFj ZS9zcmMvc3JjL2FyY2gveDg2L2Jvb3QvYnpJbWFnZSc6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3Rv cnkKIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjClRlc3Q6IEluY3JlbWVudGFsQnVpbGQg LSBGQUlMCkRlc2M6IEluY3JlbWVudGFsIGJ1aWxkIHdpdGggdGhlIHBhdGNoZXMgaW4gdGhlIHNl cmllcwpPdXRwdXQ6CkJsdWV0b290aDogTDJDQVA6IEZpeCB1c2UtYWZ0ZXItZnJlZSBpbiBsMmNh cF9zb2NrX3JlYWR5X2NiCgpuZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2suYzogSW4gZnVuY3Rpb24g 4oCYbDJjYXBfc29ja19yZWxlYXNl4oCZOgpuZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2suYzoxNDE4 OjI6IGVycm9yOiBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiBmdW5jdGlvbiDigJhsMmNhcF9zb2Nr X2NsZWFudXBfbGlzdGVu4oCZOyBkaWQgeW91IG1lYW4g4oCYbDJjYXBfc29ja19saXN0ZW7igJk/ IFstV2Vycm9yPWltcGxpY2l0LWZ1bmN0aW9uLWRlY2xhcmF0aW9uXQogMTQxOCB8ICBsMmNhcF9z b2NrX2NsZWFudXBfbGlzdGVuKHNrKTsKICAgICAgfCAgXn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+ fgogICAgICB8ICBsMmNhcF9zb2NrX2xpc3RlbgpuZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2suYzog QXQgdG9wIGxldmVsOgpuZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2suYzoxNDM2OjEzOiB3YXJuaW5n OiBjb25mbGljdGluZyB0eXBlcyBmb3Ig4oCYbDJjYXBfc29ja19jbGVhbnVwX2xpc3RlbuKAmQog MTQzNiB8IHN0YXRpYyB2b2lkIGwyY2FwX3NvY2tfY2xlYW51cF9saXN0ZW4oc3RydWN0IHNvY2sg KnBhcmVudCkKICAgICAgfCAgICAgICAgICAgICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Cm5l dC9ibHVldG9vdGgvbDJjYXBfc29jay5jOjE0MzY6MTM6IGVycm9yOiBzdGF0aWMgZGVjbGFyYXRp b24gb2Yg4oCYbDJjYXBfc29ja19jbGVhbnVwX2xpc3RlbuKAmSBmb2xsb3dzIG5vbi1zdGF0aWMg ZGVjbGFyYXRpb24KbmV0L2JsdWV0b290aC9sMmNhcF9zb2NrLmM6MTQxODoyOiBub3RlOiBwcmV2 aW91cyBpbXBsaWNpdCBkZWNsYXJhdGlvbiBvZiDigJhsMmNhcF9zb2NrX2NsZWFudXBfbGlzdGVu 4oCZIHdhcyBoZXJlCiAxNDE4IHwgIGwyY2FwX3NvY2tfY2xlYW51cF9saXN0ZW4oc2spOwogICAg ICB8ICBefn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+CmNjMTogc29tZSB3YXJuaW5ncyBiZWluZyB0 cmVhdGVkIGFzIGVycm9ycwptYWtlWzNdOiAqKiogW3NjcmlwdHMvTWFrZWZpbGUuYnVpbGQ6MjUy OiBuZXQvYmx1ZXRvb3RoL2wyY2FwX3NvY2sub10gRXJyb3IgMQptYWtlWzJdOiAqKiogW3Njcmlw dHMvTWFrZWZpbGUuYnVpbGQ6NDk0OiBuZXQvYmx1ZXRvb3RoXSBFcnJvciAyCm1ha2VbMV06ICoq KiBbc2NyaXB0cy9NYWtlZmlsZS5idWlsZDo0OTQ6IG5ldF0gRXJyb3IgMgptYWtlWzFdOiAqKiog V2FpdGluZyBmb3IgdW5maW5pc2hlZCBqb2JzLi4uLgptYWtlOiAqKiogW01ha2VmaWxlOjIwMjU6 IC5dIEVycm9yIDIKCgotLS0KUmVnYXJkcywKTGludXggQmx1ZXRvb3RoCgo= --===============3934188870624001502==--