From do-not-reply at jboss.com Thu Aug 9 06:25:43 2012 Content-Type: multipart/mixed; boundary="===============4836555587293809784==" MIME-Version: 1.0 From: Thomas Setiabudi To: jboss-user at lists.jboss.org Subject: [jboss-user] [jBPM] - Re: Process Parameters through REST API? Date: Thu, 09 Aug 2012 06:25:43 -0400 Message-ID: <2-751738-3-111525-1343929553234-2-752796-3-112016-1344507934389.jivesbs.jivemailuser@https://community.jboss.org> In-Reply-To: 2-751738-3-111525-1343929553234-2-752502-3-111525-1344410949115.jivesbs.jivemailuser@https://community.jboss.org --===============4836555587293809784== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Thomas Setiabudi [https://community.jboss.org/people/thomas.setiabudi] crea= ted the discussion "Re: Process Parameters through REST API?" To view the discussion, visit: https://community.jboss.org/message/752796#7= 52796 -------------------------------------------------------------- Hi Franck, I tried the http://localhost:8080/gwt-console-server/rs/form/process/proce= ss_id/complete http://localhost:8080/gwt-console-server/rs/form/process/pro= cess_id/complete = here is my code = =EF=BB=BF public String instantiateDemoEvaluation(String address, String username, =C2=A0=C2=A0 String reason, String processName) { =C2=A0 String responseString =3D ""; =C2=A0 List formparams =3D new ArrayList(); =C2=A0 formparams.add(new BasicNameValuePair("employee", "thomas")); =C2=A0 formparams.add(new BasicNameValuePair("reason", "test")); =C2=A0 HttpPost httpPost =3D new HttpPost(" http:// http://" + "localhost:8= 888" =C2=A0=C2=A0=C2=A0 + "/gwt-console-server/rs/form/process/" + "com.sample.e= valuation" =C2=A0=C2=A0=C2=A0 + "/complete"); =C2=A0 InputStreamReader inputStreamReader =3D null; =C2=A0 BufferedReader bufferedReader =3D null; =C2=A0 try { =C2=A0=C2=A0 UrlEncodedFormEntity entity =3D new UrlEncodedFormEntity(formp= arams, =C2=A0=C2=A0=C2=A0=C2=A0 "UTF-8");// UrlEncodedFormEntity(formparams, =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 // "multipart/form-data"); = =C2=A0=C2=A0 = =C2=A0=C2=A0 httpPost.setEntity(entity); =C2=A0=C2=A0 HttpResponse response =3D httpClient.execute(httpPost); =C2=A0=C2=A0 InputStream inputStream =3D response.getEntity().getContent(); =C2=A0=C2=A0 inputStreamReader =3D new InputStreamReader(inputStream); =C2=A0=C2=A0 bufferedReader =3D new BufferedReader(inputStreamReader); =C2=A0=C2=A0 StringBuilder stringBuilder =3D new StringBuilder(); =C2=A0=C2=A0 String line =3D bufferedReader.readLine(); =C2=A0=C2=A0 while (line !=3D null) { =C2=A0=C2=A0=C2=A0 stringBuilder.append(line); =C2=A0=C2=A0=C2=A0 line =3D bufferedReader.readLine(); =C2=A0=C2=A0 } =C2=A0=C2=A0 responseString =3D stringBuilder.toString(); =C2=A0 } catch (Exception e) { =C2=A0=C2=A0 throw new RuntimeException(e); =C2=A0 } finally { =C2=A0=C2=A0 if (inputStreamReader !=3D null) { =C2=A0=C2=A0=C2=A0 try { =C2=A0=C2=A0=C2=A0=C2=A0 inputStreamReader.close(); =C2=A0=C2=A0=C2=A0 } catch (Exception e) { =C2=A0=C2=A0=C2=A0=C2=A0 throw new RuntimeException(e); =C2=A0=C2=A0=C2=A0 } =C2=A0=C2=A0 } =C2=A0=C2=A0 if (bufferedReader !=3D null) { =C2=A0=C2=A0=C2=A0 try { =C2=A0=C2=A0=C2=A0=C2=A0 bufferedReader.close(); =C2=A0=C2=A0=C2=A0 } catch (Exception e) { =C2=A0=C2=A0=C2=A0=C2=A0 throw new RuntimeException(e); =C2=A0=C2=A0=C2=A0 } =C2=A0=C2=A0 } =C2=A0 } =C2=A0 return responseString; } and I got this error JBoss Web/7.0.1.Final - Error report

HTTP Status 500 -


<= b>type Exception report

message

descripti= on The server encountered an internal error () that prevented it fro= m fulfilling this request.

exception

org.jboss.restea=
sy.spi.UnhandledException: java.lang.RuntimeException: Timeout : unable to =
retrieve Task org.jboss.resteasy.core.SynchronousDispatcher.unwrapException=
(SynchronousDispatcher.java:345) org.jboss.resteasy.core.SynchronousDispatc=
her.handleApplicationException(SynchronousDispatcher.java:321) org.jboss.re=
steasy.core.SynchronousDispatcher.handleException(SynchronousDispatcher.jav=
a:214) org.jboss.resteasy.core.SynchronousDispatcher.handleInvokerException=
(SynchronousDispatcher.java:190) org.jboss.resteasy.core.SynchronousDispatc=
her.getResponse(SynchronousDispatcher.java:534) org.jboss.resteasy.core.Syn=
chronousDispatcher.invoke(SynchronousDispatcher.java:496) org.jboss.resteas=
y.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:119) org.jbo=
ss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(Servl=
etContainerDispatcher.java:208) org.jboss.resteasy.plugins.server.servlet.H=
ttpServletDispatcher.service(HttpServletDispatcher.java:55) org.jboss.reste=
asy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatc=
her.java:50) javax.servlet.http.HttpServlet.service(HttpServlet.java:847) o=
rg.jboss.bpm.console.server.util.GWTJsonFilter.doFilter(GWTJsonFilter.java:=
59)

root cause

java.lang.RuntimeException: Timeout =
: unable to retrieve Task org.jbpm.task.service.responsehandlers.BlockingGe=
tTaskResponseHandler.getTask(BlockingGetTaskResponseHandler.java:41) org.jb=
pm.task.service.SyncTaskServiceWrapper.getTask(SyncTaskServiceWrapper.java:=
369) org.jbpm.integration.console.forms.TaskFormDispatcher.provideForm(Task=
FormDispatcher.java:64) org.jbpm.integration.console.forms.FormDispatcherCo=
mposite.provideForm(FormDispatcherComposite.java:50) org.jboss.bpm.console.=
server.FormProcessingFacade.provideForm(FormProcessingFacade.java:205) org.=
jboss.bpm.console.server.FormProcessingFacade.renderTaskUI(FormProcessingFa=
cade.java:127) sun.reflect.GeneratedMethodAccessor101.invoke(Unknown Source=
) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorI=
mpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.jboss.res=
teasy.core.MethodInjectorImpl.invoke(MethodInjectorImpl.java:140) org.jboss=
.resteasy.core.ResourceMethod.invokeOnTarget(ResourceMethod.java:255) org.j=
boss.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:220) org.jboss=
.resteasy.core.ResourceMethod.invoke(ResourceMethod.java:209) org.jboss.res=
teasy.core.SynchronousDispatcher.getResponse(SynchronousDispatcher.java:519=
) org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatche=
r.java:496) org.jboss.resteasy.core.SynchronousDispatcher.invoke(Synchronou=
sDispatcher.java:119) org.jboss.resteasy.plugins.server.servlet.ServletCont=
ainerDispatcher.service(ServletContainerDispatcher.java:208) org.jboss.rest=
easy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispat=
cher.java:55) org.jboss.resteasy.plugins.server.servlet.HttpServletDispatch=
er.service(HttpServletDispatcher.java:50) javax.servlet.http.HttpServlet.se=
rvice(HttpServlet.java:847) org.jboss.bpm.console.server.util.GWTJsonFilter=
.doFilter(GWTJsonFilter.java:59)

note The full stack = trace of the root cause is available in the JBoss Web/7.0.1.Final logs.=


JBoss Web/7.0.1.Final

-------------------------------------------------------------- Reply to this message by going to Community [https://community.jboss.org/message/752796#752796] Start a new discussion in jBPM at Community [https://community.jboss.org/choose-container!input.jspa?contentType=3D1&co= ntainerType=3D14&container=3D2034] --===============4836555587293809784== 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 czovL2NvbW11bml0eS5qYm9zcy5vcmcvaW5kZXguanNwYSIgc3R5bGU9InRleHQtZGVjb3JhdGlv bjogbm9uZTsgY29sb3I6ICNFMUUxRTEiPkpCb3NzIENvbW11bml0eTwvYT48L2gxPgoJCQkJCQkJ CTwvdGQ+CgoJCQkJCQkJPC90cj4KCQkJCQkJCTx0cj4KCQkJCQkJCQk8dGQgYmdjb2xvcj0iI0ZG RkZGRiIgc3R5bGU9ImZvbnQ6IG5vcm1hbCAxMnB4IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2Vy aWY7IGNvbG9yOiMzMzMzMzM7IHBhZGRpbmc6IDIwcHg7ICAtbW96LWJvcmRlci1yYWRpdXMtYm90 dG9tbGVmdDogNHB4OyAtbW96LWJvcmRlci1yYWRpdXMtYm90dG9tcmlnaHQ6IDRweDsgLXdlYmtp dC1ib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNXB4OyAtd2Via2l0LWJvcmRlci1ib3R0b20t bGVmdC1yYWRpdXM6IDVweDsiPjxoMyBzdHlsZT0ibWFyZ2luOiAxMHB4IDAgNXB4OyBmb250LXNp emU6IDE3cHg7IGZvbnQtd2VpZ2h0OiBub3JtYWw7Ij4KICAgIFJlOiBQcm9jZXNzIFBhcmFtZXRl cnMgdGhyb3VnaCBSRVNUIEFQST8KPC9oMz4KPHNwYW4gc3R5bGU9Im1hcmdpbi1ib3R0b206IDEw cHg7Ij4KICAgIGNyZWF0ZWQgYnkgPGEgaHJlZj0iaHR0cHM6Ly9jb21tdW5pdHkuamJvc3Mub3Jn L3Blb3BsZS90aG9tYXMuc2V0aWFidWRpIj5UaG9tYXMgU2V0aWFidWRpPC9hPiBpbiA8aT5qQlBN PC9pPiAtIDxhIGhyZWY9Imh0dHBzOi8vY29tbXVuaXR5Lmpib3NzLm9yZy9tZXNzYWdlLzc1Mjc5 NiM3NTI3OTYiPlZpZXcgdGhlIGZ1bGwgZGlzY3Vzc2lvbjwvYT4KPC9zcGFuPgo8aHIgc3R5bGU9 Im1hcmdpbjogMjBweCAwOyBib3JkZXI6IG5vbmU7IGJhY2tncm91bmQtY29sb3I6ICNkYWRhZGE7 IGhlaWdodDogMXB4OyI+Cgo8ZGl2IGNsYXNzPSJqaXZlLXJlbmRlcmVkLWNvbnRlbnQiPjxwPkhp IEZyYW5jayw8L3A+PHAgc3R5bGU9Im1pbi1oZWlnaHQ6IDhwdDsgaGVpZ2h0OiA4cHQ7IHBhZGRp bmc6IDBweDsiPiYjMTYwOzwvcD48cD5JIHRyaWVkIHRoZSA8YSBjbGFzcz0iaml2ZS1saW5rLWV4 dGVybmFsLXNtYWxsIiBocmVmPSJodHRwOi8vbG9jYWxob3N0OjgwODAvZ3d0LWNvbnNvbGUtc2Vy dmVyL3JzL2Zvcm0vcHJvY2Vzcy9wcm9jZXNzX2lkL2NvbXBsZXRlIj5odHRwOi8vbG9jYWxob3N0 OjgwODAvZ3d0LWNvbnNvbGUtc2VydmVyL3JzL2Zvcm0vcHJvY2Vzcy9wcm9jZXNzX2lkL2NvbXBs ZXRlPC9hPiA8L3A+PHAgc3R5bGU9Im1pbi1oZWlnaHQ6IDhwdDsgaGVpZ2h0OiA4cHQ7IHBhZGRp bmc6IDBweDsiPiYjMTYwOzwvcD48cD5oZXJlIGlzIG15IGNvZGUgPC9wPjxwIHN0eWxlPSJtaW4t aGVpZ2h0OiA4cHQ7IGhlaWdodDogOHB0OyBwYWRkaW5nOiAwcHg7Ij4mIzE2MDs8L3A+PGRpdiBj bGFzcz0ibWNlUGFzdGUiIGlkPSJfbWNlUGFzdGUiIHN0eWxlPSJwb3NpdGlvbjogYWJzb2x1dGU7 IHRvcDogMHB4OyBsZWZ0OiAwcHg7Ij7vu788L2Rpdj48cD5wdWJsaWMgU3RyaW5nIGluc3RhbnRp YXRlRGVtb0V2YWx1YXRpb24oU3RyaW5nIGFkZHJlc3MsIFN0cmluZyB1c2VybmFtZSw8YnIvPiYj MTYwOyYjMTYwOyBTdHJpbmcgcmVhc29uLCBTdHJpbmcgcHJvY2Vzc05hbWUpIHs8YnIvPiYjMTYw OyBTdHJpbmcgcmVzcG9uc2VTdHJpbmcgPSAiIjs8YnIvPiYjMTYwOyBMaXN0Jmx0O05hbWVWYWx1 ZVBhaXImZ3Q7IGZvcm1wYXJhbXMgPSBuZXcgQXJyYXlMaXN0Jmx0O05hbWVWYWx1ZVBhaXImZ3Q7 KCk7PGJyLz4mIzE2MDsgZm9ybXBhcmFtcy5hZGQobmV3IEJhc2ljTmFtZVZhbHVlUGFpcigiZW1w bG95ZWUiLCAidGhvbWFzIikpOzxici8+JiMxNjA7IGZvcm1wYXJhbXMuYWRkKG5ldyBCYXNpY05h bWVWYWx1ZVBhaXIoInJlYXNvbiIsICJ0ZXN0IikpOzwvcD48cD48c3Bhbj4mIzE2MDsgSHR0cFBv c3QgaHR0cFBvc3QgPSBuZXcgSHR0cFBvc3QoIjwvc3Bhbj48YSBjbGFzcz0iaml2ZS1saW5rLWV4 dGVybmFsLXNtYWxsIiBocmVmPSJodHRwOi8vIiB0YXJnZXQ9Il9ibGFuayI+aHR0cDovLzwvYT48 c3Bhbj4iICsgImxvY2FsaG9zdDo4ODg4Ijwvc3Bhbj48YnIvPiYjMTYwOyYjMTYwOyYjMTYwOyAr ICIvZ3d0LWNvbnNvbGUtc2VydmVyL3JzL2Zvcm0vcHJvY2Vzcy8iICsgImNvbS5zYW1wbGUuZXZh bHVhdGlvbiI8YnIvPiYjMTYwOyYjMTYwOyYjMTYwOyArICIvY29tcGxldGUiKTs8YnIvPiYjMTYw OyBJbnB1dFN0cmVhbVJlYWRlciBpbnB1dFN0cmVhbVJlYWRlciA9IG51bGw7PGJyLz4mIzE2MDsg QnVmZmVyZWRSZWFkZXIgYnVmZmVyZWRSZWFkZXIgPSBudWxsOzwvcD48cD4mIzE2MDsgdHJ5IHs8 YnIvPiYjMTYwOyYjMTYwOyBVcmxFbmNvZGVkRm9ybUVudGl0eSBlbnRpdHkgPSBuZXcgVXJsRW5j b2RlZEZvcm1FbnRpdHkoZm9ybXBhcmFtcyw8YnIvPiYjMTYwOyYjMTYwOyYjMTYwOyYjMTYwOyAi VVRGLTgiKTsvLyBVcmxFbmNvZGVkRm9ybUVudGl0eShmb3JtcGFyYW1zLDxici8+JiMxNjA7JiMx NjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7JiMxNjA7IC8vICJtdWx0aXBhcnQvZm9ybS1kYXRh Iik7IDxici8+JiMxNjA7JiMxNjA7IDxici8+JiMxNjA7JiMxNjA7IGh0dHBQb3N0LnNldEVudGl0 eShlbnRpdHkpOzxici8+JiMxNjA7JiMxNjA7IEh0dHBSZXNwb25zZSByZXNwb25zZSA9IGh0dHBD bGllbnQuZXhlY3V0ZShodHRwUG9zdCk7PGJyLz4mIzE2MDsmIzE2MDsgSW5wdXRTdHJlYW0gaW5w dXRTdHJlYW0gPSByZXNwb25zZS5nZXRFbnRpdHkoKS5nZXRDb250ZW50KCk7PGJyLz4mIzE2MDsm IzE2MDsgaW5wdXRTdHJlYW1SZWFkZXIgPSBuZXcgSW5wdXRTdHJlYW1SZWFkZXIoaW5wdXRTdHJl YW0pOzxici8+JiMxNjA7JiMxNjA7IGJ1ZmZlcmVkUmVhZGVyID0gbmV3IEJ1ZmZlcmVkUmVhZGVy KGlucHV0U3RyZWFtUmVhZGVyKTs8YnIvPiYjMTYwOyYjMTYwOyBTdHJpbmdCdWlsZGVyIHN0cmlu Z0J1aWxkZXIgPSBuZXcgU3RyaW5nQnVpbGRlcigpOzxici8+JiMxNjA7JiMxNjA7IFN0cmluZyBs aW5lID0gYnVmZmVyZWRSZWFkZXIucmVhZExpbmUoKTs8YnIvPiYjMTYwOyYjMTYwOyB3aGlsZSAo bGluZSAhPSBudWxsKSB7PGJyLz4mIzE2MDsmIzE2MDsmIzE2MDsgc3RyaW5nQnVpbGRlci5hcHBl bmQobGluZSk7PGJyLz4mIzE2MDsmIzE2MDsmIzE2MDsgbGluZSA9IGJ1ZmZlcmVkUmVhZGVyLnJl YWRMaW5lKCk7PGJyLz4mIzE2MDsmIzE2MDsgfTxici8+JiMxNjA7JiMxNjA7IHJlc3BvbnNlU3Ry aW5nID0gc3RyaW5nQnVpbGRlci50b1N0cmluZygpOzxici8+JiMxNjA7IH0gY2F0Y2ggKEV4Y2Vw dGlvbiBlKSB7PGJyLz4mIzE2MDsmIzE2MDsgdGhyb3cgbmV3IFJ1bnRpbWVFeGNlcHRpb24oZSk7 PGJyLz4mIzE2MDsgfSBmaW5hbGx5IHs8YnIvPiYjMTYwOyYjMTYwOyBpZiAoaW5wdXRTdHJlYW1S ZWFkZXIgIT0gbnVsbCkgezxici8+JiMxNjA7JiMxNjA7JiMxNjA7IHRyeSB7PGJyLz4mIzE2MDsm IzE2MDsmIzE2MDsmIzE2MDsgaW5wdXRTdHJlYW1SZWFkZXIuY2xvc2UoKTs8YnIvPiYjMTYwOyYj MTYwOyYjMTYwOyB9IGNhdGNoIChFeGNlcHRpb24gZSkgezxici8+JiMxNjA7JiMxNjA7JiMxNjA7 JiMxNjA7IHRocm93IG5ldyBSdW50aW1lRXhjZXB0aW9uKGUpOzxici8+JiMxNjA7JiMxNjA7JiMx NjA7IH08YnIvPiYjMTYwOyYjMTYwOyB9PGJyLz4mIzE2MDsmIzE2MDsgaWYgKGJ1ZmZlcmVkUmVh ZGVyICE9IG51bGwpIHs8YnIvPiYjMTYwOyYjMTYwOyYjMTYwOyB0cnkgezxici8+JiMxNjA7JiMx NjA7JiMxNjA7JiMxNjA7IGJ1ZmZlcmVkUmVhZGVyLmNsb3NlKCk7PGJyLz4mIzE2MDsmIzE2MDsm IzE2MDsgfSBjYXRjaCAoRXhjZXB0aW9uIGUpIHs8YnIvPiYjMTYwOyYjMTYwOyYjMTYwOyYjMTYw OyB0aHJvdyBuZXcgUnVudGltZUV4Y2VwdGlvbihlKTs8YnIvPiYjMTYwOyYjMTYwOyYjMTYwOyB9 PGJyLz4mIzE2MDsmIzE2MDsgfTxici8+JiMxNjA7IH08L3A+PHA+JiMxNjA7IHJldHVybiByZXNw b25zZVN0cmluZzs8YnIvPiB9PC9wPjxwIHN0eWxlPSJtaW4taGVpZ2h0OiA4cHQ7IGhlaWdodDog OHB0OyBwYWRkaW5nOiAwcHg7Ij4mIzE2MDs8L3A+PHAgc3R5bGU9Im1pbi1oZWlnaHQ6IDhwdDsg aGVpZ2h0OiA4cHQ7IHBhZGRpbmc6IDBweDsiPiYjMTYwOzwvcD48cD5hbmQgSSBnb3QgdGhpcyBl cnJvcjwvcD48cCBzdHlsZT0ibWluLWhlaWdodDogOHB0OyBoZWlnaHQ6IDhwdDsgcGFkZGluZzog MHB4OyI+JiMxNjA7PC9wPjxwPiZsdDtodG1sJmd0OyZsdDtoZWFkJmd0OyZsdDt0aXRsZSZndDtK Qm9zcyBXZWIvNy4wLjEuRmluYWwgLSBFcnJvciByZXBvcnQmbHQ7L3RpdGxlJmd0OyZsdDtzdHls ZSZndDsmbHQ7IS0tSDEge2ZvbnQtZmFtaWx5OlRhaG9tYSxBcmlhbCxzYW5zLXNlcmlmO2NvbG9y OndoaXRlO2JhY2tncm91bmQtY29sb3I6IzUyNUQ3Njtmb250LXNpemU6MjJweDt9IEgyIHtmb250 LWZhbWlseTpUYWhvbWEsQXJpYWwsc2Fucy1zZXJpZjtjb2xvcjp3aGl0ZTtiYWNrZ3JvdW5kLWNv bG9yOiM1MjVENzY7Zm9udC1zaXplOjE2cHg7fSBIMyB7Zm9udC1mYW1pbHk6VGFob21hLEFyaWFs LHNhbnMtc2VyaWY7Y29sb3I6d2hpdGU7YmFja2dyb3VuZC1jb2xvcjojNTI1RDc2O2ZvbnQtc2l6 ZToxNHB4O30gQk9EWSB7Zm9udC1mYW1pbHk6VGFob21hLEFyaWFsLHNhbnMtc2VyaWY7Y29sb3I6 YmxhY2s7YmFja2dyb3VuZC1jb2xvcjp3aGl0ZTt9IEIge2ZvbnQtZmFtaWx5OlRhaG9tYSxBcmlh bCxzYW5zLXNlcmlmO2NvbG9yOndoaXRlO2JhY2tncm91bmQtY29sb3I6IzUyNUQ3Njt9IFAge2Zv bnQtZmFtaWx5OlRhaG9tYSxBcmlhbCxzYW5zLXNlcmlmO2JhY2tncm91bmQ6d2hpdGU7Y29sb3I6 YmxhY2s7Zm9udC1zaXplOjEycHg7fUEge2NvbG9yIDogYmxhY2s7fUEubmFtZSB7Y29sb3IgOiBi bGFjazt9SFIge2NvbG9yIDogIzUyNUQ3Njt9LS0mZ3Q7Jmx0Oy9zdHlsZSZndDsgJmx0Oy9oZWFk Jmd0OyZsdDtib2R5Jmd0OyZsdDtoMSZndDtIVFRQIFN0YXR1cyA1MDAgLSAmbHQ7L2gxJmd0OyZs dDtIUiBzaXplPSIxIiBub3NoYWRlPSJub3NoYWRlIiZndDsmbHQ7cCZndDsmbHQ7YiZndDt0eXBl Jmx0Oy9iJmd0OyBFeGNlcHRpb24gcmVwb3J0Jmx0Oy9wJmd0OyZsdDtwJmd0OyZsdDtiJmd0O21l c3NhZ2UmbHQ7L2ImZ3Q7ICZsdDt1Jmd0OyZsdDsvdSZndDsmbHQ7L3AmZ3Q7Jmx0O3AmZ3Q7Jmx0 O2ImZ3Q7ZGVzY3JpcHRpb24mbHQ7L2ImZ3Q7ICZsdDt1Jmd0O1RoZSBzZXJ2ZXIgZW5jb3VudGVy ZWQgYW4gaW50ZXJuYWwgZXJyb3IgKCkgdGhhdCBwcmV2ZW50ZWQgaXQgZnJvbSBmdWxmaWxsaW5n IHRoaXMgcmVxdWVzdC4mbHQ7L3UmZ3Q7Jmx0Oy9wJmd0OyZsdDtwJmd0OyZsdDtiJmd0O2V4Y2Vw dGlvbiZsdDsvYiZndDsgJmx0O3ByZSZndDtvcmcuamJvc3MucmVzdGVhc3kuc3BpLlVuaGFuZGxl ZEV4Y2VwdGlvbjogamF2YS5sYW5nLlJ1bnRpbWVFeGNlcHRpb246IFRpbWVvdXQgOiB1bmFibGUg dG8gcmV0cmlldmUgVGFzayBvcmcuamJvc3MucmVzdGVhc3kuY29yZS5TeW5jaHJvbm91c0Rpc3Bh dGNoZXIudW53cmFwRXhjZXB0aW9uKFN5bmNocm9ub3VzRGlzcGF0Y2hlci5qYXZhOjM0NSkgb3Jn Lmpib3NzLnJlc3RlYXN5LmNvcmUuU3luY2hyb25vdXNEaXNwYXRjaGVyLmhhbmRsZUFwcGxpY2F0 aW9uRXhjZXB0aW9uKFN5bmNocm9ub3VzRGlzcGF0Y2hlci5qYXZhOjMyMSkgb3JnLmpib3NzLnJl c3RlYXN5LmNvcmUuU3luY2hyb25vdXNEaXNwYXRjaGVyLmhhbmRsZUV4Y2VwdGlvbihTeW5jaHJv bm91c0Rpc3BhdGNoZXIuamF2YToyMTQpIG9yZy5qYm9zcy5yZXN0ZWFzeS5jb3JlLlN5bmNocm9u b3VzRGlzcGF0Y2hlci5oYW5kbGVJbnZva2VyRXhjZXB0aW9uKFN5bmNocm9ub3VzRGlzcGF0Y2hl ci5qYXZhOjE5MCkgb3JnLmpib3NzLnJlc3RlYXN5LmNvcmUuU3luY2hyb25vdXNEaXNwYXRjaGVy LmdldFJlc3BvbnNlKFN5bmNocm9ub3VzRGlzcGF0Y2hlci5qYXZhOjUzNCkgb3JnLmpib3NzLnJl c3RlYXN5LmNvcmUuU3luY2hyb25vdXNEaXNwYXRjaGVyLmludm9rZShTeW5jaHJvbm91c0Rpc3Bh dGNoZXIuamF2YTo0OTYpIG9yZy5qYm9zcy5yZXN0ZWFzeS5jb3JlLlN5bmNocm9ub3VzRGlzcGF0 Y2hlci5pbnZva2UoU3luY2hyb25vdXNEaXNwYXRjaGVyLmphdmE6MTE5KSBvcmcuamJvc3MucmVz dGVhc3kucGx1Z2lucy5zZXJ2ZXIuc2VydmxldC5TZXJ2bGV0Q29udGFpbmVyRGlzcGF0Y2hlci5z ZXJ2aWNlKFNlcnZsZXRDb250YWluZXJEaXNwYXRjaGVyLmphdmE6MjA4KSBvcmcuamJvc3MucmVz dGVhc3kucGx1Z2lucy5zZXJ2ZXIuc2VydmxldC5IdHRwU2VydmxldERpc3BhdGNoZXIuc2Vydmlj ZShIdHRwU2VydmxldERpc3BhdGNoZXIuamF2YTo1NSkgb3JnLmpib3NzLnJlc3RlYXN5LnBsdWdp bnMuc2VydmVyLnNlcnZsZXQuSHR0cFNlcnZsZXREaXNwYXRjaGVyLnNlcnZpY2UoSHR0cFNlcnZs ZXREaXNwYXRjaGVyLmphdmE6NTApIGphdmF4LnNlcnZsZXQuaHR0cC5IdHRwU2VydmxldC5zZXJ2 aWNlKEh0dHBTZXJ2bGV0LmphdmE6ODQ3KSBvcmcuamJvc3MuYnBtLmNvbnNvbGUuc2VydmVyLnV0 aWwuR1dUSnNvbkZpbHRlci5kb0ZpbHRlcihHV1RKc29uRmlsdGVyLmphdmE6NTkpJmx0Oy9wcmUm Z3Q7Jmx0Oy9wJmd0OyZsdDtwJmd0OyZsdDtiJmd0O3Jvb3QgY2F1c2UmbHQ7L2ImZ3Q7ICZsdDtw cmUmZ3Q7amF2YS5sYW5nLlJ1bnRpbWVFeGNlcHRpb246IFRpbWVvdXQgOiB1bmFibGUgdG8gcmV0 cmlldmUgVGFzayBvcmcuamJwbS50YXNrLnNlcnZpY2UucmVzcG9uc2VoYW5kbGVycy5CbG9ja2lu Z0dldFRhc2tSZXNwb25zZUhhbmRsZXIuZ2V0VGFzayhCbG9ja2luZ0dldFRhc2tSZXNwb25zZUhh bmRsZXIuamF2YTo0MSkgb3JnLmpicG0udGFzay5zZXJ2aWNlLlN5bmNUYXNrU2VydmljZVdyYXBw ZXIuZ2V0VGFzayhTeW5jVGFza1NlcnZpY2VXcmFwcGVyLmphdmE6MzY5KSBvcmcuamJwbS5pbnRl Z3JhdGlvbi5jb25zb2xlLmZvcm1zLlRhc2tGb3JtRGlzcGF0Y2hlci5wcm92aWRlRm9ybShUYXNr Rm9ybURpc3BhdGNoZXIuamF2YTo2NCkgb3JnLmpicG0uaW50ZWdyYXRpb24uY29uc29sZS5mb3Jt cy5Gb3JtRGlzcGF0Y2hlckNvbXBvc2l0ZS5wcm92aWRlRm9ybShGb3JtRGlzcGF0Y2hlckNvbXBv c2l0ZS5qYXZhOjUwKSBvcmcuamJvc3MuYnBtLmNvbnNvbGUuc2VydmVyLkZvcm1Qcm9jZXNzaW5n RmFjYWRlLnByb3ZpZGVGb3JtKEZvcm1Qcm9jZXNzaW5nRmFjYWRlLmphdmE6MjA1KSBvcmcuamJv c3MuYnBtLmNvbnNvbGUuc2VydmVyLkZvcm1Qcm9jZXNzaW5nRmFjYWRlLnJlbmRlclRhc2tVSShG b3JtUHJvY2Vzc2luZ0ZhY2FkZS5qYXZhOjEyNykgc3VuLnJlZmxlY3QuR2VuZXJhdGVkTWV0aG9k QWNjZXNzb3IxMDEuaW52b2tlKFVua25vd24gU291cmNlKSBzdW4ucmVmbGVjdC5EZWxlZ2F0aW5n TWV0aG9kQWNjZXNzb3JJbXBsLmludm9rZShEZWxlZ2F0aW5nTWV0aG9kQWNjZXNzb3JJbXBsLmph dmE6MjUpIGphdmEubGFuZy5yZWZsZWN0Lk1ldGhvZC5pbnZva2UoTWV0aG9kLmphdmE6NTk3KSBv cmcuamJvc3MucmVzdGVhc3kuY29yZS5NZXRob2RJbmplY3RvckltcGwuaW52b2tlKE1ldGhvZElu amVjdG9ySW1wbC5qYXZhOjE0MCkgb3JnLmpib3NzLnJlc3RlYXN5LmNvcmUuUmVzb3VyY2VNZXRo b2QuaW52b2tlT25UYXJnZXQoUmVzb3VyY2VNZXRob2QuamF2YToyNTUpIG9yZy5qYm9zcy5yZXN0 ZWFzeS5jb3JlLlJlc291cmNlTWV0aG9kLmludm9rZShSZXNvdXJjZU1ldGhvZC5qYXZhOjIyMCkg b3JnLmpib3NzLnJlc3RlYXN5LmNvcmUuUmVzb3VyY2VNZXRob2QuaW52b2tlKFJlc291cmNlTWV0 aG9kLmphdmE6MjA5KSBvcmcuamJvc3MucmVzdGVhc3kuY29yZS5TeW5jaHJvbm91c0Rpc3BhdGNo ZXIuZ2V0UmVzcG9uc2UoU3luY2hyb25vdXNEaXNwYXRjaGVyLmphdmE6NTE5KSBvcmcuamJvc3Mu cmVzdGVhc3kuY29yZS5TeW5jaHJvbm91c0Rpc3BhdGNoZXIuaW52b2tlKFN5bmNocm9ub3VzRGlz cGF0Y2hlci5qYXZhOjQ5Nikgb3JnLmpib3NzLnJlc3RlYXN5LmNvcmUuU3luY2hyb25vdXNEaXNw YXRjaGVyLmludm9rZShTeW5jaHJvbm91c0Rpc3BhdGNoZXIuamF2YToxMTkpIG9yZy5qYm9zcy5y ZXN0ZWFzeS5wbHVnaW5zLnNlcnZlci5zZXJ2bGV0LlNlcnZsZXRDb250YWluZXJEaXNwYXRjaGVy LnNlcnZpY2UoU2VydmxldENvbnRhaW5lckRpc3BhdGNoZXIuamF2YToyMDgpIG9yZy5qYm9zcy5y ZXN0ZWFzeS5wbHVnaW5zLnNlcnZlci5zZXJ2bGV0Lkh0dHBTZXJ2bGV0RGlzcGF0Y2hlci5zZXJ2 aWNlKEh0dHBTZXJ2bGV0RGlzcGF0Y2hlci5qYXZhOjU1KSBvcmcuamJvc3MucmVzdGVhc3kucGx1 Z2lucy5zZXJ2ZXIuc2VydmxldC5IdHRwU2VydmxldERpc3BhdGNoZXIuc2VydmljZShIdHRwU2Vy dmxldERpc3BhdGNoZXIuamF2YTo1MCkgamF2YXguc2VydmxldC5odHRwLkh0dHBTZXJ2bGV0LnNl cnZpY2UoSHR0cFNlcnZsZXQuamF2YTo4NDcpIG9yZy5qYm9zcy5icG0uY29uc29sZS5zZXJ2ZXIu dXRpbC5HV1RKc29uRmlsdGVyLmRvRmlsdGVyKEdXVEpzb25GaWx0ZXIuamF2YTo1OSkmbHQ7L3By ZSZndDsmbHQ7L3AmZ3Q7Jmx0O3AmZ3Q7Jmx0O2ImZ3Q7bm90ZSZsdDsvYiZndDsgJmx0O3UmZ3Q7 VGhlIGZ1bGwgc3RhY2sgdHJhY2Ugb2YgdGhlIHJvb3QgY2F1c2UgaXMgYXZhaWxhYmxlIGluIHRo ZSBKQm9zcyBXZWIvNy4wLjEuRmluYWwgbG9ncy4mbHQ7L3UmZ3Q7Jmx0Oy9wJmd0OyZsdDtIUiBz aXplPSIxIiBub3NoYWRlPSJub3NoYWRlIiZndDsmbHQ7aDMmZ3Q7SkJvc3MgV2ViLzcuMC4xLkZp bmFsJmx0Oy9oMyZndDsmbHQ7L2JvZHkmZ3Q7Jmx0Oy9odG1sJmd0OzwvcD48L2Rpdj4KCjxkaXYg c3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7IHBhZGRpbmc6IDEwcHg7IG1hcmdpbi10 b3A6IDIwcHg7Ij4KICAgIDxwIHN0eWxlPSJtYXJnaW46IDA7Ij5SZXBseSB0byB0aGlzIG1lc3Nh Z2UgYnkgPGEgaHJlZj0iaHR0cHM6Ly9jb21tdW5pdHkuamJvc3Mub3JnL21lc3NhZ2UvNzUyNzk2 Izc1Mjc5NiI+Z29pbmcgdG8gQ29tbXVuaXR5PC9hPjwvcD4KCTxwIHN0eWxlPSJtYXJnaW46IDA7 Ij5TdGFydCBhIG5ldyBkaXNjdXNzaW9uIGluIGpCUE0gYXQgPGEgaHJlZj0iaHR0cHM6Ly9jb21t dW5pdHkuamJvc3Mub3JnL2Nob29zZS1jb250YWluZXIhaW5wdXQuanNwYT9jb250ZW50VHlwZT0x JmNvbnRhaW5lclR5cGU9MTQmY29udGFpbmVyPTIwMzQiPkNvbW11bml0eTwvYT48L3A+CjwvZGl2 PjwvdGQ+CiAgICAgICAgICAgICAgICAgICAgICAgIDwvdHI+CiAgICAgICAgICAgICAgICAgICAg PC90Ym9keT4KICAgICAgICAgICAgICAgIDwvdGFibGU+CgoKICAgICAgICAgICAgICAgIDwvdGQ+ CiAgICAgICAgICAgIDwvdHI+CiAgICAgICAgPC90Ym9keT4KICAgIDwvdGFibGU+Cgo8L2Rpdj4K CjwvYm9keT4KPC9odG1sPg== --===============4836555587293809784==--