From do-not-reply at jboss.com Mon Nov 1 05:50:23 2010 Content-Type: multipart/mixed; boundary="===============1616895714020607777==" MIME-Version: 1.0 From: Kabir Khan To: jboss-dev-forums at lists.jboss.org Subject: [jboss-dev-forums] [JBoss AS7 Development] - Re: AS 7 demos Date: Mon, 01 Nov 2010 05:50:23 -0400 Message-ID: <2-567221-3-2082-1287504190802-2-569117-3-2082-1288605015798.jivesbs.jivemailuser@http://community.jboss.org> In-Reply-To: 2-567221-3-2082-1287504190802-2-568275-3-2082-1288026753073.jivesbs.jivemailuser@http://community.jboss.org --===============1616895714020607777== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Kabir Khan [http://community.jboss.org/people/kabir.khan%40jboss.com] creat= ed the discussion "Re: AS 7 demos" To view the discussion, visit: http://community.jboss.org/message/569117#56= 9117 -------------------------------------------------------------- I am trying the following but am seeing 'no ds injected'. Should this work = at this stage? *package* org.jboss.as.demos.warwithds.archive; *import* java.io.IOException; *import* java.io.Writer; *import* java.sql.Connection; *import* java.sql.ResultSet; *import* javax.annotation.Resource; *import* javax.naming.InitialContext; *import* javax.servlet.ServletException; *import* javax.servlet.annotation.WebServlet; *import* javax.servlet.http.HttpServlet; *import* javax.servlet.http.HttpServletRequest; *import* javax.servlet.http.HttpServletResponse; *import* javax.sql.DataSource; *import* org.jboss.logging.Logger; /** * * *@author* Kabir Khan * *@version* $Revision: 1.1 $ */ @WebServlet(name=3D"SimpleServlet", urlPatterns=3D{"/simple", "/other"}) *public* *class* SimpleServlet *extends* HttpServlet { *private* *static* *final* *long* +serialVersionUID+ =3D -25793041861670636= 51L; =C2=A0=C2=A0=C2=A0 Logger log =3D Logger.+getLogger+(SimpleServlet.*class*.= getName()); =C2=A0=C2=A0=C2=A0 @Resource(mappedName=3D"java:/H2DS") =C2=A0=C2=A0=C2=A0 DataSource ds; =C2=A0=C2=A0=C2=A0 @Override *protected* *void* doGet(HttpServletRequest req, HttpServletResponse resp) *throws* ServletException, IOException { *if* (ds =3D=3D *null*) { =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 System.+= out+.println("No ds injected"); *try* { =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 ds =3D (DataSource)*new* InitialContext().lookup("java:/H2D= S"); =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } *catch= * (Exception e) { *throw* *new* ServletException("Could not find ds", e); =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 String result =3D "Failure"; *try* { =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Connecti= on conn =3D ds.getConnection(); =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ResultSe= t rs =3D conn.prepareStatement("select 1").executeQuery(); *if* (rs.next()) { =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 result =3D "Success"; =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } *catch* (Exception e) { *throw* *new* ServletException(e); =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 } =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 Writer writer =3D resp.getWriter= (); =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 writer.write("Simple Servlet dat= asource " + result); =C2=A0=C2=A0=C2=A0 } =C2=A0=C2=A0=C2=A0 @Override *protected* *void* doPost(HttpServletRequest req, HttpServletResponse resp) *throws* ServletException, IOException { *this*.doGet(req, resp); =C2=A0=C2=A0=C2=A0 } } -------------------------------------------------------------- Reply to this message by going to Community [http://community.jboss.org/message/569117#569117] Start a new discussion in JBoss AS7 Development at Community [http://community.jboss.org/choose-container!input.jspa?contentType=3D1&con= tainerType=3D14&container=3D2225] --===============1616895714020607777== Content-Type: text/html MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.html" PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMCBUcmFuc2l0aW9uYWwv L0VOIj4KPGh0bWw+Cjxib2R5IGxpbms9IiMzNTU0OTEiIGFsaW5rPSIjNDI2MmExIiB2bGluaz0i IzM1NTQ5MSIgc3R5bGU9ImJhY2tncm91bmQ6ICNlMmUyZTI7IG1hcmdpbjogMDsgcGFkZGluZzog MjBweDsiPgoKPGRpdj4KCTx0YWJsZSBjZWxscGFkZGluZz0iMCIgYmdjb2xvcj0iI0ZGRkZGRiIg Ym9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgc3R5bGU9ImJvcmRlcjogMXB4IHNvbGlkICNkYWRh ZGE7IG1hcmdpbi1ib3R0b206IDMwcHg7IHdpZHRoOiAxMDAlOyAtbW96LWJvcmRlci1yYWRpdXM6 IDZweDsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA2cHg7Ij4KCQk8dGJvZHk+CgkJCTx0cj4KCgkJ CQk8dGQ+CgoJCQkJCTx0YWJsZSBib3JkZXI9IjAiIGNlbGxwYWRkaW5nPSIwIiBjZWxsc3BhY2lu Zz0iMCIgYmdjb2xvcj0iI0ZGRkZGRiIgc3R5bGU9ImJvcmRlcjogc29saWQgMnB4ICNjY2M7IGJh Y2tncm91bmQ6ICNkYWRhZGE7IHdpZHRoOiAxMDAlOyAtbW96LWJvcmRlci1yYWRpdXM6IDZweDsg LXdlYmtpdC1ib3JkZXItcmFkaXVzOiA2cHg7Ij4KCQkJCQkJPHRib2R5PgoJCQkJCQkJPHRyPgoJ CQkJCQkJCTx0ZCBiZ2NvbG9yPSIjMDAwMDAwIiB2YWxpZ249Im1pZGRsZSIgaGVpZ2h0PSI1OHB4 IiBzdHlsZT0iYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7IHBhZGRpbmc6IDIwcHg7IC1t b3otYm9yZGVyLXJhZGl1cy10b3BsZWZ0OiAzcHg7IC1tb3otYm9yZGVyLXJhZGl1cy10b3ByaWdo dDogM3B4OyAtd2Via2l0LWJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1cHg7IC13ZWJraXQtYm9y ZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4OyI+CgkJCQkJCQkJCTxoMSBzdHlsZT0iY29sb3I6ICMz MzMzMzM7IGZvbnQ6IGJvbGQgMjJweCBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmOyBtYXJn aW46IDA7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7Ij4KCQkJCQkJCQkJPCEtLSBUbyBoYXZl IGEgaGVhZGVyIGltYWdlL2xvZ28gcmVwbGFjZSB0aGUgbmFtZSBiZWxvdyB3aXRoIHlvdXIgaW1n IHRhZyAtLT4KCQkJCQkJCQkJPCEtLSBFbWFpbCBjbGllbnRzIHdpbGwgcmVuZGVyIHRoZSBpbWFn ZXMgd2hlbiB0aGUgbWVzc2FnZSBpcyByZWFkIHNvIGFueSBpbWFnZSAtLT4KCQkJCQkJCQkJPCEt LSBtdXN0IGJlIG1hZGUgYXZhaWxhYmxlIG9uIGEgcHVibGljIHNlcnZlciwgc28gdGhhdCBhbGwg cmVjaXBpZW50cyBjYW4gbG9hZCB0aGUgaW1hZ2UuIC0tPgoJCQkJCQkJCQk8YSBocmVmPSJodHRw Oi8vY29tbXVuaXR5Lmpib3NzLm9yZy9pbmRleC5qc3BhIiBzdHlsZT0idGV4dC1kZWNvcmF0aW9u OiBub25lOyBjb2xvcjogI0UxRTFFMSI+SkJvc3MgQ29tbXVuaXR5PC9hPjwvaDE+CgkJCQkJCQkJ PC90ZD4KCgkJCQkJCQk8L3RyPgoJCQkJCQkJPHRyPgoJCQkJCQkJCTx0ZCBiZ2NvbG9yPSIjRkZG RkZGIiBzdHlsZT0iZm9udDogbm9ybWFsIDEycHggQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJp ZjsgY29sb3I6IzMzMzMzMzsgcGFkZGluZzogMjBweDsgIC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0 b21sZWZ0OiA0cHg7IC1tb3otYm9yZGVyLXJhZGl1cy1ib3R0b21yaWdodDogNHB4OyAtd2Via2l0 LWJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA1cHg7IC13ZWJraXQtYm9yZGVyLWJvdHRvbS1s ZWZ0LXJhZGl1czogNXB4OyI+PGgzIHN0eWxlPSJtYXJnaW46IDEwcHggMCA1cHg7IGZvbnQtc2l6 ZTogMTdweDsgZm9udC13ZWlnaHQ6IG5vcm1hbDsiPgogICAgUmU6IEFTIDcgZGVtb3MKPC9oMz4K PHNwYW4gc3R5bGU9Im1hcmdpbi1ib3R0b206IDEwcHg7Ij4KICAgIGNyZWF0ZWQgYnkgPGEgaHJl Zj0iaHR0cDovL2NvbW11bml0eS5qYm9zcy5vcmcvcGVvcGxlL2thYmlyLmtoYW4lNDBqYm9zcy5j b20iPkthYmlyIEtoYW48L2E+IGluIDxpPkpCb3NzIEFTNyBEZXZlbG9wbWVudDwvaT4gLSA8YSBo cmVmPSJodHRwOi8vY29tbXVuaXR5Lmpib3NzLm9yZy9tZXNzYWdlLzU2OTExNyM1NjkxMTciPlZp ZXcgdGhlIGZ1bGwgZGlzY3Vzc2lvbjwvYT4KPC9zcGFuPgo8aHIgc3R5bGU9Im1hcmdpbjogMjBw eCAwOyBib3JkZXI6IG5vbmU7IGJhY2tncm91bmQtY29sb3I6ICNkYWRhZGE7IGhlaWdodDogMXB4 OyI+Cgo8ZGl2IGNsYXNzPSJqaXZlLXJlbmRlcmVkLWNvbnRlbnQiPjxwPkkgYW0gdHJ5aW5nIHRo ZSBmb2xsb3dpbmcgYnV0IGFtIHNlZWluZyAnbm8gZHMgaW5qZWN0ZWQnLiBTaG91bGQgdGhpcyB3 b3JrIGF0IHRoaXMgc3RhZ2U/PC9wPjxwIHN0eWxlPSJtaW4taGVpZ2h0OiA4cHQ7IGhlaWdodDog OHB0OyBwYWRkaW5nOiAwcHg7Ij4mIzE2MDs8L3A+PHAgc3R5bGU9Im1hcmdpbjogMC4wcHggMC4w cHggMC4wcHggMC4wcHg7IGZvbnQ6IDEwLjBweCBDb3VyaWVyOyI+PHN0cm9uZz5wYWNrYWdlPC9z dHJvbmc+IG9yZy5qYm9zcy5hcy5kZW1vcy53YXJ3aXRoZHMuYXJjaGl2ZTs8L3A+PHAgc3R5bGU9 Im1pbi1oZWlnaHQ6IDhwdDsgaGVpZ2h0OiA4cHQ7IHBhZGRpbmc6IDBweDsiPiYjMTYwOzwvcD48 cCBzdHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAwLjBweDsgZm9udDogMTAuMHB4IENv dXJpZXI7Ij48c3Ryb25nPmltcG9ydDwvc3Ryb25nPiBqYXZhLmlvLklPRXhjZXB0aW9uOzwvcD48 cCBzdHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAwLjBweDsgZm9udDogMTAuMHB4IENv dXJpZXI7Ij48c3Ryb25nPmltcG9ydDwvc3Ryb25nPiBqYXZhLmlvLldyaXRlcjs8L3A+PHAgc3R5 bGU9Im1hcmdpbjogMC4wcHggMC4wcHggMC4wcHggMC4wcHg7IGZvbnQ6IDEwLjBweCBDb3VyaWVy OyI+PHN0cm9uZz5pbXBvcnQ8L3N0cm9uZz4gamF2YS5zcWwuQ29ubmVjdGlvbjs8L3A+PHAgc3R5 bGU9Im1hcmdpbjogMC4wcHggMC4wcHggMC4wcHggMC4wcHg7IGZvbnQ6IDEwLjBweCBDb3VyaWVy OyI+PHN0cm9uZz5pbXBvcnQ8L3N0cm9uZz4gamF2YS5zcWwuUmVzdWx0U2V0OzwvcD48cCBzdHls ZT0ibWluLWhlaWdodDogOHB0OyBoZWlnaHQ6IDhwdDsgcGFkZGluZzogMHB4OyI+JiMxNjA7PC9w PjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4wcHgg Q291cmllcjsiPjxzdHJvbmc+aW1wb3J0PC9zdHJvbmc+IGphdmF4LmFubm90YXRpb24uUmVzb3Vy Y2U7PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBmb250OiAx MC4wcHggQ291cmllcjsiPjxzdHJvbmc+aW1wb3J0PC9zdHJvbmc+IGphdmF4Lm5hbWluZy5Jbml0 aWFsQ29udGV4dDs8L3A+PHAgc3R5bGU9Im1hcmdpbjogMC4wcHggMC4wcHggMC4wcHggMC4wcHg7 IGZvbnQ6IDEwLjBweCBDb3VyaWVyOyI+PHN0cm9uZz5pbXBvcnQ8L3N0cm9uZz4gamF2YXguc2Vy dmxldC5TZXJ2bGV0RXhjZXB0aW9uOzwvcD48cCBzdHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAw LjBweCAwLjBweDsgZm9udDogMTAuMHB4IENvdXJpZXI7Ij48c3Ryb25nPmltcG9ydDwvc3Ryb25n PiBqYXZheC5zZXJ2bGV0LmFubm90YXRpb24uV2ViU2VydmxldDs8L3A+PHAgc3R5bGU9Im1hcmdp bjogMC4wcHggMC4wcHggMC4wcHggMC4wcHg7IGZvbnQ6IDEwLjBweCBDb3VyaWVyOyI+PHN0cm9u Zz5pbXBvcnQ8L3N0cm9uZz4gamF2YXguc2VydmxldC5odHRwLkh0dHBTZXJ2bGV0OzwvcD48cCBz dHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAwLjBweDsgZm9udDogMTAuMHB4IENvdXJp ZXI7Ij48c3Ryb25nPmltcG9ydDwvc3Ryb25nPiBqYXZheC5zZXJ2bGV0Lmh0dHAuSHR0cFNlcnZs ZXRSZXF1ZXN0OzwvcD48cCBzdHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAwLjBweDsg Zm9udDogMTAuMHB4IENvdXJpZXI7Ij48c3Ryb25nPmltcG9ydDwvc3Ryb25nPiBqYXZheC5zZXJ2 bGV0Lmh0dHAuSHR0cFNlcnZsZXRSZXNwb25zZTs8L3A+PHAgc3R5bGU9Im1hcmdpbjogMC4wcHgg MC4wcHggMC4wcHggMC4wcHg7IGZvbnQ6IDEwLjBweCBDb3VyaWVyOyI+PHN0cm9uZz5pbXBvcnQ8 L3N0cm9uZz4gamF2YXguc3FsLkRhdGFTb3VyY2U7PC9wPjxwIHN0eWxlPSJtaW4taGVpZ2h0OiA4 cHQ7IGhlaWdodDogOHB0OyBwYWRkaW5nOiAwcHg7Ij4mIzE2MDs8L3A+PHAgc3R5bGU9Im1hcmdp bjogMC4wcHggMC4wcHggMC4wcHggMC4wcHg7IGZvbnQ6IDEwLjBweCBDb3VyaWVyOyI+PHN0cm9u Zz5pbXBvcnQ8L3N0cm9uZz4gb3JnLmpib3NzLmxvZ2dpbmcuTG9nZ2VyOzwvcD48cCBzdHlsZT0i bWluLWhlaWdodDogOHB0OyBoZWlnaHQ6IDhwdDsgcGFkZGluZzogMHB4OyI+JiMxNjA7PC9wPjxw IHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4wcHggQ291 cmllcjsgY29sb3I6ICM1MjZhZDE7Ij4vKio8L3A+PHAgc3R5bGU9Im1hcmdpbjogMC4wcHggMC4w cHggMC4wcHggMC4wcHg7IGZvbnQ6IDEwLjBweCBDb3VyaWVyOyBjb2xvcjogIzUyNmFkMTsiPiAq PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4w cHggQ291cmllcjsgY29sb3I6ICM1MjZhZDE7Ij4gKiA8c3Ryb25nPkBhdXRob3I8L3N0cm9uZz48 c3Bhbj4gJmx0O2EgaHJlZj0iPC9zcGFuPjxhIGNsYXNzPSJqaXZlLWxpbmstZW1haWwtc21hbGwi IGhyZWY9Im1haWx0bzprYWJpci5raGFuQGpib3NzLmNvbSIgdGFyZ2V0PSJfYmxhbmsiPmthYmly LmtoYW5AamJvc3MuY29tPC9hPjxzcGFuPiImZ3Q7S2FiaXIgS2hhbiZsdDsvYSZndDs8L3NwYW4+ PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4w cHggQ291cmllcjsgY29sb3I6ICM1MjZhZDE7Ij4gKiA8c3Ryb25nPkB2ZXJzaW9uPC9zdHJvbmc+ ICRSZXZpc2lvbjogMS4xICQ8L3A+PHAgc3R5bGU9Im1hcmdpbjogMC4wcHggMC4wcHggMC4wcHgg MC4wcHg7IGZvbnQ6IDEwLjBweCBDb3VyaWVyOyBjb2xvcjogIzUyNmFkMTsiPiAqLzwvcD48cCBz dHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAwLjBweDsgZm9udDogMTAuMHB4IENvdXJp ZXI7IGNvbG9yOiAjNWIwMGZmOyI+QFdlYlNlcnZsZXQobmFtZT0iU2ltcGxlU2VydmxldCIsIHVy bFBhdHRlcm5zPXsiL3NpbXBsZSIsICIvb3RoZXIifSk8L3A+PHAgc3R5bGU9Im1hcmdpbjogMC4w cHggMC4wcHggMC4wcHggMC4wcHg7IGZvbnQ6IDEwLjBweCBDb3VyaWVyOyI+PHN0cm9uZz5wdWJs aWM8L3N0cm9uZz4gPHN0cm9uZz5jbGFzczwvc3Ryb25nPiBTaW1wbGVTZXJ2bGV0IDxzdHJvbmc+ ZXh0ZW5kczwvc3Ryb25nPiBIdHRwU2VydmxldCB7PC9wPjxwIHN0eWxlPSJtaW4taGVpZ2h0OiA4 cHQ7IGhlaWdodDogOHB0OyBwYWRkaW5nOiAwcHg7Ij4mIzE2MDs8L3A+PHAgc3R5bGU9Im1hcmdp bjogMC4wcHggMC4wcHggMC4wcHggMC4wcHg7IGZvbnQ6IDEwLjBweCBDb3VyaWVyOyI+JiMxNjA7 JiMxNjA7JiMxNjA7IDxzdHJvbmc+cHJpdmF0ZTwvc3Ryb25nPiA8c3Ryb25nPnN0YXRpYzwvc3Ry b25nPiA8c3Ryb25nPmZpbmFsPC9zdHJvbmc+IDxzdHJvbmc+bG9uZzwvc3Ryb25nPiA8ZW0+c2Vy aWFsVmVyc2lvblVJRDwvZW0+ID0gLTI1NzkzMDQxODYxNjcwNjM2NTFMOzwvcD48cCBzdHlsZT0i bWluLWhlaWdodDogOHB0OyBoZWlnaHQ6IDhwdDsgcGFkZGluZzogMHB4OyI+JiMxNjA7PC9wPjxw IHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4wcHggQ291 cmllcjsiPiYjMTYwOyYjMTYwOyYjMTYwOyBMb2dnZXIgbG9nID0gTG9nZ2VyLjxlbT5nZXRMb2dn ZXI8L2VtPihTaW1wbGVTZXJ2bGV0LjxzdHJvbmc+Y2xhc3M8L3N0cm9uZz4uZ2V0TmFtZSgpKTs8 L3A+PHAgc3R5bGU9Im1pbi1oZWlnaHQ6IDhwdDsgaGVpZ2h0OiA4cHQ7IHBhZGRpbmc6IDBweDsi PiYjMTYwOzwvcD48cCBzdHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAwLjBweDsgZm9u dDogMTAuMHB4IENvdXJpZXI7Ij4mIzE2MDsmIzE2MDsmIzE2MDsgQFJlc291cmNlKG1hcHBlZE5h bWU9ImphdmE6L0gyRFMiKTwvcD48cCBzdHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAw LjBweDsgZm9udDogMTAuMHB4IENvdXJpZXI7Ij4mIzE2MDsmIzE2MDsmIzE2MDsgRGF0YVNvdXJj ZSBkczs8L3A+PHAgc3R5bGU9Im1pbi1oZWlnaHQ6IDhwdDsgaGVpZ2h0OiA4cHQ7IHBhZGRpbmc6 IDBweDsiPiYjMTYwOzwvcD48cCBzdHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAwLjBw eDsgZm9udDogMTAuMHB4IENvdXJpZXI7IGNvbG9yOiAjNzc3Nzc3OyI+JiMxNjA7JiMxNjA7JiMx NjA7IEBPdmVycmlkZTwvcD48cCBzdHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAwLjBw eDsgZm9udDogMTAuMHB4IENvdXJpZXI7Ij4mIzE2MDsmIzE2MDsmIzE2MDsgPHN0cm9uZz5wcm90 ZWN0ZWQ8L3N0cm9uZz4gPHN0cm9uZz52b2lkPC9zdHJvbmc+IGRvR2V0KEh0dHBTZXJ2bGV0UmVx dWVzdCByZXEsIEh0dHBTZXJ2bGV0UmVzcG9uc2UgcmVzcCk8L3A+PHAgc3R5bGU9Im1hcmdpbjog MC4wcHggMC4wcHggMC4wcHggMC4wcHg7IGZvbnQ6IDEwLjBweCBDb3VyaWVyOyI+JiMxNjA7JiMx NjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7 IDxzdHJvbmc+dGhyb3dzPC9zdHJvbmc+IFNlcnZsZXRFeGNlcHRpb24sIElPRXhjZXB0aW9uIHs8 L3A+PHAgc3R5bGU9Im1pbi1oZWlnaHQ6IDhwdDsgaGVpZ2h0OiA4cHQ7IHBhZGRpbmc6IDBweDsi PiYjMTYwOzwvcD48cCBzdHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAwLjBweDsgZm9u dDogMTAuMHB4IENvdXJpZXI7Ij4mIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsm IzE2MDsgPHN0cm9uZz5pZjwvc3Ryb25nPiAoZHMgPT0gPHN0cm9uZz5udWxsPC9zdHJvbmc+KSB7 PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4w cHggQ291cmllcjsiPiYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYj MTYwOyYjMTYwOyYjMTYwOyYjMTYwOyBTeXN0ZW0uPGVtPm91dDwvZW0+LnByaW50bG4oIk5vIGRz IGluamVjdGVkIik7PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4 OyBmb250OiAxMC4wcHggQ291cmllcjsiPiYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYj MTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyA8c3Ryb25nPnRyeTwvc3Ryb25nPiB7 PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4w cHggQ291cmllcjsiPiYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYj MTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyBkcyA9IChEYXRh U291cmNlKTxzdHJvbmc+bmV3PC9zdHJvbmc+IEluaXRpYWxDb250ZXh0KCkubG9va3VwKCJqYXZh Oi9IMkRTIik7PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBm b250OiAxMC4wcHggQ291cmllcjsiPiYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYw OyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyB9IDxzdHJvbmc+Y2F0Y2g8L3N0cm9uZz4g KEV4Y2VwdGlvbiBlKSB7PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAu MHB4OyBmb250OiAxMC4wcHggQ291cmllcjsiPiYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYw OyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYj MTYwOyA8c3Ryb25nPnRocm93PC9zdHJvbmc+IDxzdHJvbmc+bmV3PC9zdHJvbmc+IFNlcnZsZXRF eGNlcHRpb24oIkNvdWxkIG5vdCBmaW5kIGRzIiwgZSk7PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAu MHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4wcHggQ291cmllcjsiPiYjMTYwOyYjMTYw OyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyB9 PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4w cHggQ291cmllcjsiPiYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyB9 PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4w cHggQ291cmllcjsiPiYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyBT dHJpbmcgcmVzdWx0ID0gIkZhaWx1cmUiOzwvcD48cCBzdHlsZT0ibWFyZ2luOiAwLjBweCAwLjBw eCAwLjBweCAwLjBweDsgZm9udDogMTAuMHB4IENvdXJpZXI7Ij4mIzE2MDsmIzE2MDsmIzE2MDsm IzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsgPHN0cm9uZz50cnk8L3N0cm9uZz4gezwvcD48cCBzdHls ZT0ibWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAwLjBweDsgZm9udDogMTAuMHB4IENvdXJpZXI7 Ij4mIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsm IzE2MDsmIzE2MDsgQ29ubmVjdGlvbiBjb25uID0gZHMuZ2V0Q29ubmVjdGlvbigpOzwvcD48cCBz dHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAwLjBweDsgZm9udDogMTAuMHB4IENvdXJp ZXI7Ij4mIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2 MDsmIzE2MDsmIzE2MDsgUmVzdWx0U2V0IHJzID0gY29ubi5wcmVwYXJlU3RhdGVtZW50KCJzZWxl Y3QgMSIpLmV4ZWN1dGVRdWVyeSgpOzwvcD48cCBzdHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAw LjBweCAwLjBweDsgZm9udDogMTAuMHB4IENvdXJpZXI7Ij4mIzE2MDsmIzE2MDsmIzE2MDsmIzE2 MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsgPHN0cm9uZz5pZjwv c3Ryb25nPiAocnMubmV4dCgpKSB7PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAu MHB4IDAuMHB4OyBmb250OiAxMC4wcHggQ291cmllcjsiPiYjMTYwOyYjMTYwOyYjMTYwOyYjMTYw OyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYj MTYwOyYjMTYwOyByZXN1bHQgPSAiU3VjY2VzcyI7PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4 IDAuMHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4wcHggQ291cmllcjsiPiYjMTYwOyYjMTYwOyYj MTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyB9PC9w PjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4wcHgg Q291cmllcjsiPiYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyB9IDxz dHJvbmc+Y2F0Y2g8L3N0cm9uZz4gKEV4Y2VwdGlvbiBlKSB7PC9wPjxwIHN0eWxlPSJtYXJnaW46 IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4wcHggQ291cmllcjsiPiYjMTYwOyYj MTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYw OyA8c3Ryb25nPnRocm93PC9zdHJvbmc+IDxzdHJvbmc+bmV3PC9zdHJvbmc+IFNlcnZsZXRFeGNl cHRpb24oZSk7PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAuMHB4IDAuMHB4IDAuMHB4OyBm b250OiAxMC4wcHggQ291cmllcjsiPiYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyYjMTYw OyYjMTYwOyB9PC9wPjxwIHN0eWxlPSJtaW4taGVpZ2h0OiA4cHQ7IGhlaWdodDogOHB0OyBwYWRk aW5nOiAwcHg7Ij4mIzE2MDs8L3A+PHAgc3R5bGU9Im1hcmdpbjogMC4wcHggMC4wcHggMC4wcHgg MC4wcHg7IGZvbnQ6IDEwLjBweCBDb3VyaWVyOyI+JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMx NjA7JiMxNjA7JiMxNjA7IFdyaXRlciB3cml0ZXIgPSByZXNwLmdldFdyaXRlcigpOzwvcD48cCBz dHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAwLjBweDsgZm9udDogMTAuMHB4IENvdXJp ZXI7Ij4mIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsmIzE2MDsgd3JpdGVyLndy aXRlKCJTaW1wbGUgU2VydmxldCBkYXRhc291cmNlICIgKyByZXN1bHQpOzwvcD48cCBzdHlsZT0i bWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAwLjBweDsgZm9udDogMTAuMHB4IENvdXJpZXI7Ij4m IzE2MDsmIzE2MDsmIzE2MDsgfTwvcD48cCBzdHlsZT0ibWluLWhlaWdodDogOHB0OyBoZWlnaHQ6 IDhwdDsgcGFkZGluZzogMHB4OyI+JiMxNjA7PC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAu MHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4wcHggQ291cmllcjsgY29sb3I6ICM3Nzc3Nzc7Ij4m IzE2MDsmIzE2MDsmIzE2MDsgQE92ZXJyaWRlPC9wPjxwIHN0eWxlPSJtYXJnaW46IDAuMHB4IDAu MHB4IDAuMHB4IDAuMHB4OyBmb250OiAxMC4wcHggQ291cmllcjsiPiYjMTYwOyYjMTYwOyYjMTYw OyA8c3Ryb25nPnByb3RlY3RlZDwvc3Ryb25nPiA8c3Ryb25nPnZvaWQ8L3N0cm9uZz4gZG9Qb3N0 KEh0dHBTZXJ2bGV0UmVxdWVzdCByZXEsIEh0dHBTZXJ2bGV0UmVzcG9uc2UgcmVzcCk8L3A+PHAg c3R5bGU9Im1hcmdpbjogMC4wcHggMC4wcHggMC4wcHggMC4wcHg7IGZvbnQ6IDEwLjBweCBDb3Vy aWVyOyI+JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMx NjA7JiMxNjA7JiMxNjA7IDxzdHJvbmc+dGhyb3dzPC9zdHJvbmc+IFNlcnZsZXRFeGNlcHRpb24s IElPRXhjZXB0aW9uIHs8L3A+PHAgc3R5bGU9Im1hcmdpbjogMC4wcHggMC4wcHggMC4wcHggMC4w cHg7IGZvbnQ6IDEwLjBweCBDb3VyaWVyOyI+JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7 JiMxNjA7JiMxNjA7IDxzdHJvbmc+dGhpczwvc3Ryb25nPi5kb0dldChyZXEsIHJlc3ApOzwvcD48 cCBzdHlsZT0ibWFyZ2luOiAwLjBweCAwLjBweCAwLjBweCAwLjBweDsgZm9udDogMTAuMHB4IENv dXJpZXI7Ij4mIzE2MDsmIzE2MDsmIzE2MDsgfTwvcD48cCBzdHlsZT0ibWFyZ2luOiAwLjBweCAw LjBweCAwLjBweCAwLjBweDsgZm9udDogMTAuMHB4IENvdXJpZXI7Ij59PC9wPjxkaXY+IDwvZGl2 PjwvZGl2PgoKPGRpdiBzdHlsZT0iYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDsgcGFkZGluZzog MTBweDsgbWFyZ2luLXRvcDogMjBweDsiPgogICAgPHAgc3R5bGU9Im1hcmdpbjogMDsiPlJlcGx5 IHRvIHRoaXMgbWVzc2FnZSBieSA8YSBocmVmPSJodHRwOi8vY29tbXVuaXR5Lmpib3NzLm9yZy9t ZXNzYWdlLzU2OTExNyM1NjkxMTciPmdvaW5nIHRvIENvbW11bml0eTwvYT48L3A+Cgk8cCBzdHls ZT0ibWFyZ2luOiAwOyI+U3RhcnQgYSBuZXcgZGlzY3Vzc2lvbiBpbiBKQm9zcyBBUzcgRGV2ZWxv cG1lbnQgYXQgPGEgaHJlZj0iaHR0cDovL2NvbW11bml0eS5qYm9zcy5vcmcvY2hvb3NlLWNvbnRh aW5lciFpbnB1dC5qc3BhP2NvbnRlbnRUeXBlPTEmY29udGFpbmVyVHlwZT0xNCZjb250YWluZXI9 MjIyNSI+Q29tbXVuaXR5PC9hPjwvcD4KPC9kaXY+PC90ZD4KICAgICAgICAgICAgICAgICAgICAg ICAgPC90cj4KICAgICAgICAgICAgICAgICAgICA8L3Rib2R5PgogICAgICAgICAgICAgICAgPC90 YWJsZT4KCgogICAgICAgICAgICAgICAgPC90ZD4KICAgICAgICAgICAgPC90cj4KICAgICAgICA8 L3Rib2R5PgogICAgPC90YWJsZT4KCjwvZGl2PgoKPC9ib2R5Pgo8L2h0bWw+ --===============1616895714020607777==--