Re: Class not found
Eric Dalquist <[email protected]> Thu, 25 Aug 2011 07:46:23 -0500
| Newsgroups | gmane.comp.jakarta.pluto.user |
|---|---|
| Organization | UW DoIT |
| Message-ID | <[email protected]> |
This is a cryptographically signed message in MIME format. --------------ms050404030705080301020502 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: quoted-printable You need to have the portlet-api JAR in the tomcat/shared/lib=20 classloader and have that classloader enabled in catalina.properties. -Eric On 8/24/11 8:26 PM, David Daniel wrote: > Hello all, > I tried my best to follow the instructions for embedding Pluto in=20 > tomcat 6 but I keep getting an error. The instructions are a little=20 > outdated so if you happen to know what file I forgot to copy where=20 > then please let me know. > org.springframework.beans.factory.CannotLoadBeanClassException: Error=20 > loading class=20 > [org.apache.pluto.driver.services.container.PortalContextImpl] for=20 > bean with name 'PortalContext' defined in ServletContext resource=20 > [/WEB-INF/pluto-portal-driver-services-config.xml]: problem with class = > file or dependent class; nested exception is=20 > java.lang.NoClassDefFoundError: javax/portlet/PortalContext > Caused by: java.lang.NoClassDefFoundError: javax/portlet/PortalContext > at java.lang.ClassLoader.defineClass1(Native Method) > at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632) > at java.lang.ClassLoader.defineClass(ClassLoader.java:616) > at=20 > java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)= > at=20 > org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappCl= assLoader.java:1850) > at=20 > org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoade= r.java:890) > at=20 > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoade= r.java:1354) > at=20 > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoade= r.java:1233) > at org.springframework.util.ClassUtils.forName(ClassUtils.java:183) > at=20 > org.springframework.beans.factory.support.AbstractBeanDefinition.resolv= eBeanClass(AbstractBeanDefinition.java:317) > at=20 > org.springframework.beans.factory.support.AbstractBeanFactory.resolveBe= anClass(AbstractBeanFactory.java:1044) > at=20 > org.springframework.beans.factory.support.AbstractBeanFactory.isBeanCla= ssMatch(AbstractBeanFactory.java:1072) > at=20 > org.springframework.beans.factory.support.DefaultListableBeanFactory.ge= tBeanNamesForType(DefaultListableBeanFactory.java:165) > at=20 > org.springframework.context.support.AbstractApplicationContext.getBeanN= amesForType(AbstractApplicationContext.java:691) > at=20 > org.springframework.context.support.AbstractApplicationContext.invokeBe= anFactoryPostProcessors(AbstractApplicationContext.java:395) > at=20 > org.springframework.context.support.AbstractApplicationContext.refresh(= AbstractApplicationContext.java:328) > at=20 > org.springframework.web.context.support.AbstractRefreshableWebApplicati= onContext.refresh(AbstractRefreshableWebApplicationContext.java:156) > at=20 > org.springframework.web.context.ContextLoader.createWebApplicationConte= xt(ContextLoader.java:246) > at=20 > org.springframework.web.context.ContextLoader.initWebApplicationContext= (ContextLoader.java:184) > at=20 > org.springframework.web.context.ContextLoaderListener.contextInitialize= d(ContextLoaderListener.java:49) > at=20 > org.apache.pluto.driver.PortalStartupListener.contextInitialized(Portal= StartupListener.java:108) > at=20 > org.apache.catalina.core.StandardContext.listenerStart(StandardContext.= java:3934) > at=20 > org.apache.catalina.core.StandardContext.start(StandardContext.java:442= 9) > at=20 > org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.j= ava:791) > at=20 > org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)= > at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:52= 6) > at=20 > org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java= :630) > at=20 > org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.jav= a:556) > at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:4= 91) > at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1206) > at=20 > org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:3= 14) > at=20 > org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleS= upport.java:119) > at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:105= 3) > at org.apache.catalina.core.StandardHost.start(StandardHost.java:722) > at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:104= 5) > at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:4= 43) > at=20 > org.apache.catalina.core.StandardService.start(StandardService.java:516= ) > at org.apache.catalina.core.StandardServer.start(StandardServer.java:7= 10) > at org.apache.catalina.startup.Catalina.start(Catalina.java:583) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at=20 > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.ja= va:39) > at=20 > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccesso= rImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) > at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) > Caused by: java.lang.ClassNotFoundException: javax.portlet.PortalContex= t > at=20 > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoade= r.java:1387) > at=20 > org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoade= r.java:1233) > ... 45 more > Aug 24, 2011 9:21:12 PM org.apache.pluto.driver.PortalStartupListener=20 > contextDestroyed > INFO: Shutting down Pluto Portal Driver... > Aug 24, 2011 9:21:12 PM org.apache.pluto.driver.PortalStartupListener=20 > destroyContainer > INFO: Shutting down Pluto Portal Driver... > Aug 24, 2011 9:21:12 PM org.apache.pluto.driver.PortalStartupListener=20 > contextDestroyed > INFO: ********** Pluto Portal Driver Shut Down ********** --------------ms050404030705080301020502 Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="smime.p7s" Content-Description: S/MIME Cryptographic Signature MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEHAQAAoIIZOjCC BJ8wggQIoAMCAQICBEaekRowDQYJKoZIhvcNAQEFBQAwgcMxCzAJBgNVBAYTAlVTMRQwEgYD VQQKEwtFbnRydXN0Lm5ldDE7MDkGA1UECxMyd3d3LmVudHJ1c3QubmV0L0NQUyBpbmNvcnAu IGJ5IHJlZi4gKGxpbWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5IEVudHJ1c3QubmV0 IExpbWl0ZWQxOjA4BgNVBAMTMUVudHJ1c3QubmV0IFNlY3VyZSBTZXJ2ZXIgQ2VydGlmaWNh dGlvbiBBdXRob3JpdHkwHhcNMDkwMzIzMTUxODI3WhcNMTkwMzIzMTU0ODI3WjCBtDEUMBIG A1UEChMLRW50cnVzdC5uZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNfMjA0OCBp bmNvcnAuIGJ5IHJlZi4gKGxpbWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5IEVudHJ1 c3QubmV0IExpbWl0ZWQxMzAxBgNVBAMTKkVudHJ1c3QubmV0IENlcnRpZmljYXRpb24gQXV0 aG9yaXR5ICgyMDQ4KTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK1NS6kShrLq oyAHFRZkKitL0b8LSk2O7YB2pWe3eEDAc0LIaMDbUyvdXrh2mDWTixqdfBM6Dh9btx7P5SQU HrGBqY19uMxrSwPxAgzcq6VAJAB/dJShnQgps4gL9Yd3nVXN5MN+12pkq4UUhpVblzJQbz3I umYM4/y9uEnBdolJGf3AqL2Jo2cvxp+8cRlguC3pLMmQdmZ7lOKveNZlU1081pyyzykD+S+k ULLUSM4FMlWK/bJkTA7kmAd123/fuQhVYIUwKfl7SKRphuM1Px6GXXp6Fb3vAI4VIlQXAJAm k7wOSWiRv/hH052VQsEOTd9vJs/DGCFiZkNw1tXAB+ECAwEAAaOCAScwggEjMA4GA1UdDwEB /wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MDMGCCsGAQUFBwEBBCcwJTAjBggrBgEFBQcwAYYX aHR0cDovL29jc3AuZW50cnVzdC5uZXQwMwYDVR0fBCwwKjAooCagJIYiaHR0cDovL2NybC5l bnRydXN0Lm5ldC9zZXJ2ZXIxLmNybDA7BgNVHSAENDAyMDAGBFUdIAAwKDAmBggrBgEFBQcC ARYaaHR0cDovL3d3dy5lbnRydXN0Lm5ldC9DUFMwHQYDVR0OBBYEFFXkgdERgL7YibkIozH5 oSQJFrlwMB8GA1UdIwQYMBaAFPAXYhNVPbP/CgBr+1CEl/PtYtAaMBkGCSqGSIb2fQdBAAQM MAobBFY3LjEDAgCBMA0GCSqGSIb3DQEBBQUAA4GBAI9lojCOJquK7DUWmOkD8I0XX7xMbAL2 dFLgwsYfzvKmEQyosQ5NhItxNu+zNUXzwfiWxYtVpMxrgxYgMtq++6+bt5/hfoSfnjxQpz9c wr6LhrgIku74QisNE+N2hUgKSr/QpTsKsFS4beMI+TSNC46LEswXGjOHlcieCtxQUxd7MIIF ozCCBIugAwIBAgIETA5iEjANBgkqhkiG9w0BAQUFADCBtDEUMBIGA1UEChMLRW50cnVzdC5u ZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNfMjA0OCBpbmNvcnAuIGJ5IHJlZi4g KGxpbWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5IEVudHJ1c3QubmV0IExpbWl0ZWQx MzAxBgNVBAMTKkVudHJ1c3QubmV0IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ICgyMDQ4KTAe Fw0xMDA2MzAxODM0NTRaFw0yMDA2MzAxOTA0NTRaMIGAMQswCQYDVQQGEwJVUzEQMA4GA1UE ChMHRW50cnVzdDEiMCAGA1UECxMZQ2VydGlmaWNhdGlvbiBBdXRob3JpdGllczE7MDkGA1UE AxMyRW50cnVzdCBNYW5hZ2VkIFNlcnZpY2VzIENvbW1lcmNpYWwgUHVibGljIFJvb3QgQ0Ew ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDMXI+wxZoiWKTiB15DT/VyF8eTSWED /vatNS6/Y+s9kbGo2oI8Qlk/lsWn7lv9UeJmIVeu+Pp6iNTyQ09kOAyBBmAQ/yKq4PRHnsrP uxgkirXZ5t3AumSPVr62v2kHVce9S94LjCR2UIov0EMvs8/qq95KIGxGLTgdoeDVXI/5RZeA sGTquePKvbHest1FmPQaly2pRPdnlRHEmJQ2NkaR45AeQvKKn8kzpYeCoBLyCsD0HbHzlIfP aujKqEcQZIbJUyD0y++KNajSPATWImCt2eXdeHEUcnmcHGq9ha1EEI02oW8zT2R0xhjdLoR5 Ds+xg43iGyxLPdoliIxHVPhhAgMBAAGjggHtMIIB6TAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0T AQH/BAgwBgEB/wIBATAzBggrBgEFBQcBAQQnMCUwIwYIKwYBBQUHMAGGF2h0dHA6Ly9vY3Nw LmVudHJ1c3QubmV0MIIBGAYDVR0gBIIBDzCCAQswVwYNYIZIAYb6a4FIAwoCBDBGMEQGCCsG AQUFBwIBFjhodHRwOi8vY29tcHViLm1hbmFnZWQuZW50cnVzdC5jb20vQ1AvRU1TQ29tbWVy Y2lhbENQLnBkZjBXBg1ghkgBhvprgUgDCgIFMEYwRAYIKwYBBQUHAgEWOGh0dHA6Ly9jb21w dWIubWFuYWdlZC5lbnRydXN0LmNvbS9DUC9FTVNDb21tZXJjaWFsQ1AucGRmMFcGDWCGSAGG +muBSAMKAgYwRjBEBggrBgEFBQcCARY4aHR0cDovL2NvbXB1Yi5tYW5hZ2VkLmVudHJ1c3Qu Y29tL0NQL0VNU0NvbW1lcmNpYWxDUC5wZGYwMgYDVR0fBCswKTAnoCWgI4YhaHR0cDovL2Ny bC5lbnRydXN0Lm5ldC8yMDQ4Y2EuY3JsMB0GA1UdDgQWBBTAMkkFZmaDhxlpua6DJQYZiwXX dDAfBgNVHSMEGDAWgBRV5IHREYC+2Im5CKMx+aEkCRa5cDANBgkqhkiG9w0BAQUFAAOCAQEA D7NwMLoCbvFzWEObVh724gCE6XY+xB2NpOrYpu7dlh98kzn7upnY1BMhjvLHiWDMcxIIsar/ XFNI7AePCF4PGpvfudBtB/U5umTxFVYgLLexxsN2cUOP5yd0mJb6k3wU6NOi8mPZNtSfullU s7avzGHWx787no9d97XrIKKCMV8HwJjtZCt0OKFXVCYWMNMcFqVvBX2pbqgSlSBtZhzTIfi3 MYkEOY9Zgrtsh+2hP22OJuskImNEHqlYbM//OqlCGQz+4sK6Ai/3HMfKFKJ/6Oyf8j48dO12 3nPRMQAy/oBHEITGQQUK0hdDZyglGOzTHGWH2Ae33vrzs+8T9rG8GzCCBxEwggX5oAMCAQIC BEwfo4cwDQYJKoZIhvcNAQEFBQAwgYAxCzAJBgNVBAYTAlVTMRAwDgYDVQQKEwdFbnRydXN0 MSIwIAYDVQQLExlDZXJ0aWZpY2F0aW9uIEF1dGhvcml0aWVzMTswOQYDVQQDEzJFbnRydXN0 IE1hbmFnZWQgU2VydmljZXMgQ29tbWVyY2lhbCBQdWJsaWMgUm9vdCBDQTAeFw0xMDA3MDcy MDE0NTRaFw0zMDA2MDcyMDQ0NTRaMHcxCzAJBgNVBAYTAlVTMRAwDgYDVQQKEwdFbnRydXN0 MSIwIAYDVQQLExlDZXJ0aWZpY2F0aW9uIEF1dGhvcml0aWVzMTIwMAYDVQQDEylFbnRydXN0 IEVkdWNhdGlvbiBTaGFyZWQgU2VydmljZSBQcm92aWRlcjCCASIwDQYJKoZIhvcNAQEBBQAD ggEPADCCAQoCggEBAOtRQhPAzU32kb0lQD4Zbvrz4z1/uMOXoAURJ8//Dm3SQFuuG+lDwyE4 zkk85mtmqJgbGsA2cQOiv7189VBAHxgvOkc322Riwi5TKErPAk/tU9ay2Zne1S4oDeMiHp9K pgde0OcjKE7fx6PZmB/i0QWqVvm6C20cjFUcjYOs8QH79lh10w0bUuvR8/jk5FJ8Ss2cxDl2 CIB826jCZW2SKsQ1LlRSJIJ9AOfn6fr/m5aBHCEoqAkrI0zK+CT3OTtMTRzoGvyh9Wv2oWVV OjlpUdD5HtxuFrDmps4Z2ZAE3+KCpX0G183hhEKzBRIDv3eC1Wv8J2mG/s+aNRqcgLmWFQcC AwEAAaOCA5kwggOVMA4GA1UdDwEB/wQEAwIBBjASBgNVHRMBAf8ECDAGAQH/AgEAMDwGA1Ud IAQ1MDMwDwYNYIZIAYb6a4FIAwoCBDAPBg1ghkgBhvprgUgDCgIFMA8GDWCGSAGG+muBSAMK AgYwggE/BggrBgEFBQcBAQSCATEwggEtMFUGCCsGAQUFBzAChklodHRwOi8vY29tcHVid2Vi Lm1hbmFnZWQuZW50cnVzdC5jb20vQUlBL0NlcnRzSXNzdWVkVG9FTVNDb21QdWJSb290Q0Eu cDdjMIHTBggrBgEFBQcwAoaBxmxkYXA6Ly9jb21wdWJzaGFkLm1hbmFnZWQuZW50cnVzdC5j b20vb3U9RW50cnVzdCUyME1hbmFnZWQlMjBTZXJ2aWNlcyUyMENvbW1lcmNpYWwlMjBQdWJs aWMlMjBSb290JTIwQ0Esb3U9Q2VydGlmaWNhdGlvbiUyMEF1dGhvcml0aWVzLG89RW50cnVz dCxjPVVTP2NBQ2VydGlmaWNhdGU7YmluYXJ5LGNyb3NzQ2VydGlmaWNhdGVQYWlyO2JpbmFy eTCCAawGA1UdHwSCAaMwggGfMIH+oIH7oIH4hj1odHRwOi8vY29tcHVid2ViLm1hbmFnZWQu ZW50cnVzdC5jb20vQ1JMcy9FTVNDb21QdWJSb290Q0EuY3JshoG2bGRhcDovL2NvbXB1YnNo YWQubWFuYWdlZC5lbnRydXN0LmNvbS9jbj1FbnRydXN0JTIwTWFuYWdlZCUyMFNlcnZpY2Vz JTIwQ29tbWVyY2lhbCUyMFB1YmxpYyUyMFJvb3QlMjBDQSxvdT1DZXJ0aWZpY2F0aW9uJTIw QXV0aG9yaXRpZXMsbz1FbnRydXN0LGM9VVM/Y2VydGlmaWNhdGVSZXZvY2F0aW9uTGlzdDti aW5hcnkwgZuggZiggZWkgZIwgY8xCzAJBgNVBAYTAlVTMRAwDgYDVQQKEwdFbnRydXN0MSIw IAYDVQQLExlDZXJ0aWZpY2F0aW9uIEF1dGhvcml0aWVzMTswOQYDVQQDEzJFbnRydXN0IE1h bmFnZWQgU2VydmljZXMgQ29tbWVyY2lhbCBQdWJsaWMgUm9vdCBDQTENMAsGA1UEAxMEQ1JM MTAfBgNVHSMEGDAWgBTAMkkFZmaDhxlpua6DJQYZiwXXdDAdBgNVHQ4EFgQUIt2i+lhOgz5T iwGAExY11IEVtn8wDQYJKoZIhvcNAQEFBQADggEBAHQ4kWFG0YwlCojUFLo5/Btbxr51qNZL 52Mf5QVC9O09b7YZE1ZcAUJlYxerhKPV66xQAhro9ch/VUYDKu1/qTAX5OGRH5sq5lBO2Rat B7tEyEuY3S6SWXCsJcvyi7eUrPov5Ojo0GsMymqNbdU+Uy/e3I58daQx9BzVGIGXg8iAxt+7 cG4NtiXeCOXXfjPemC/OxuzH9k6SEv16ztlnfOFBJVs5jI1iKCtKDSd74K/k3CgvBK8zEvgL jXzLgWS/pUqIv8jjhAFEu0pfxsXkpn69ORT3pw972+q+A2rg8lilyd9KIzvcpi07orohVeXn Q+67NIscURgNDDtfFRWrq3cwggfXMIIGv6ADAgECAgRMH9d4MA0GCSqGSIb3DQEBBQUAMHcx CzAJBgNVBAYTAlVTMRAwDgYDVQQKEwdFbnRydXN0MSIwIAYDVQQLExlDZXJ0aWZpY2F0aW9u IEF1dGhvcml0aWVzMTIwMAYDVQQDEylFbnRydXN0IEVkdWNhdGlvbiBTaGFyZWQgU2Vydmlj ZSBQcm92aWRlcjAeFw0xMTA3MjgxODAxMjFaFw0xNjA3MjgxODMxMjFaMIGsMQswCQYDVQQG EwJVUzESMBAGA1UECBMJV2lzY29uc2luMSAwHgYDVQQKExdVbml2ZXJzaXR5IG9mIFdpc2Nv bnNpbjEQMA4GA1UECxMHTWFkaXNvbjFVMBEGA1UEBRMKMDAwMDAwMDU1NDAWBgNVBAMTD0Vy aWMgQiBEYWxxdWlzdDAoBgkqhkiG9w0BCQEWG2VyaWMuZGFscXVpc3RAZG9pdC53aXNjLmVk dTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKh4khZd6cTV19M5evwKbBEWDijA DofaXZL3WpVqn2PFr3/g/vkO6wWIF3yKE/MuHt5Q5o4Pbkf5i1vZCOIXoHhrBKozID/lmbeu ea69gW9RpdBwkCUitiwnnzYsrKUxReMV6pUzfK6cRcVIEU/joXHaJSJs3/UuvWE+fC8zFQ0c DBJI4RCdHLvh0VshokZhISF6JsHXKzAgp2CXTrLTTMUyEbtfG5PvDnYpnQTRdaAdQGAg/xnf WM1SSvAI5X/Gd56cMoIuH4w2+1k9IyhYGQAwP4lW4vkGm0eSP10xvqkMA0ZreDeBkQcanIem ERXKM9ppUWQILtSuEqDMcmUFRFcCAwEAAaOCBDMwggQvMA4GA1UdDwEB/wQEAwIFoDArBgNV HRAEJDAigA8yMDExMDcyODE4MDEyMVqBDzIwMTUwMTI3MTUzMTIxWjCCATMGCCsGAQUFBwEB BIIBJTCCASEwUwYIKwYBBQUHMAKGR2h0dHA6Ly9lZHVjYXRpb253ZWIubWFuYWdlZC5lbnRy dXN0LmNvbS9BSUEvQ2VydHNJc3N1ZWRUb0VNU0VkU1NQQ0EucDdjMIHJBggrBgEFBQcwAoaB vGxkYXA6Ly9lZHVjYXRpb25zaGFkLm1hbmFnZWQuZW50cnVzdC5jb20vY249RW50cnVzdCUy MEVkdWNhdGlvbiUyMFNoYXJlZCUyMFNlcnZpY2UlMjBQcm92aWRlcixvdT1DZXJ0aWZpY2F0 aW9uJTIwQXV0aG9yaXRpZXMsbz1FbnRydXN0LGM9VVM/Y0FDZXJ0aWZpY2F0ZTtiaW5hcnks Y3Jvc3NDZXJ0aWZpY2F0ZVBhaXI7YmluYXJ5MCsGA1UdIAQkMCIwDwYNYIZIAYb6a4FIAwoC BDAPBg1ghkgBhvprgUgDCgIFMFgGCWCGSAGG+mseAQRLDElUaGUgcHJpdmF0ZSBrZXkgY29y cmVzcG9uZGluZyB0byB0aGlzIGNlcnRpZmljYXRlIG1heSBoYXZlIGJlZW4gZXhwb3J0ZWQu MCYGA1UdEQQfMB2BG2VyaWMuZGFscXVpc3RAZG9pdC53aXNjLmVkdTCCAaIGA1UdHwSCAZkw ggGVMIH9oIH6oIH3hkZodHRwOi8vZWR1Y2F0aW9ud2ViLm1hbmFnZWQuZW50cnVzdC5jb20v Q1JMcy9FbnRydXN0RURVQ0FUSU9OU1NQQ0EuY3JshoGsbGRhcDovL2VkdWNhdGlvbnNoYWQu bWFuYWdlZC5lbnRydXN0LmNvbS9jbj1FbnRydXN0JTIwRWR1Y2F0aW9uJTIwU2hhcmVkJTIw U2VydmljZSUyMFByb3ZpZGVyLG91PUNlcnRpZmljYXRpb24lMjBBdXRob3JpdGllcyxvPUVu dHJ1c3QsYz1VUz9jZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0O2JpbmFyeTCBkqCBj6CBjKSB iTCBhjELMAkGA1UEBhMCVVMxEDAOBgNVBAoTB0VudHJ1c3QxIjAgBgNVBAsTGUNlcnRpZmlj YXRpb24gQXV0aG9yaXRpZXMxMjAwBgNVBAMTKUVudHJ1c3QgRWR1Y2F0aW9uIFNoYXJlZCBT ZXJ2aWNlIFByb3ZpZGVyMQ0wCwYDVQQDEwRDUkwyMB8GA1UdIwQYMBaAFCLdovpYToM+U4sB gBMWNdSBFbZ/MB0GA1UdDgQWBBSjX9p6AvNODW6BCg5FfXxGJxptGzAJBgNVHRMEAjAAMBkG CSqGSIb2fQdBAAQMMAobBFY4LjADAgSwMA0GCSqGSIb3DQEBBQUAA4IBAQCSQc6gRB27L8OG WuMgsUMYVFcsPNyxn+waiQ+vL2SlomlTxMRLzOgI4OZbds5PzlgQuwZyY/R3lTem3btd+GbT uusk6jToZ6s51o6jCQrRND4AOh7831kKdZm5Dxr6lwvgITuduNOlehiEAFbcBxNyMb7q8YTh 03fVtnn69CmZvgkqc50hDTQ13mXfKRWrSIsnfu3jQeA6WBZgZZUjhzd5Z+q/cxOYiH282/zY HF2tN7iCa1rkOWPwHYgHKQgDfL9oyFFriYrXda1Yogb/T/OzrTxpKLuB21F++eooM6kNRPIS kqQ3iuWYVH0XiWRb2lDAH3jDz6HLh2n6CSJGFFAnMYIDjjCCA4oCAQEwfzB3MQswCQYDVQQG EwJVUzEQMA4GA1UEChMHRW50cnVzdDEiMCAGA1UECxMZQ2VydGlmaWNhdGlvbiBBdXRob3Jp dGllczEyMDAGA1UEAxMpRW50cnVzdCBFZHVjYXRpb24gU2hhcmVkIFNlcnZpY2UgUHJvdmlk ZXICBEwf13gwCQYFKw4DAhoFAKCCAeQwGAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkq hkiG9w0BCQUxDxcNMTEwODI1MTI0NjIzWjAjBgkqhkiG9w0BCQQxFgQUHKKvB17pREy+/oE3 d62+NHbrdj4wXwYJKoZIhvcNAQkPMVIwUDALBglghkgBZQMEAQIwCgYIKoZIhvcNAwcwDgYI KoZIhvcNAwICAgCAMA0GCCqGSIb3DQMCAgFAMAcGBSsOAwIHMA0GCCqGSIb3DQMCAgEoMIGP BgkrBgEEAYI3EAQxgYEwfzB3MQswCQYDVQQGEwJVUzEQMA4GA1UEChMHRW50cnVzdDEiMCAG A1UECxMZQ2VydGlmaWNhdGlvbiBBdXRob3JpdGllczEyMDAGA1UEAxMpRW50cnVzdCBFZHVj YXRpb24gU2hhcmVkIFNlcnZpY2UgUHJvdmlkZXICBEwf13gwgZEGCyqGSIb3DQEJEAILMYGB oH8wdzELMAkGA1UEBhMCVVMxEDAOBgNVBAoTB0VudHJ1c3QxIjAgBgNVBAsTGUNlcnRpZmlj YXRpb24gQXV0aG9yaXRpZXMxMjAwBgNVBAMTKUVudHJ1c3QgRWR1Y2F0aW9uIFNoYXJlZCBT ZXJ2aWNlIFByb3ZpZGVyAgRMH9d4MA0GCSqGSIb3DQEBAQUABIIBADGry6UGAEwkjeEroUIF FXb/gjah1Yv9xgtnVgNSF7BJBi+VpzpheIZqoaUYlvMiDtGmBrGUJJK59vGiQVhMk8nc+cvJ T6dUk2thgyeMG7oeEX1L9kEh+GGuF2tRhGAlhNeN5HC77v3scSibYHbLQf0Lv5j7tGM0IwzH v3MVyLFTid/Ou0p8jSPl5PfEZK5NH80miZJJPEzt8N8kx4JGkvOJ5RTL69IH9QnYtWaPmwRA NJIc3bZDbezYUaPsDtp19I4u/T8rLWcVZVcIspK4+2OS9InkOtpqsVUuhCE7u5mE4j8fyiCH BSqxqB/elESzXWTKn+TJ0WNHLiCT5aTyT/MAAAAAAAA= --------------ms050404030705080301020502--