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 1s1NNa-00Bldc-Rc for pgadmin-hackers@arkaria.postgresql.org; Mon, 29 Apr 2024 09:32:58 +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 1s1NNY-00GCy1-5x for pgadmin-hackers@arkaria.postgresql.org; Mon, 29 Apr 2024 09:32:57 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1s1NNX-00GCxt-MQ for pgadmin-hackers@lists.postgresql.org; Mon, 29 Apr 2024 09:32:56 +0000 Received: from mail-qt1-x82b.google.com ([2607:f8b0:4864:20::82b]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1s1NNV-000aIS-Sx for pgadmin-hackers@lists.postgresql.org; Mon, 29 Apr 2024 09:32:55 +0000 Received: by mail-qt1-x82b.google.com with SMTP id d75a77b69052e-43a8246b51dso17520051cf.1 for ; Mon, 29 Apr 2024 02:32:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1714383172; x=1714987972; darn=lists.postgresql.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=Bp4uST0ZX3ZDPGc5WRRZ1S+VTh4eLQ7sV8zgZdZVQ3c=; b=nPYSvanPDqyRYgFooor5Os9M+vhMwShID6fUosem9lp2mDx1pdJgZbtaxF4S3cAdDt qOpTEktTAX7v2gPckAzDBUutOGVjGb+890iSx9EKrzkIP63fmLwXCHUu8PrGfa2TyjlE Bl/TTf4G4bwxOwgxBefaShJpiz65H+sa9I2S4/TQhPFmSFdKmLu3qM+ajiMe5SpFFnJR JXyPZ2UVeP811WS23Quo3wb8QFhMG3mZd3Qw80HJLR+poEQuOWyUWQ7qPM6zLejDudCZ ABFfMsL+9WIbSFrHY5S6/wKJ6kvQu/XtNAAWCvjiXunl9xP6L4GP0OduiewzsnXfMuRd J8wQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1714383172; x=1714987972; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=Bp4uST0ZX3ZDPGc5WRRZ1S+VTh4eLQ7sV8zgZdZVQ3c=; b=sluOeEzcdkezPBhNUVnE1/GF908SpeqNSKLR65uYna5CkuSkY5Df+3Z6Uqq9M8F2fq LSs+Ql0GlofKsfN1gpQxc1Qx1fAsyVONnaSa7w8ctlsebXGHnTgTYdn8RI0KWEDHLviB 4LLT3dgac6ZLQt+u8BuR/yCqApXojzBCIeVCIr5WJBXov5vtTz+MeB9dY4D6/ZNOwDHX f8PWZUFJoyfOwOpoWjlvyMXnBL2ruHush/SidCecjyKVRnYyRfdsluOqojSNk2Lii8tC o18FXGGI8SIE8CGmcMEnGHWt5abbu8Ow9eh3inUnGD2hy7c/lR1EGrfqJy3JauvKem9S 2oJw== X-Gm-Message-State: AOJu0YzW3SF/7Tt0Q2bU/RDz/zoc2A6PJyCt1L98z2QRhOjafH+FDTYx Xtfsm28JbBEak1lDYo71TwUkb9uD/QzAYAuI0jTJmXKt4QQrKHgtl6/5rS5od+z0BUwoogBhVaG Y8byTR3mX+6Gjau13b6uZwqjrQhiVQs9u X-Google-Smtp-Source: AGHT+IHvc2FR+cZD3ZUV7fqfX/Yjj20PhP5BBo4nz80Q0riA3U8IFrcYfgdcDNewzupAP2R8pM3wuabdJQQw7WkY7jI= X-Received: by 2002:ac8:5e12:0:b0:43a:fd38:5390 with SMTP id h18-20020ac85e12000000b0043afd385390mr1494586qtx.64.1714383172216; Mon, 29 Apr 2024 02:32:52 -0700 (PDT) MIME-Version: 1.0 From: Usman Khan Date: Mon, 29 Apr 2024 14:32:42 +0500 Message-ID: Subject: Feature Tests failures To: pgadmin-hackers@lists.postgresql.org Content-Type: multipart/mixed; boundary="000000000000fd707e061738ef75" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000fd707e061738ef75 Content-Type: multipart/alternative; boundary="000000000000fd707c061738ef73" --000000000000fd707c061738ef73 Content-Type: text/plain; charset="UTF-8" Hi Team, I am Usman Muzaffar, I in the past worked on feature tests. Recently, I tried to execute feature tests without selenoid, but was stuck with the following error for all the test cases. ======= Browser tool bar feature test ... skipped "Currently, config is set to start pgadmin in server mode. This test doesn't know username and password so doesn't work in server mode" ======= I used the following command to execute the test cases *python3 runtests.py --pkg=feature_tests* The complete logs are also attached here. For your reference, config file is also attached Regards, Usman Muzaffar --000000000000fd707c061738ef73 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Team,
I am Usman Muzaffar, I in the past worked on = feature tests. Recently, I tried to execute feature tests without selenoid,= but was stuck with the following error for all the test cases.
<= br>
=3D=3D=3D=3D=3D=3D=3D
Browser tool bar feature test= ... skipped "Currently, config is set to start pgadmin in server mode= . This test doesn't know username and password so doesn't work in s= erver mode"
=3D=3D=3D=3D=3D=3D=3D

I used the following command to execute the test cases
pyth= on3 runtests.py --pkg=3Dfeature_tests

The = complete logs are also attached here. For your reference, config file is al= so attached

Regards,
Usman Muzaffar
--000000000000fd707c061738ef73-- --000000000000fd707e061738ef75 Content-Type: application/octet-stream; name="test_config.json.in" Content-Disposition: attachment; filename="test_config.json.in" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lvkr3sgk0 ewogICJoZWFkbGVzc19jaHJvbWUiOiBmYWxzZSwKICAiZGVmYXVsdF9icm93c2VyIjogIkNocm9t ZSIsCiAgInBnQWRtaW40X2xvZ2luX2NyZWRlbnRpYWxzIjogewogICAgIm5ld19wYXNzd29yZCI6 ICJwZyIsCiAgICAibG9naW5fcGFzc3dvcmQiOiAicGciLAogICAgImxvZ2luX3VzZXJuYW1lIjog InVtazU1NUBnbWFpbC5jb20iCiAgfSwKICAicGdBZG1pbjRfdGVzdF91c2VyX2NyZWRlbnRpYWxz IjogewogICAgIm5ld19wYXNzd29yZCI6ICJwZyIsCiAgICAibG9naW5fcGFzc3dvcmQiOiAicGci LAogICAgImxvZ2luX3VzZXJuYW1lIjogInVtazU1NUBnbWFpbC5jb20iCiAgfSwKICAicGdBZG1p bjRfdGVzdF9ub25fYWRtaW5fY3JlZGVudGlhbHMiOiB7CiAgICAibmV3X3Bhc3N3b3JkIjogInBn IiwKICAgICJsb2dpbl9wYXNzd29yZCI6ICJwZyIsCiAgICAibG9naW5fdXNlcm5hbWUiOiAidW1r NTU1QGdtYWlsLmNvbSIKICB9LAogICJwZ0FkbWluNF9sZGFwX2NyZWRlbnRpYWxzIjogewogICAg ImxvZ2luX3Bhc3N3b3JkIjogIlBBU1NXT1JEIiwKICAgICJsb2dpbl91c2VybmFtZSI6ICJVU0VS TkFNRSIKICB9LAogICJsZGFwX2NvbmZpZyI6IFsKICAgIHsKICAgICJsZGFwIjogewogICAgICAi bmFtZSI6ICJMZGFwIHNjZW5hcmlvIG5hbWUiLAogICAgICAidXJpIjogImxkYXA6Ly9JUC1BRERS RVNTL0hPU1ROQU1FOjM4OSIsCiAgICAgICJhbm9ueW1vdXNfYmluZCI6IGZhbHNlLAogICAgICAi YmluZF91c2VyIjogIiIsCiAgICAgICJiaW5kX3Bhc3N3b3JkIjogIiIsCiAgICAgICJiYXNlX2Ru IjogIkJBU0UtRE4iLAogICAgICAic2VhcmNoX2Jhc2VfZG4iOiAiU0VBUkNILUJBU0UtRE4iLAog ICAgICAidXNlcm5hbWVfYXRyIjogIlVJRCIsCiAgICAgICJzZWFyY2hfZmlsdGVyIjogIihvYmpl Y3RjbGFzcz0qKSIsCiAgICAgICJ1c2Vfc3RhcnR0bHMiOiBmYWxzZSwKICAgICAgImNhX2NlcnRf ZmlsZSI6ICIiLAogICAgICAiY2VydF9maWxlIjogIiIsCiAgICAgICJrZXlfZmlsZSI6ICIiCiAg ICB9LAogICAgImxkYXBfd2l0aF9zc2wiOiB7CiAgICAgICJuYW1lIjogIkxkYXAgc2NlbmFyaW8g bmFtZSIsCiAgICAgICJ1cmkiOiAibGRhcHM6Ly9JUC1BRERSRVNTL0hPU1ROQU1FOjYzNiIsCiAg ICAgICJhbm9ueW1vdXNfYmluZCI6IGZhbHNlLAogICAgICAiYmluZF91c2VyIjogIiIsCiAgICAg ICJiaW5kX3Bhc3N3b3JkIjogIiIsCiAgICAgICJiYXNlX2RuIjogIkJBU0UtRE4iLAogICAgICAi c2VhcmNoX2Jhc2VfZG4iOiAiU0VBUkNILUJBU0UtRE4iLAogICAgICAidXNlcm5hbWVfYXRyIjog IlVJRCIsCiAgICAgICJzZWFyY2hfZmlsdGVyIjogIihvYmplY3RjbGFzcz0qKSIsCiAgICAgICJ1 c2Vfc3RhcnR0bHMiOiBmYWxzZSwKICAgICAgImNhX2NlcnRfZmlsZSI6ICIiLAogICAgICAiY2Vy dF9maWxlIjogIiIsCiAgICAgICJrZXlfZmlsZSI6ICIiCiAgICB9LAogICAgImxkYXBfd2l0aF90 bHMiOiB7CiAgICAgICJuYW1lIjogIkxkYXAgc2NlbmFyaW8gbmFtZSIsCiAgICAgICJ1cmkiOiAi bGRhcDovL0lQLUFERFJFU1MvSE9TVE5BTUU6Mzg5IiwKICAgICAgImFub255bW91c19iaW5kIjog ZmFsc2UsCiAgICAgICJiaW5kX3VzZXIiOiAiIiwKICAgICAgImJpbmRfcGFzc3dvcmQiOiAiIiwK ICAgICAgImJhc2VfZG4iOiAiIiwKICAgICAgInNlYXJjaF9iYXNlX2RuIjogIlNFQVJDSC1CQVNF LUROIiwKICAgICAgInVzZXJuYW1lX2F0ciI6ICJVSUQiLAogICAgICAic2VhcmNoX2ZpbHRlciI6 ICIob2JqZWN0Y2xhc3M9KikiLAogICAgICAidXNlX3N0YXJ0dGxzIjogdHJ1ZSwKICAgICAgImNh X2NlcnRfZmlsZSI6ICIiLAogICAgICAiY2VydF9maWxlIjogIiIsCiAgICAgICJrZXlfZmlsZSI6 ICIiCiAgICB9LAogICAgImxkYXBfd2l0aF9kZWRpY2F0ZWRfdXNlciI6IHsKICAgICAgIm5hbWUi OiAiTGRhcCBzY2VuYXJpbyBuYW1lIiwKICAgICAgInVyaSI6ICJsZGFwOi8vSVAtQUREUkVTUy9I T1NUTkFNRTozODkiLAogICAgICAiYW5vbnltb3VzX2JpbmQiOiB0cnVlLAogICAgICAiYmluZF91 c2VyIjogIiIsCiAgICAgICJiaW5kX3Bhc3N3b3JkIjogIiIsCiAgICAgICJiYXNlX2RuIjogIiIs CiAgICAgICJzZWFyY2hfYmFzZV9kbiI6ICJTRUFSQ0gtQkFTRS1ETiIsCiAgICAgICJ1c2VybmFt ZV9hdHIiOiAiVUlEIiwKICAgICAgInNlYXJjaF9maWx0ZXIiOiAiKG9iamVjdGNsYXNzPSopIiwK ICAgICAgInVzZV9zdGFydHRscyI6IHRydWUsCiAgICAgICJjYV9jZXJ0X2ZpbGUiOiAiIiwKICAg ICAgImNlcnRfZmlsZSI6ICIiLAogICAgICAia2V5X2ZpbGUiOiAiIgogICAgfQogIH1dLAogICJz ZWxlbm9pZF9jb25maWciOiB7CiAgICAicGdBZG1pbl9kZWZhdWx0X3NlcnZlciI6IklQIGFkZHJl c3Mgb2YgbWFjaGluZSB3aGVyZSBzb3VyY2UgY29kZSBpcyBnb2luZyB0byBiZSBleGVjdXRlZCIs CiAgICAicGdBZG1pbl9tYXhfdXBfdGltZSI6IDkwLAogICAgIm1heF9wYXJhbGxlbF9zZXNzaW9u cyI6ICIzIiwKICAgICJzZWxlbm9pZF91cmwiOiAiaHR0cDovLzxJUCBhZGRyZXNzIG9mIFNlbGVu b2lkIEluc3RhbGxlZCBtYWNoaW5lPjo0NDQ0L3dkL2h1YiIsCiAgICAiYnJvd3NlcnNfbGlzdCI6 WwogICAgICAgIHsibmFtZSI6ICJDaHJvbWUiLCAidmVyc2lvbiI6IG51bGx9LAogICAgICAgIHsi bmFtZSI6ICJGaXJlZm94IiwgInZlcnNpb24iOiBudWxsfQogICAgXQogIH0sCiAgInNlcnZlcl9n cm91cCI6IDEsCiAgInNlcnZlcl9jcmVkZW50aWFscyI6IFsKICAgIHsKICAgICAgIm5hbWUiOiAi UG9zdGdyZVNRTCAxNiIsCiAgICAgICJjb21tZW50IjogIlBvc3RncmVTUUwgMTYgU2VydmVyIChF REIgSW5zdGFsbGVyKSIsCiAgICAgICJkYl91c2VybmFtZSI6ICJwb3N0Z3JlcyIsCiAgICAgICJo b3N0IjogImxvY2FsaG9zdCIsCiAgICAgICJkYl9wYXNzd29yZCI6ICJwZyIsCiAgICAgICJkYl9w b3J0IjogNTQzMiwKICAgICAgIm1haW50ZW5hbmNlX2RiIjogInBvc3RncmVzIiwKICAgICAgInNz bG1vZGUiOiAicHJlZmVyIiwKICAgICAgInRhYmxlc3BhY2VfcGF0aCI6ICIiLAogICAgICAiZW5h YmxlZCI6IHRydWUsCiAgICAgICJkZWZhdWx0X2JpbmFyeV9wYXRocyI6IHsKICAgICAgICAicGci OiAiL3Vzci9saWIvcG9zdGdyZXNxbC8xNi9iaW4iLAogICAgICAgICJwcGFzIjogIi9vcHQvZWRi L2FzMTAvYmluLyIKICAgICAgfQogICAgfQogIF0sCiAgInNlcnZlcl91cGRhdGVfZGF0YSI6IFsK ICAgIHsKICAgICAgImNvbW1lbnQiOiAiVGhpcyBpcyB0ZXN0IHVwZGF0ZSBjb21tZW50IgogICAg fQogIF0KfQo= --000000000000fd707e061738ef75 Content-Type: application/octet-stream; name="feature_test_logs.log" Content-Disposition: attachment; filename="feature_test_logs.log" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lvkr4wrn1 KHZlbnYpIHJvb3RAdWJ1bnR1LTIyOi9ob21lL3VidW50dS9EZXNrdG9wL3BnYWRtaW40L3dlYi9y ZWdyZXNzaW9uIyANCih2ZW52KSByb290QHVidW50dS0yMjovaG9tZS91YnVudHUvRGVza3RvcC9w Z2FkbWluNC93ZWIvcmVncmVzc2lvbiMgcHl0aG9uMyBydW50ZXN0cy5weSAtLXBrZz1mZWF0dXJl X3Rlc3RzIC0tcGFyYWxsZWw9cGFyYWxsZWwNCk5PVEU6IENvbmZpZ3VyaW5nIGF1dGhlbnRpY2F0 aW9uIGZvciBTRVJWRVIgbW9kZS4NCg0KVW5hYmxlIHRvIGZpbmQgU2VsZW5vaWQgU3RhdHVzLktp bmRseSBjaGVjayB1cmwgcGFzc2VkIC0naHR0cDovLzxJUCBhZGRyZXNzIG9mIFNlbGVub2lkIElu c3RhbGxlZCBtYWNoaW5lPjo0NDQ0L3dkL2h1YicuQ2hlY2sgcGFyc2luZyBlcnJvcnMgaW4gdGVz dF9jb25maWcuanNvbg0KDQo9PT09PT09PT09PT09IEVpdGhlciBTZWxlbml1bSBHcmlkIGlzIE5P VCB1cCBPUiBicm93c2VyIGxpc3QgaXMgMCA9PT09PT09PT09PT09DQpQbGVhc2UgY2hlY2sgb3V0 cHV0IGluIGZpbGU6IC9ob21lL3VidW50dS9EZXNrdG9wL3BnYWRtaW40L3dlYi9yZWdyZXNzaW9u L3JlZ3Jlc3Npb24ubG9nDQoNCih2ZW52KSByb290QHVidW50dS0yMjovaG9tZS91YnVudHUvRGVz a3RvcC9wZ2FkbWluNC93ZWIvcmVncmVzc2lvbiMgcHl0aG9uMyBydW50ZXN0cy5weSAtLXBrZz1m ZWF0dXJlX3Rlc3RzIC0tcGFyYWxsZWw9ZmFsc2UgICANCk5PVEU6IENvbmZpZ3VyaW5nIGF1dGhl bnRpY2F0aW9uIGZvciBTRVJWRVIgbW9kZS4NCg0KVW5hYmxlIHRvIGZpbmQgU2VsZW5vaWQgU3Rh dHVzLktpbmRseSBjaGVjayB1cmwgcGFzc2VkIC0naHR0cDovLzxJUCBhZGRyZXNzIG9mIFNlbGVu b2lkIEluc3RhbGxlZCBtYWNoaW5lPjo0NDQ0L3dkL2h1YicuQ2hlY2sgcGFyc2luZyBlcnJvcnMg aW4gdGVzdF9jb25maWcuanNvbg0KDQo9PT09PT09PT09PT09IEVpdGhlciBTZWxlbml1bSBHcmlk IGlzIE5PVCB1cCBPUiBicm93c2VyIGxpc3QgaXMgMCA9PT09PT09PT09PT09DQpQbGVhc2UgY2hl Y2sgb3V0cHV0IGluIGZpbGU6IC9ob21lL3VidW50dS9EZXNrdG9wL3BnYWRtaW40L3dlYi9yZWdy ZXNzaW9uL3JlZ3Jlc3Npb24ubG9nDQoNCih2ZW52KSByb290QHVidW50dS0yMjovaG9tZS91YnVu dHUvRGVza3RvcC9wZ2FkbWluNC93ZWIvcmVncmVzc2lvbiMgcHl0aG9uMyBydW50ZXN0cy5weSAt LXBrZz1mZWF0dXJlX3Rlc3RzICAgICAgICAgICAgICAgICANCk5PVEU6IENvbmZpZ3VyaW5nIGF1 dGhlbnRpY2F0aW9uIGZvciBTRVJWRVIgbW9kZS4NCg0KU3RhcnRpbmcgcGdBZG1pbiA0LiBQbGVh c2UgbmF2aWdhdGUgdG8gaHR0cDovLzEyNy4wLjAuMTo2Mjc3NCBpbiB5b3VyIGJyb3dzZXIuDQog KiBTZXJ2aW5nIEZsYXNrIGFwcCAncGdhZG1pbicNCiAqIERlYnVnIG1vZGU6IG9mZg0KDQo9PT09 PT09PT09PT09UnVubmluZyB0aGUgdGVzdCBjYXNlcyBmb3IgJ1Bvc3RncmVTUUwgMTYnID09PT09 PT09PT09PT0NCjIwMjQtMDQtMjkgMTQ6MTY6MjUsMjQ2OiBXQVJOSU5HCXBnYWRtaW46CUludmFs aWQgYmluYXJ5IHBhdGguDQoyMDI0LTA0LTI5IDE0OjE2OjI1LDI0NjogV0FSTklORwlwZ2FkbWlu OglJbnZhbGlkIGJpbmFyeSBwYXRoLg0KMjAyNC0wNC0yOSAxNDoxNjoyNSwyNDY6IFdBUk5JTkcJ cGdhZG1pbjoJSW52YWxpZCBiaW5hcnkgcGF0aC4NCjIwMjQtMDQtMjkgMTQ6MTY6MjUsMjQ2OiBX QVJOSU5HCXBnYWRtaW46CUludmFsaWQgYmluYXJ5IHBhdGguDQpydW5UZXN0IChyZWdyZXNzaW9u LmZlYXR1cmVfdGVzdHMuYnJvd3Nlcl90b29sX2Jhcl90ZXN0LkJyb3dzZXJUb29sQmFyRmVhdHVy ZVRlc3QpDQpCcm93c2VyIHRvb2wgYmFyIGZlYXR1cmUgdGVzdCAuLi4gc2tpcHBlZCAiQ3VycmVu dGx5LCBjb25maWcgaXMgc2V0IHRvIHN0YXJ0IHBnYWRtaW4gaW4gc2VydmVyIG1vZGUuIFRoaXMg dGVzdCBkb2Vzbid0IGtub3cgdXNlcm5hbWUgYW5kIHBhc3N3b3JkIHNvIGRvZXNuJ3Qgd29yayBp biBzZXJ2ZXIgbW9kZSINCnJ1blRlc3QgKHJlZ3Jlc3Npb24uZmVhdHVyZV90ZXN0cy5jb3B5X3Nl bGVjdGVkX3F1ZXJ5X3Jlc3VsdHNfZmVhdHVyZV90ZXN0LkNvcHlTZWxlY3RlZFF1ZXJ5UmVzdWx0 c0ZlYXR1cmVUZXN0KQ0KQ29weSByb3dzLCBjb2x1bW4gdXNpbmcgYnV0dG9uIGFuZCBrZXlib2Fy ZCBzaG9ydGN1dCAuLi4gc2tpcHBlZCAiQ3VycmVudGx5LCBjb25maWcgaXMgc2V0IHRvIHN0YXJ0 IHBnYWRtaW4gaW4gc2VydmVyIG1vZGUuIFRoaXMgdGVzdCBkb2Vzbid0IGtub3cgdXNlcm5hbWUg YW5kIHBhc3N3b3JkIHNvIGRvZXNuJ3Qgd29yayBpbiBzZXJ2ZXIgbW9kZSINCnJ1blRlc3QgKHJl Z3Jlc3Npb24uZmVhdHVyZV90ZXN0cy5maWxlX21hbmFnZXJfdGVzdC5DaGVja0ZpbGVNYW5hZ2Vy RmVhdHVyZVRlc3QpDQpGaWxlIG1hbmFnZXIgZmVhdHVyZSB0ZXN0IC4uLiBza2lwcGVkICJDdXJy ZW50bHksIGNvbmZpZyBpcyBzZXQgdG8gc3RhcnQgcGdhZG1pbiBpbiBzZXJ2ZXIgbW9kZS4gVGhp cyB0ZXN0IGRvZXNuJ3Qga25vdyB1c2VybmFtZSBhbmQgcGFzc3dvcmQgc28gZG9lc24ndCB3b3Jr IGluIHNlcnZlciBtb2RlIg0KcnVuVGVzdCAocmVncmVzc2lvbi5mZWF0dXJlX3Rlc3RzLmtleWJv YXJkX3Nob3J0Y3V0X3Rlc3QuS2V5Ym9hcmRTaG9ydGN1dEZlYXR1cmVUZXN0KQ0KVGVzdCBmb3Ig a2V5Ym9hcmQgc2hvcnRjdXQgLi4uIHNraXBwZWQgIkN1cnJlbnRseSwgY29uZmlnIGlzIHNldCB0 byBzdGFydCBwZ2FkbWluIGluIHNlcnZlciBtb2RlLiBUaGlzIHRlc3QgZG9lc24ndCBrbm93IHVz ZXJuYW1lIGFuZCBwYXNzd29yZCBzbyBkb2Vzbid0IHdvcmsgaW4gc2VydmVyIG1vZGUiDQpydW5U ZXN0IChyZWdyZXNzaW9uLmZlYXR1cmVfdGVzdHMucGdfZGF0YXR5cGVfdmFsaWRhdGlvbl90ZXN0 LlBHRGF0YXlwZUZlYXR1cmVUZXN0KQ0KVGVzdCBjaGVja3MgZm9yIFBHIGRhdGEtdHlwZXMgb3V0 cHV0IC4uLiBza2lwcGVkICJDdXJyZW50bHksIGNvbmZpZyBpcyBzZXQgdG8gc3RhcnQgcGdhZG1p biBpbiBzZXJ2ZXIgbW9kZS4gVGhpcyB0ZXN0IGRvZXNuJ3Qga25vdyB1c2VybmFtZSBhbmQgcGFz c3dvcmQgc28gZG9lc24ndCB3b3JrIGluIHNlcnZlciBtb2RlIg0KcnVuVGVzdCAocmVncmVzc2lv bi5mZWF0dXJlX3Rlc3RzLnBnX3V0aWxpdGllc19iYWNrdXBfcmVzdG9yZV90ZXN0LlBHVXRpbGl0 aWVzQmFja3VwRmVhdHVyZVRlc3QpDQpUZXN0IGZvciBQRyB1dGlsaXRpZXMgLSBCYWNrdXAgYW5k IFJlc3RvcmUgLi4uIHNraXBwZWQgIkN1cnJlbnRseSwgY29uZmlnIGlzIHNldCB0byBzdGFydCBw Z2FkbWluIGluIHNlcnZlciBtb2RlLiBUaGlzIHRlc3QgZG9lc24ndCBrbm93IHVzZXJuYW1lIGFu ZCBwYXNzd29yZCBzbyBkb2Vzbid0IHdvcmsgaW4gc2VydmVyIG1vZGUiDQpydW5UZXN0IChyZWdy ZXNzaW9uLmZlYXR1cmVfdGVzdHMucGdfdXRpbGl0aWVzX2JhY2t1cF9yZXN0b3JlX3Rlc3QuUEdV dGlsaXRpZXNCYWNrdXBGZWF0dXJlVGVzdCkNClRlc3QgZm9yIFhTUyBpbiBCYWNrdXAgYW5kIFJl c3RvcmUgLi4uIHNraXBwZWQgIkN1cnJlbnRseSwgY29uZmlnIGlzIHNldCB0byBzdGFydCBwZ2Fk bWluIGluIHNlcnZlciBtb2RlLiBUaGlzIHRlc3QgZG9lc24ndCBrbm93IHVzZXJuYW1lIGFuZCBw YXNzd29yZCBzbyBkb2Vzbid0IHdvcmsgaW4gc2VydmVyIG1vZGUiDQpydW5UZXN0IChyZWdyZXNz aW9uLmZlYXR1cmVfdGVzdHMucGdfdXRpbGl0aWVzX21haW50ZW5hbmNlX3Rlc3QuUEdVdGlsaXRp ZXNNYWludGVuYW5jZUZlYXR1cmVUZXN0KQ0KVGVzdCBmb3IgUEcgbWFpbnRlbmFuY2U6IGRhdGFi YXNlIC4uLiBza2lwcGVkICJDdXJyZW50bHksIGNvbmZpZyBpcyBzZXQgdG8gc3RhcnQgcGdhZG1p biBpbiBzZXJ2ZXIgbW9kZS4gVGhpcyB0ZXN0IGRvZXNuJ3Qga25vdyB1c2VybmFtZSBhbmQgcGFz c3dvcmQgc28gZG9lc24ndCB3b3JrIGluIHNlcnZlciBtb2RlIg0KcnVuVGVzdCAocmVncmVzc2lv bi5mZWF0dXJlX3Rlc3RzLnBnX3V0aWxpdGllc19tYWludGVuYW5jZV90ZXN0LlBHVXRpbGl0aWVz TWFpbnRlbmFuY2VGZWF0dXJlVGVzdCkNClRlc3QgZm9yIFBHIG1haW50ZW5hbmNlOiB0YWJsZSAu Li4gc2tpcHBlZCAiQ3VycmVudGx5LCBjb25maWcgaXMgc2V0IHRvIHN0YXJ0IHBnYWRtaW4gaW4g c2VydmVyIG1vZGUuIFRoaXMgdGVzdCBkb2Vzbid0IGtub3cgdXNlcm5hbWUgYW5kIHBhc3N3b3Jk IHNvIGRvZXNuJ3Qgd29yayBpbiBzZXJ2ZXIgbW9kZSINCnJ1blRlc3QgKHJlZ3Jlc3Npb24uZmVh dHVyZV90ZXN0cy5wZ191dGlsaXRpZXNfbWFpbnRlbmFuY2VfdGVzdC5QR1V0aWxpdGllc01haW50 ZW5hbmNlRmVhdHVyZVRlc3QpDQpUZXN0IGZvciBYU1MgaW4gbWFpbnRlbmFuY2UgZGlhbG9nIC4u LiBza2lwcGVkICJDdXJyZW50bHksIGNvbmZpZyBpcyBzZXQgdG8gc3RhcnQgcGdhZG1pbiBpbiBz ZXJ2ZXIgbW9kZS4gVGhpcyB0ZXN0IGRvZXNuJ3Qga25vdyB1c2VybmFtZSBhbmQgcGFzc3dvcmQg c28gZG9lc24ndCB3b3JrIGluIHNlcnZlciBtb2RlIg0KcnVuVGVzdCAocmVncmVzc2lvbi5mZWF0 dXJlX3Rlc3RzLnF1ZXJ5X3Rvb2xfYXV0b19jb21wbGV0ZV90ZXN0cy5RdWVyeVRvb2xBdXRvQ29t cGxldGVGZWF0dXJlVGVzdCkNClF1ZXJ5IHRvb2wgYXV0byBjb21wbGV0ZSBmZWF0dXJlIHRlc3Qg Li4uIHNraXBwZWQgIkN1cnJlbnRseSwgY29uZmlnIGlzIHNldCB0byBzdGFydCBwZ2FkbWluIGlu IHNlcnZlciBtb2RlLiBUaGlzIHRlc3QgZG9lc24ndCBrbm93IHVzZXJuYW1lIGFuZCBwYXNzd29y ZCBzbyBkb2Vzbid0IHdvcmsgaW4gc2VydmVyIG1vZGUiDQpydW5UZXN0IChyZWdyZXNzaW9uLmZl YXR1cmVfdGVzdHMucXVlcnlfdG9vbF9qb3VybmV5X3Rlc3QuUXVlcnlUb29sSm91cm5leVRlc3Qp DQpUZXN0cyB0aGUgcGF0aCB0aHJvdWdoIHRoZSBxdWVyeSB0b29sIC4uLiBza2lwcGVkICJDdXJy ZW50bHksIGNvbmZpZyBpcyBzZXQgdG8gc3RhcnQgcGdhZG1pbiBpbiBzZXJ2ZXIgbW9kZS4gVGhp cyB0ZXN0IGRvZXNuJ3Qga25vdyB1c2VybmFtZSBhbmQgcGFzc3dvcmQgc28gZG9lc24ndCB3b3Jr IGluIHNlcnZlciBtb2RlIg0KcnVuVGVzdCAocmVncmVzc2lvbi5mZWF0dXJlX3Rlc3RzLnF1ZXJ5 X3Rvb2xfdGVzdHMuUXVlcnlUb29sRmVhdHVyZVRlc3QpDQpRdWVyeSB0b29sIGZlYXR1cmUgdGVz dCAuLi4gc2tpcHBlZCAiQ3VycmVudGx5LCBjb25maWcgaXMgc2V0IHRvIHN0YXJ0IHBnYWRtaW4g aW4gc2VydmVyIG1vZGUuIFRoaXMgdGVzdCBkb2Vzbid0IGtub3cgdXNlcm5hbWUgYW5kIHBhc3N3 b3JkIHNvIGRvZXNuJ3Qgd29yayBpbiBzZXJ2ZXIgbW9kZSINCnJ1blRlc3QgKHJlZ3Jlc3Npb24u ZmVhdHVyZV90ZXN0cy50YWJsZV9kZGxfZmVhdHVyZV90ZXN0LlRhYmxlRGRsRmVhdHVyZVRlc3Qp DQpUZXN0IHRhYmxlIERETCBnZW5lcmF0aW9uIC4uLiBza2lwcGVkICJDdXJyZW50bHksIGNvbmZp ZyBpcyBzZXQgdG8gc3RhcnQgcGdhZG1pbiBpbiBzZXJ2ZXIgbW9kZS4gVGhpcyB0ZXN0IGRvZXNu J3Qga25vdyB1c2VybmFtZSBhbmQgcGFzc3dvcmQgc28gZG9lc24ndCB3b3JrIGluIHNlcnZlciBt b2RlIg0KcnVuVGVzdCAocmVncmVzc2lvbi5mZWF0dXJlX3Rlc3RzLnRlc3RfY29weV9zcWxfdG9f cXVlcnlfdG9vbC5Db3B5U1FMRmVhdHVyZVRlc3QpDQpUZXN0IGNvcHkgc3FsIHRvIHF1ZXJ5IHRv b2wgLi4uIHNraXBwZWQgIkN1cnJlbnRseSwgY29uZmlnIGlzIHNldCB0byBzdGFydCBwZ2FkbWlu IGluIHNlcnZlciBtb2RlLiBUaGlzIHRlc3QgZG9lc24ndCBrbm93IHVzZXJuYW1lIGFuZCBwYXNz d29yZCBzbyBkb2Vzbid0IHdvcmsgaW4gc2VydmVyIG1vZGUiDQpydW5UZXN0IChyZWdyZXNzaW9u LmZlYXR1cmVfdGVzdHMudmlld19kYXRhX2RtbF9xdWVyaWVzLkNoZWNrRm9yVmlld0RhdGFUZXN0 KQ0KVmFsaWRhdGUgSW5zZXJ0LCBVcGRhdGUgb3BlcmF0aW9ucyBpbiBWaWV3L0VkaXQgZGF0YSB3 aXRoIGdpdmVuIHRlc3QgZGF0YSAuLi4gc2tpcHBlZCAiQ3VycmVudGx5LCBjb25maWcgaXMgc2V0 IHRvIHN0YXJ0IHBnYWRtaW4gaW4gc2VydmVyIG1vZGUuIFRoaXMgdGVzdCBkb2Vzbid0IGtub3cg dXNlcm5hbWUgYW5kIHBhc3N3b3JkIHNvIGRvZXNuJ3Qgd29yayBpbiBzZXJ2ZXIgbW9kZSINCnJ1 blRlc3QgKHJlZ3Jlc3Npb24uZmVhdHVyZV90ZXN0cy54c3NfY2hlY2tzX3BhbmVsc19hbmRfcXVl cnlfdG9vbF90ZXN0LkNoZWNrRm9yWHNzRmVhdHVyZVRlc3QpDQpUZXN0IFhTUyBjaGVjayBmb3Ig cGFuZWxzIGFuZCBxdWVyeSB0b29sIC4uLiBza2lwcGVkICJDdXJyZW50bHksIGNvbmZpZyBpcyBz ZXQgdG8gc3RhcnQgcGdhZG1pbiBpbiBzZXJ2ZXIgbW9kZS4gVGhpcyB0ZXN0IGRvZXNuJ3Qga25v dyB1c2VybmFtZSBhbmQgcGFzc3dvcmQgc28gZG9lc24ndCB3b3JrIGluIHNlcnZlciBtb2RlIg0K cnVuVGVzdCAocmVncmVzc2lvbi5mZWF0dXJlX3Rlc3RzLnhzc19jaGVja3NfcGdhZG1pbl9kZWJ1 Z2dlcl90ZXN0LkNoZWNrRGVidWdnZXJGb3JYc3NGZWF0dXJlVGVzdCkNClRlc3RzIHRvIGNoZWNr IGlmIERlYnVnZ2VyIGlzIHZ1bG5lcmFibGUgdG8gWFNTIC4uLiBza2lwcGVkICJDdXJyZW50bHks IGNvbmZpZyBpcyBzZXQgdG8gc3RhcnQgcGdhZG1pbiBpbiBzZXJ2ZXIgbW9kZS4gVGhpcyB0ZXN0 IGRvZXNuJ3Qga25vdyB1c2VybmFtZSBhbmQgcGFzc3dvcmQgc28gZG9lc24ndCB3b3JrIGluIHNl cnZlciBtb2RlIg0KcnVuVGVzdCAocmVncmVzc2lvbi5mZWF0dXJlX3Rlc3RzLnhzc19jaGVja3Nf cm9sZXNfY29udHJvbF90ZXN0LkNoZWNrUm9sZU1lbWJlcnNoaXBDb250cm9sRmVhdHVyZVRlc3Qp DQpUZXN0cyB0byBjaGVjayBpZiBSb2xlIG1lbWJlcnNoaXAgY29udHJvbCBpcyB2dWxuZXJhYmxl IHRvIFhTUyAuLi4gc2tpcHBlZCAiQ3VycmVudGx5LCBjb25maWcgaXMgc2V0IHRvIHN0YXJ0IHBn YWRtaW4gaW4gc2VydmVyIG1vZGUuIFRoaXMgdGVzdCBkb2Vzbid0IGtub3cgdXNlcm5hbWUgYW5k IHBhc3N3b3JkIHNvIGRvZXNuJ3Qgd29yayBpbiBzZXJ2ZXIgbW9kZSINCg0KLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQ0KUmFuIDE5IHRlc3RzIGluIDAuMDAzcw0KDQpPSyAoc2tpcHBlZD0xOSkNCkRlbGV0ZWQgREIg IFt7J3NlcnZlcl9pZCc6IDEsICdkYl9pZCc6IDI0NTgzLCAnZGJfbmFtZSc6ICd0ZXN0X2RiXzYx MDE5J31dDQoyMDI0LTA0LTI5IDE0OjE2OjI1LDQxMjogRVJST1IJcGdhZG1pbjoJNDAwIEJhZCBS ZXF1ZXN0OiBUaGUgQ1NSRiBzZXNzaW9uIHRva2VuIGlzIG1pc3NpbmcuDQpUcmFjZWJhY2sgKG1v c3QgcmVjZW50IGNhbGwgbGFzdCk6DQogIEZpbGUgIi9ob21lL3VidW50dS9EZXNrdG9wL3BnYWRt aW40L3ZlbnYvbGliL3B5dGhvbjMuMTAvc2l0ZS1wYWNrYWdlcy9mbGFza193dGYvY3NyZi5weSIs IGxpbmUgMjYxLCBpbiBwcm90ZWN0DQogICAgdmFsaWRhdGVfY3NyZihzZWxmLl9nZXRfY3NyZl90 b2tlbigpKQ0KICBGaWxlICIvaG9tZS91YnVudHUvRGVza3RvcC9wZ2FkbWluNC92ZW52L2xpYi9w eXRob24zLjEwL3NpdGUtcGFja2FnZXMvZmxhc2tfd3RmL2NzcmYucHkiLCBsaW5lIDEwMywgaW4g dmFsaWRhdGVfY3NyZg0KICAgIHJhaXNlIFZhbGlkYXRpb25FcnJvcigiVGhlIENTUkYgc2Vzc2lv biB0b2tlbiBpcyBtaXNzaW5nLiIpDQp3dGZvcm1zLnZhbGlkYXRvcnMuVmFsaWRhdGlvbkVycm9y OiBUaGUgQ1NSRiBzZXNzaW9uIHRva2VuIGlzIG1pc3NpbmcuDQoNCkR1cmluZyBoYW5kbGluZyBv ZiB0aGUgYWJvdmUgZXhjZXB0aW9uLCBhbm90aGVyIGV4Y2VwdGlvbiBvY2N1cnJlZDoNCg0KVHJh Y2ViYWNrIChtb3N0IHJlY2VudCBjYWxsIGxhc3QpOg0KICBGaWxlICIvaG9tZS91YnVudHUvRGVz a3RvcC9wZ2FkbWluNC92ZW52L2xpYi9weXRob24zLjEwL3NpdGUtcGFja2FnZXMvZmxhc2svYXBw LnB5IiwgbGluZSA4NzgsIGluIGZ1bGxfZGlzcGF0Y2hfcmVxdWVzdA0KICAgIHJ2ID0gc2VsZi5w cmVwcm9jZXNzX3JlcXVlc3QoKQ0KICBGaWxlICIvaG9tZS91YnVudHUvRGVza3RvcC9wZ2FkbWlu NC92ZW52L2xpYi9weXRob24zLjEwL3NpdGUtcGFja2FnZXMvZmxhc2svYXBwLnB5IiwgbGluZSAx MjUzLCBpbiBwcmVwcm9jZXNzX3JlcXVlc3QNCiAgICBydiA9IHNlbGYuZW5zdXJlX3N5bmMoYmVm b3JlX2Z1bmMpKCkNCiAgRmlsZSAiL2hvbWUvdWJ1bnR1L0Rlc2t0b3AvcGdhZG1pbjQvdmVudi9s aWIvcHl0aG9uMy4xMC9zaXRlLXBhY2thZ2VzL2ZsYXNrX3d0Zi9jc3JmLnB5IiwgbGluZSAyMjks IGluIGNzcmZfcHJvdGVjdA0KICAgIHNlbGYucHJvdGVjdCgpDQogIEZpbGUgIi9ob21lL3VidW50 dS9EZXNrdG9wL3BnYWRtaW40L3ZlbnYvbGliL3B5dGhvbjMuMTAvc2l0ZS1wYWNrYWdlcy9mbGFz a193dGYvY3NyZi5weSIsIGxpbmUgMjY0LCBpbiBwcm90ZWN0DQogICAgc2VsZi5fZXJyb3JfcmVz cG9uc2UoZS5hcmdzWzBdKQ0KICBGaWxlICIvaG9tZS91YnVudHUvRGVza3RvcC9wZ2FkbWluNC92 ZW52L2xpYi9weXRob24zLjEwL3NpdGUtcGFja2FnZXMvZmxhc2tfd3RmL2NzcmYucHkiLCBsaW5l IDMwNywgaW4gX2Vycm9yX3Jlc3BvbnNlDQogICAgcmFpc2UgQ1NSRkVycm9yKHJlYXNvbikNCmZs YXNrX3d0Zi5jc3JmLkNTUkZFcnJvcjogNDAwIEJhZCBSZXF1ZXN0OiBUaGUgQ1NSRiBzZXNzaW9u IHRva2VuIGlzIG1pc3NpbmcuDQpEZWxldGVkIERhdGFiYXNlLCBSb2xlcywgVGFibGVzcGFjZSBm b3IgUG9zdGdyZVNRTCAxNg0KDQo9PT09PT09PT09PT09Q29tcGxldGVkIHRoZSB0ZXN0IGNhc2Vz IGZvciAnUG9zdGdyZVNRTCAxNic9PT09PT09PT09PT09DQoNCj09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClRlc3Qg UmVzdWx0IFN1bW1hcnkNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NCg0KUG9zdGdyZVNRTCAxNjoNCg0KCTAgdGVz dHMgcGFzc2VkDQoJMCB0ZXN0cyBmYWlsZWQNCgkxOSB0ZXN0cyBza2lwcGVkOg0KCQlCcm93c2Vy VG9vbEJhckZlYXR1cmVUZXN0IChCcm93c2VyIHRvb2wgYmFyIGZlYXR1cmUgdGVzdCkNCgkJQ29w eVNlbGVjdGVkUXVlcnlSZXN1bHRzRmVhdHVyZVRlc3QgKENvcHkgcm93cywgY29sdW1uIHVzaW5n IGJ1dHRvbiBhbmQga2V5Ym9hcmQgc2hvcnRjdXQpDQoJCUNoZWNrRmlsZU1hbmFnZXJGZWF0dXJl VGVzdCAoRmlsZSBtYW5hZ2VyIGZlYXR1cmUgdGVzdCkNCgkJS2V5Ym9hcmRTaG9ydGN1dEZlYXR1 cmVUZXN0IChUZXN0IGZvciBrZXlib2FyZCBzaG9ydGN1dCkNCgkJUEdEYXRheXBlRmVhdHVyZVRl c3QgKFRlc3QgY2hlY2tzIGZvciBQRyBkYXRhLXR5cGVzIG91dHB1dCkNCgkJUEdVdGlsaXRpZXNC YWNrdXBGZWF0dXJlVGVzdCAoVGVzdCBmb3IgUEcgdXRpbGl0aWVzIC0gQmFja3VwIGFuZCBSZXN0 b3JlLA0KCQkJCQlUZXN0IGZvciBYU1MgaW4gQmFja3VwIGFuZCBSZXN0b3JlKQ0KCQlQR1V0aWxp dGllc01haW50ZW5hbmNlRmVhdHVyZVRlc3QgKFRlc3QgZm9yIFBHIG1haW50ZW5hbmNlOiBkYXRh YmFzZSwNCgkJCQkJVGVzdCBmb3IgUEcgbWFpbnRlbmFuY2U6IHRhYmxlLA0KCQkJCQlUZXN0IGZv ciBYU1MgaW4gbWFpbnRlbmFuY2UgZGlhbG9nKQ0KCQlRdWVyeVRvb2xBdXRvQ29tcGxldGVGZWF0 dXJlVGVzdCAoUXVlcnkgdG9vbCBhdXRvIGNvbXBsZXRlIGZlYXR1cmUgdGVzdCkNCgkJUXVlcnlU b29sSm91cm5leVRlc3QgKFRlc3RzIHRoZSBwYXRoIHRocm91Z2ggdGhlIHF1ZXJ5IHRvb2wpDQoJ CVF1ZXJ5VG9vbEZlYXR1cmVUZXN0IChRdWVyeSB0b29sIGZlYXR1cmUgdGVzdCkNCgkJVGFibGVE ZGxGZWF0dXJlVGVzdCAoVGVzdCB0YWJsZSBEREwgZ2VuZXJhdGlvbikNCgkJQ29weVNRTEZlYXR1 cmVUZXN0IChUZXN0IGNvcHkgc3FsIHRvIHF1ZXJ5IHRvb2wpDQoJCUNoZWNrRm9yVmlld0RhdGFU ZXN0IChWYWxpZGF0ZSBJbnNlcnQsIFVwZGF0ZSBvcGVyYXRpb25zIGluIFZpZXcvRWRpdCBkYXRh IHdpdGggZ2l2ZW4gdGVzdCBkYXRhKQ0KCQlDaGVja0Zvclhzc0ZlYXR1cmVUZXN0IChUZXN0IFhT UyBjaGVjayBmb3IgcGFuZWxzIGFuZCBxdWVyeSB0b29sKQ0KCQlDaGVja0RlYnVnZ2VyRm9yWHNz RmVhdHVyZVRlc3QgKFRlc3RzIHRvIGNoZWNrIGlmIERlYnVnZ2VyIGlzIHZ1bG5lcmFibGUgdG8g WFNTKQ0KCQlDaGVja1JvbGVNZW1iZXJzaGlwQ29udHJvbEZlYXR1cmVUZXN0IChUZXN0cyB0byBj aGVjayBpZiBSb2xlIG1lbWJlcnNoaXAgY29udHJvbCBpcyB2dWxuZXJhYmxlIHRvIFhTUykNCg0K PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQ0KDQpQbGVhc2UgY2hlY2sgb3V0cHV0IGluIGZpbGU6IC9ob21lL3VidW50 dS9EZXNrdG9wL3BnYWRtaW40L3dlYi9yZWdyZXNzaW9uL3JlZ3Jlc3Npb24ubG9nDQoNCih2ZW52 KSByb290QHVidW50dS0yMjovaG9tZS91YnVudHUvRGVza3RvcC9wZ2FkbWluNC93ZWIvcmVncmVz c2lvbiMgDQoNCg== --000000000000fd707e061738ef75--