X-CGP-ClamAV-Result: CLEAN X-VirusScanner: Niversoft's CGPClamav Helper v1.22.2a (ClamAV engine v0.102.2) X-Junk-Score: 0 [] X-KAS-Score: 0 [] Return-Path: Received: from miniserver.rucotec.ch ([213.189.151.242] verified) by post.selbstdenker.com (CommuniGate Pro SMTP 6.3.7) with ESMTPS id 27037465 for webobjects-dev@wocommunity.org; Thu, 30 Dec 2021 05:50:24 +0100 Received-SPF: none receiver=post.selbstdenker.com; client-ip=213.189.151.242; envelope-from=markus.ruggiero@rucotec.ch Received: from localhost (localhost [127.0.0.1]) by miniserver.rucotec.ch (Postfix) with ESMTP id 332D334181E1; Thu, 30 Dec 2021 05:50:03 +0100 (CET) Received: from miniserver.rucotec.ch ([127.0.0.1]) by localhost (miniserver.rucotec.ch [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id pT3WmIwpOWlh; Thu, 30 Dec 2021 05:50:00 +0100 (CET) Received: from smtpclient.apple (c-24-129-101-111.hsd1.fl.comcast.net [24.129.101.111]) by miniserver.rucotec.ch (Postfix) with ESMTPSA id E0E0834181C0; Thu, 30 Dec 2021 05:49:58 +0100 (CET) From: "Markus Ruggiero (rucotec)" Message-Id: Content-Type: multipart/signed; boundary="Apple-Mail=_EEEE9412-5FFB-4D3D-96C1-5FCAEB83D523"; protocol="application/pkcs7-signature"; micalg=sha-256 Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.13\)) Subject: Re: [WO-DEV] Installation on osx Monterey - deployment Date: Wed, 29 Dec 2021 23:49:55 -0500 In-Reply-To: <2D829533-7F42-4D0D-9252-FC38F3160F7A@gmail.com> Cc: WebObjects & WOnder Development To: Stavros Panidis References: <2D829533-7F42-4D0D-9252-FC38F3160F7A@gmail.com> X-Mailer: Apple Mail (2.3654.120.0.1.13) --Apple-Mail=_EEEE9412-5FFB-4D3D-96C1-5FCAEB83D523 Content-Type: multipart/alternative; boundary="Apple-Mail=_D8776237-3CAC-4DB2-B053-0C2628FE8B9E" --Apple-Mail=_D8776237-3CAC-4DB2-B053-0C2628FE8B9E Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Stavros, I cannot see any relevant difference between your build.xml and the one = in my project. When you build your wo-app check the following file: dist/XYZ.woa/Content/UNIX/UNIXClassPath.txt It should have this header: # JVM =3D=3D java # JVMOptions =3D=3D --add-exports = java.base/sun.security.action=3DALL-UNNAMED # JDB =3D=3D jdb # JDBOptions =3D=3D=20 # ApplicationClass =3D=3D ch.kastl.immodata.Application Important is the JVMOptions line! The modifications in the build.xml add = the part to the right of the =3D=3D sign, which is empty with a = non-modified build.xml You can for a test edit the UNIXClassPath.txt file manually on the = deployment system and see whether this then allows your app to start. = You DID set the compiler compatibility to 1.8, did you not? What is the exact error message you get? Is it still complaining about = NSTimestamp? Or is there actually a different message?=20 Other than that I am at a loss. Hope you just made a typo and can fix it. Let me know the outcome. If = there is a different error message then we have to look further ---markus--- > On 29 Dec 2021, at 22:36, Stavros Panidis = wrote: >=20 >=20 >=20 >> On 28 Dec 2021, at 9:20 PM, Markus Ruggierorucotec = > wrote: >>=20 >> Even if you do not go with Maven it is actually very simple. >>=20 >> Edit your build.xml file a little bit (see below). When you ant build = your app one file that gets created is UNIXClasspath.txt (or some such) = that contains header comments that the run script will use. One such = comment is JVMOptions. These are not populated but you can fix this = easily: >>=20 >> build.xml: >>=20 >> in the init.properties target define a variable: >>=20 >> =09 >> add this >>>> >>=20 >> then in the target build.woapp add jvmOptions=3D=E2=80=9C${jvmOptions}=E2= =80=9D as you can see on the next line >>=20 >> >=20 >> All done, build your deployment app with ant and the woapplication = builder will happily put the jvmOptions into the UNIXClasspath.txt file = from where the run script will take it an put into the right place on = the command line. >>=20 >> One time setup, all done. Its work, I have just recently deployed a = Wonder app on Ubuntu 20.something running with JRE 17. >>=20 >> Have fun, IT SIMPLY WORKS! Really, it does. Someone put a lot of = thought into this 15 years ago. >>=20 >> ---markus--- >>=20 >>=20 >=20 > Dear Marcus, >=20 > Probably I am doing something wrong, I am also sure that this is = something very simple, as usual, but sorry, I can=E2=80=99t find what it = is. >=20 > There is no problem with server for sure. The same application = compiled before upgrade to Monterey - Eclipse - Java 17 is deployed with = no problems. >=20 > The new one can=E2=80=99t be started. Following is my build.xml where = I suppose that there is something wrong: >=20 > > >=20 > >=20 > > > > >=20 > > > > > >=20 > > > > > =09 > > > > =09 > >=20 > > > > > > > > > > > >=20 > > > >=20 > > > > > = > > > > > > > > >=20 > > compression=3D"gzip" > longfile=3D"gnu"> > > > > > > > > > compression=3D"gzip" > basedir=3D"${wsdest.dir}/WebObjects" > longfile=3D"gnu" > includes=3D"${build.app.name}.woa/**"> > > >=20 > > > > > > > > > >=20 > > > > >=20 > > > > > >=20 > > > > > > >=20 > > > > > > =09 > > > > >=20 > > > > > > > >=20 > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > >=20 > > >=20 > > > > > >=20 > > = > > > > > > > =09 > > > =20 > =20 > =20 > > > =09 > > > >=20 > > >=20 > > > >=20 > > >=20 > > > > > > > > > > > > > > > > > > > >=20 > Can you please suggest something more? Last chance to save my New Year = Eve. >=20 > Stavros >=20 Markus Ruggiero rucotec GmbH web https://rucotec.ch Steinenvorstadt 79 email markus.ruggiero@rucotec.ch 4051 Basel / Switzerland mobile +41 79 508 4701 --Apple-Mail=_D8776237-3CAC-4DB2-B053-0C2628FE8B9E Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=utf-8 Stavros,

I = cannot see any relevant difference between your build.xml and the one in = my project.

When= you build your wo-app check the following file:

dist/XYZ.woa/Content/UNIX/UNIXClassPath.txt

It should have this = header:

# JVM       =        =3D=3D java
# JVMOptions     =   =3D=3D --add-exports = java.base/sun.security.action=3DALL-UNNAMED
# JDB       =        =3D=3D jdb
# JDBOptions     =   =3D=3D 
# ApplicationClass =3D=3D = ch.kastl.immodata.Application
Important is the JVMOptions line! The = modifications in the build.xml add the part to the right of the =3D=3D = sign, which is empty with a non-modified build.xml

You can for a test edit = the UNIXClassPath.txt file manually on the deployment system and see = whether this then allows your app to start. You DID set the compiler = compatibility to 1.8, did you not?

What is the exact error message you = get? Is it still complaining about NSTimestamp? Or is there actually a = different message? 
Other than that I am at a = loss.

Hope you = just made a typo and can fix it. Let me know the outcome. If there is a = different error message then we have to look further
---markus---

On 29 = Dec 2021, at 22:36, Stavros Panidis <stavros.panidis@gmail.com> wrote:



On 28 Dec 2021, at 9:20 PM, Markus Ruggierorucotec <markus.ruggiero@rucotec.ch> wrote:

Even if you do not go = with Maven it is actually very simple.

Edit your build.xml file a little bit = (see below). When you ant build your app one file that gets created is = UNIXClasspath.txt (or some such) that contains header comments that the = run script will use. One such comment is JVMOptions. These are not = populated but you can fix this easily:

build.xml:

in the init.properties target define a = variable:

= <target name=3D"init.properties"> =
add this >>>> = <property name=3D"jvmOptions" = value=3D"--add-exports = java.base/sun.security.action=3DALL-UNNAMED"/>

then in the target = build.woapp add jvmOptions=3D=E2=80=9C${jvmOptions}=E2=80=9D as you can = see on the next line

<woapplication = name=3D"${build.app.name}" jvmOptions=3D"${jvmOptions}=E2=80= =9D frameworksBas ...........

All done, build your deployment app = with ant and the woapplication builder will happily put the jvmOptions = into the UNIXClasspath.txt file from where the run script will take it = an put into the right place on the command line.

One time setup, all done. Its work, I = have just recently deployed a Wonder app on Ubuntu 20.something running = with JRE 17.

Have fun, IT SIMPLY WORKS! Really, it does. Someone put a lot = of thought into this 15 years ago.

---markus---



Dear Marcus,

Probably I am doing something wrong, I = am also sure that this is something very simple, as usual, but sorry, I = can=E2=80=99t find what it is.

There is no problem with server for = sure. The same application compiled before upgrade to Monterey - Eclipse = - Java 17 is deployed with no problems.

The new one can=E2=80=99t be started. = Following is my build.xml where I suppose that there is something = wrong:

<project name=3D"EasyShop" = default=3D"build" = basedir=3D".">
<target = name=3D"build" depends=3D"init.build,build.woapp,javaclient,ssdd,war,sp= lit,package" />

= <target name=3D"install" depends=3D"init.install,build.woapp,javaclient,ssdd,war,= split,package" />

= <target name=3D"clean" depends=3D"init.properties">
= <delete dir=3D"bin" />
<delete dir=3D"dist" = />
</target>

<!-- basic = initializations  -->
= <target name=3D"init.install" depends=3D"init.properties">
= <tstamp = />
<property name=3D"dest.dir" = value=3D"${wo.apps.root}" = />
= </target>

= <target name=3D"init.build" depends=3D"init.properties">
= <tstamp = />
<property name=3D"dest.dir" = value=3D"dist" = />
</target>

= <!-- property determination  -->
= <target name=3D"init.properties">
= <property name=3D"jvmOptions" value=3D"--add-exports = java.base/sun.security.action=3DALL-UNNAMED"/>

= <property file=3D"build.properties" />

<property name=3D"wolips.properties" = value=3D"${user.home}${file.separator}Library${file.sepa= rator}Application = Support${file.separator}WOLips${file.separator}wolips.properties" />
<property file=3D"${wolips.properties}" />
<condition property=3D"wo.properties.check.failed">
= <not>
= <and>
= <isset property=3D"wo.system.frameworks" />
= <isset property=3D"wo.local.frameworks" />
= </and>
= </not>
= </condition>
= <fail message=3D"The properties = 'wo.system.frameworks' and 'wo.local.frameworks' must be set. Check that = your ${wolips.properties} is correct." = if=3D"wo.properties.check.failed" />

<property name=3D"build.app.name" = value=3D"${project.name}" = />
= <property name=3D"build.app.name.lowercase" value=3D"${project.name.lowercase}" />
</target>

<!-- This copies = webserver resources from app.woa's embedded frameworks into split = install bundle -->
<target = name=3D"split" description=3D"Adds embedded framework webserver = resources to the split install bundle by copying from deployment build = bundle" unless=3D"servletDeployment">
= <property name=3D"wsdest.dir" value=3D"${dest.dir}/Split" = />
= <mkdir dir=3D"${wsdest.dir}"/>
= <copy todir=3D"${wsdest.dir}/WebObjects/${build.app.name}.woa"= verbose=3D"true">
<fileset dir=3D"${dest.dir}/${build.app.name}.woa/Contents">
= <include name=3D"Frameworks/*.framework/WebServerResources/**"/>
= </fileset>
= <fileset dir=3D"${dest.dir}/${build.app.name}.woa">
= <include name=3D"Contents/WebServerResources/**"/>
= </fileset>
= </copy>
= </target>

  = <target name=3D"package" = unless=3D"servletDeployment">
    = <tar destfile=3D"${dest.dir}/${build.app.name}-Application.ta= r.gz"
        = compression=3D"gzip"
        = longfile=3D"gnu">
    =   <tarfileset = dir=3D"${dest.dir}" = mode=3D"750">
    =     <include name=3D"${build.app.name}.woa/${build.app.name}"/>
      </tarfileset>
      <tarfileset dir=3D"${dest.dir}">
    =     <exclude name=3D"${build.app.name}.woa/${build.app.name}"/>
        <include = name=3D"${build.app.name}.woa/**"/>
    =   </tarfileset>
    = </tar>
    <tar destfile=3D"${dest.dir}/${build.app.name}-WebServerResou= rces.tar.gz"
        = compression=3D"gzip"
        = basedir=3D"${wsdest.dir}/WebObjects"
        longfile=3D"gnu"
        includes=3D"${build.app.name}.woa/**">
    = </tar>
</target>

<!-- woproject tasks = -->
<target = name=3D"build.woapp" = depends=3D"compile">
<taskdef name=3D"woapplication" = classname=3D"org.objectstyle.woproject.ant.WOApplication= "/>
= <woapplication = name=3D"${build.app.name}" = jvmOptions=3D"${jvmOptions}"= frameworksBaseURL=3D"/WebObjects/${build.app.name}.woa/F= rameworks" destDir=3D"${dest.dir}" customInfoPListContent=3D"${customInfoPListContent}" principalClass=3D"${principalClass}" webXML=3D"${webXML}" = webXML_CustomContent=3D"${webXML_CustomContent}" servletAdaptor=3D"er.extensions.jspservlet.ERXServletAda= ptor">
= <classes dir=3D"${classes.dir}">
= <includesfile = name=3D"woproject/classes.include.patternset" />
= <excludesfile = name=3D"woproject/classes.exclude.patternset" />
        = <exclude if=3D"javaClient" = name=3D"**/client/**/*.*"/>
= </classes>

= <wsresources = dir=3D".">
= <includesfile = name=3D"woproject/wsresources.include.patternset" />
= <excludesfile = name=3D"woproject/wsresources.exclude.patternset" />
= </wsresources>

= <resources dir=3D".">
= <includesfile = name=3D"woproject/resources.include.patternset" />
= <excludesfile = name=3D"woproject/resources.exclude.patternset" />
        = <exclude if=3D"javaClient" = name=3D"**/client/**/*.*"/>
= </resources>

= <frameworks = root=3D"ProjectLocal" = embed=3D"${embed.ProjectLocal}" eclipse=3D"true" = />
= <frameworks = root=3D"External" = embed=3D"${embed.External}" = eclipse=3D"true" = />
= <frameworks = root=3D"Local" embed=3D"${embed.Local}" eclipse=3D"true" = />
= <frameworks = root=3D"User" embed=3D"${embed.User}" = eclipse=3D"true" = />
= <frameworks = root=3D"System" = embed=3D"${embed.System}" = eclipse=3D"true" = />
<frameworks root=3D"Network" = embed=3D"${embed.Network}" = eclipse=3D"true" = />

<lib dir=3D"Libraries">
= <include name=3D"*.jar" />
= </lib>
= </woapplication>
= </target>

= <target name=3D"javaclient" if=3D"javaClient" = depends=3D"build.woapp">
<mkdir dir=3D"${dest.dir}/${build.app.name}.woa/Contents/WebSer= verResources/Java" />
= <jar basedir=3D"${classes.dir}" excludes=3D"**/server/**/*.*, **/server/**/" jarfile=3D"${dest.dir}/${build.app.name}.woa/Contents/We= bServerResources/Java/${build.app.name}.jar"/>
= </target>

= <target name=3D"war" if=3D"servletDeployment" = depends=3D"ssdd">
<war destfile=3D"${dest.dir}/${build.app.name}.war" webxml=3D"${dest.dir}/${build.app.name}/WEB-INF/web.xml"= >
= <fileset dir=3D"${dest.dir}/${build.app.name}">
= <include name=3D"**" />
= </fileset>
= </war>
</target>

<!-- To use this = target
  =   = 1) create the LICENSE in your project directory
    = = 2) add JavaWOJSPServlet in your WOFrameworks build path
    = = 3) set servlet deployment to true in WOLips Properties
    = -->
<target = name=3D"ssdd" if=3D"servletDeployment" = depends=3D"build.woapp">
<mkdir dir=3D"${dest.dir}/${build.app.name}/WEB-INF/classes" />
<mkdir dir=3D"${dest.dir}/${build.app.name}/WEB-INF/tlds" />
<copy todir=3D"${dest.dir}/${build.app.name}/WEB-INF/">
= <fileset dir=3D"${dest.dir}/${build.app.name}.woa/Contents/">
= <include = name=3D"web.xml" = />
= </fileset>
= </copy>
= <copy todir=3D"${dest.dir}/${build.app.name}/WEB-INF/">
= <fileset dir=3D"..">
= <include = name=3D"LICENSE" = />
= </fileset>
= </copy>
= <copy todir=3D"${dest.dir}/${build.app.name}/WEB-INF/">
= <fileset dir=3D"${dest.dir}">
= <include name=3D"${build.app.name}.woa/**" />
= </fileset>
= </copy>
= <!-- copy the frameworks to the WEBINFROOT/Library = directory -->
<copy todir=3D"${dest.dir}/${build.app.name}/WEB-INF/">
= <fileset dir=3D"${dest.dir}/${build.app.name}.woa/Contents">
= <include name=3D"Library/**" />
= </fileset>
= </copy>
= <copy todir=3D"${dest.dir}/${build.app.name}/WEB-INF/">
= <fileset dir=3D"${dest.dir}/${build.app.name}.woa">
= <include name=3D"Resources/**" />
= </fileset>
= </copy>
= <copy todir=3D"${dest.dir}/${build.app.name}/WEB-INF/lib/">
= <fileset dir=3D"${dest.dir}/${build.app.name}/WEB-INF">
= <include name=3D"**/Resources/**/*.jar" />
= </fileset>
= <mapper type=3D"flatten" />
= </copy>

= <!--  Get the necessary Frameworks from the = webobjects system root instead of the project wrapper -->
= <copy todir=3D"${dest.dir}/${build.app.name}/WEB-INF/lib" file=3D"${wo.system.frameworks}/JavaWOJSPServlet.framewo= rk/WebServerResources/Java/JavaWOJSPServlet_client.jar" />

<copy todir=3D"${dest.dir}/${build.app.name}/WEB-INF/tlds">
= <fileset dir=3D"${wo.system.frameworks}/JavaWOJSPServlet.framewor= k/Resources/">
= <include name=3D"WOtaglib_1_0.tld" />
= </fileset>
= </copy>

= <!-- the WebObject Extensions -->
= <copy todir=3D"${dest.dir}/${build.app.name}/WEB-INF/lib">
= <fileset dir=3D"${wo.extensions}">
= <include name=3D"*.jar" />
= <exclude name=3D"servlet.jar" />
= </fileset>
= <mapper type=3D"flatten" />
= </copy>

= <!-- the Java Client Client-Side Classes   = -->
<copy todir=3D"${dest.dir}/${build.app.name}/WEB-INF/${build.a= pp.name}.woa/Contents/WebServerResources/Java">
= <fileset dir=3D"${wo.local.frameworks}"> 
= <include name=3D"**/WebServerResources/Java/*.jar"/> 
= </fileset> 
= <mapper type=3D"flatten"/>
= </copy>

= <!-- fix the Macos*ClassPath.txt files  = -->
<replaceregexp file=3D"${dest.dir}/${build.app.name}/WEB-INF/${build.ap= p.name}.woa/Contents/MacOS/MacOSClassPath.txt"= match=3D"APPROOT/Resources/Java/${build.app.name.lowerca= se}.jar" replace=3D"APPROOT/${build.app.name}.woa/Contents/Resour= ces/Java/${build.app.name.lowercase}.jar" = byline=3D"true" />
<replaceregexp file=3D"${dest.dir}/${build.app.name}/WEB-INF/${build.ap= p.name}.woa/Contents/MacOS/MacOSXServerClassPath.txt" match=3D"APPROOT/Resources/Java/${build.app.name.lowerca= se}.jar" replace=3D"APPROOT/${build.app.name}.woa/Contents/Resour= ces/Java/${build.app.name.lowercase}.jar" = byline=3D"true" />

<!-- fix the = web.xml file:  the app itself needs build.app.name/Contents = -->
<replaceregexp file=3D"${dest.dir}/${build.app.name}/WEB-INF/web.xml" match=3D"WEBINFROOT/Resources/Java/${build.app.name.lowe= rcase}.jar" replace=3D"WEBINFROOT/${build.app.name}.woa/Contents/Res= ources/Java/${build.app.name.lowercase}.jar" = byline=3D"true" />

<!-- fix the = web.xml file to remove the extra Frameworks/ directory level for the = frameworks -->
<replaceregexp file=3D"${dest.dir}/${build.app.name}/WEB-INF/web.xml" match=3D"WEBINFROOT/Frameworks//" replace=3D"WEBINFROOT/" = byline=3D"true" />
</target>

<target = name=3D"compile" = depends=3D"init.properties">
= <taskdef name=3D"wocompile" classname=3D"org.objectstyle.woproject.ant.WOCompile" />

<mkdir dir=3D"bin" = />
<wocompile srcdir=3D"Sources" = destdir=3D"bin">
= <frameworks = root=3D"ProjectLocal" = embed=3D"false" = eclipse=3D"true" = />
= <frameworks = root=3D"External" = embed=3D"false" = eclipse=3D"true" = />
= <frameworks = root=3D"Local" embed=3D"false" eclipse=3D"true" = />
= <frameworks = root=3D"User" embed=3D"false" = eclipse=3D"true" = />
= <frameworks = root=3D"System" = embed=3D"false" = eclipse=3D"true" = />
= <frameworks = root=3D"Network" = embed=3D"false" = eclipse=3D"true" = />
= <classpath>
= <fileset dir=3D"Libraries">
= <include name=3D"*.jar" = />
= </fileset>
= <fileset dir=3D"${wo.extensions}">
= <include = name=3D"*.jar" = />
= </fileset>
= </classpath>
= </wocompile>
= </target>
</project>

Can you please suggest = something more? Last chance to save my New Year Eve.

Stavros



Markus = Ruggiero


rucotec GmbH              =           web https://rucotec.ch
Steinenvorstadt 79          =       email markus.ruggiero@rucotec.ch
4051 Basel / = Switzerland         mobile +41 79 508 4701








= --Apple-Mail=_D8776237-3CAC-4DB2-B053-0C2628FE8B9E-- --Apple-Mail=_EEEE9412-5FFB-4D3D-96C1-5FCAEB83D523 Content-Disposition: attachment; filename=smime.p7s Content-Type: application/pkcs7-signature; name=smime.p7s Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCCzkw ggUhMIIECaADAgECAhBDXz2PBS4rcSTMoUCPbeA+MA0GCSqGSIb3DQEBCwUAMIGWMQswCQYDVQQG EwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYD VQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50 aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMB4XDTE5MDUyMjAwMDAwMFoXDTIyMDUyMTIzNTk1 OVowKzEpMCcGCSqGSIb3DQEJARYabWFya3VzLnJ1Z2dpZXJvQHJ1Y290ZWMuY2gwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDIAEK8S00IWrMmIpBkw5CcIS9RfaNGWyJOxskmtuYoHWE4 +QYfOO5tlWt4O5F6bTYsRWp1PpLirrdLhQoYIFp0P5Mi0nsBjNVP0zR0jNpDZreNcLcP7wmuIkUY C0fzxFgnRieFFgaXFm5yf46rqAJMVry/uR/KqwvY1d2F2gOb4DmntPp7TJtDsVyWQDtB82Uep+EO 9j71phQuMUb5TyA4aOdSb6UfCev1RgEw8vXrTdf+1rLzRZvIR1syfsqcLVmIO9WSl9mTH7IlZQhx SmTLqSTvTLssRGprVK8dhJl0nDvFuKknUGNxwCwON1ojJdZPgUJi1K+VvkCqDlI61czNAgMBAAGj ggHTMIIBzzAfBgNVHSMEGDAWgBQJwPL8C9qU21/+K9+omULPyeCtADAdBgNVHQ4EFgQUFRQz2DQf fM2xz9tI/Gy05p6XXc0wDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYDVR0lBBYwFAYI KwYBBQUHAwQGCCsGAQUFBwMCMEAGA1UdIAQ5MDcwNQYMKwYBBAGyMQECAQEBMCUwIwYIKwYBBQUH AgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMFoGA1UdHwRTMFEwT6BNoEuGSWh0dHA6Ly9jcmwu c2VjdGlnby5jb20vU2VjdGlnb1JTQUNsaWVudEF1dGhlbnRpY2F0aW9uYW5kU2VjdXJlRW1haWxD QS5jcmwwgYoGCCsGAQUFBwEBBH4wfDBVBggrBgEFBQcwAoZJaHR0cDovL2NydC5zZWN0aWdvLmNv bS9TZWN0aWdvUlNBQ2xpZW50QXV0aGVudGljYXRpb25hbmRTZWN1cmVFbWFpbENBLmNydDAjBggr BgEFBQcwAYYXaHR0cDovL29jc3Auc2VjdGlnby5jb20wJQYDVR0RBB4wHIEabWFya3VzLnJ1Z2dp ZXJvQHJ1Y290ZWMuY2gwDQYJKoZIhvcNAQELBQADggEBACeso6Iombd/K2MXqk+u5cFNAi3kNRv5 t1WMA2YodqQxz/i/H9OxagG8Ukk5IcHgrikpy0dlOgJ9nOGEWJYrzZbLWZCMd7I8NQpT28vnkgKM 51tzAARg7mHu+SPKwvnDfYB8CFNSQ+Wlkq8wJHL9ALuTeGCRdnRmNtit8o/sRV25KoH6+0U2k08U TO5J+bzVendvcfygdf3bPp3+imRIlXJihwb2fg6OOMqVCnUFHKrdJULZ+SWSWNclriu5GbM1pKql d5dIrApf9M9b9XbY89XgHdFHA5bx7taL1Ie1msC23llmUVSYTHjNOqNrprgfKXvao1taAQvpDhzx BQXzO6YwggYQMIID+KADAgECAhBNlCwQ1DvglAnFgS06KwZPMA0GCSqGSIb3DQEBDAUAMIGIMQsw CQYDVQQGEwJVUzETMBEGA1UECBMKTmV3IEplcnNleTEUMBIGA1UEBxMLSmVyc2V5IENpdHkxHjAc BgNVBAoTFVRoZSBVU0VSVFJVU1QgTmV0d29yazEuMCwGA1UEAxMlVVNFUlRydXN0IFJTQSBDZXJ0 aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0xODExMDIwMDAwMDBaFw0zMDEyMzEyMzU5NTlaMIGWMQsw CQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3Jk MRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBB dXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A MIIBCgKCAQEAyjztlApB/975Rrno1jvm2pK/KxBOqhq8gr2+JhwpKirSzZxQgT9tlC7zl6hn1fXj So5MqXUfItMltrMaXqcESJuK8dtK56NCSrq4iDKaKq9NxOXFmqXX2zN8HHGjQ2b2Xv0v1L5Nk1MQ PKA19xeWQcpGEGFUUd0kN+oHox+L9aV1rjfNiCj3bJk6kJaOPabPi2503nn/ITX5e8WfPnGw4VuZ 79Khj1YBrf24k5Ee1sLTHsLtpiK9OjG4iQRBdq6Z/TlVx/hGAez5h36bBJMxqdHLpdwIUkTqT8se 3ed0PewDch/8kHPo5fZl5u1B0ecpq/sDN/5sCG52Ds+QU5O5EwIDAQABo4IBZDCCAWAwHwYDVR0j BBgwFoAUU3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFAnA8vwL2pTbX/4r36iZQs/J4K0A MA4GA1UdDwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdJQQWMBQGCCsGAQUFBwMC BggrBgEFBQcDBDARBgNVHSAECjAIMAYGBFUdIAAwUAYDVR0fBEkwRzBFoEOgQYY/aHR0cDovL2Ny bC51c2VydHJ1c3QuY29tL1VTRVJUcnVzdFJTQUNlcnRpZmljYXRpb25BdXRob3JpdHkuY3JsMHYG CCsGAQUFBwEBBGowaDA/BggrBgEFBQcwAoYzaHR0cDovL2NydC51c2VydHJ1c3QuY29tL1VTRVJU cnVzdFJTQUFkZFRydXN0Q0EuY3J0MCUGCCsGAQUFBzABhhlodHRwOi8vb2NzcC51c2VydHJ1c3Qu Y29tMA0GCSqGSIb3DQEBDAUAA4ICAQBBRHUAqznCFfXejpVtMnFojADdF9d6HBA4kMjjsb0XMZHz tuOCtKF+xswhh2GqkW5JQrM8zVlU+A2VP72Ky2nlRA1GwmIPgou74TZ/XTarHG8zdMSgaDrkVYzz 1g3nIVO9IHk96VwsacIvBF8JfqIs+8aWH2PfSUrNxP6Ys7U0sZYx4rXD6+cqFq/ZW5BUfClN/rhk 2ddQXyn7kkmka2RQb9d90nmNHdgKrwfQ49mQ2hWQNDkJJIXwKjYA6VUR/fZUFeCUisdDe/0ABLTI +jheXUV1eoYV7lNwNBKpeHdNuO6Aacb533JlfeUHxvBz9OfYWUiXu09sMAviM11Q0DuMZ5760CdO 2VnpsXP4KxaYIhvqPqUMWqRdWyn7crItNkZeroXaecG03i3mM7dkiPaCkgocBg0EBYsbZDZ8bsG3 a08LwEsL1Ygz3SBsyECa0waq4hOf/Z85F2w2ZpXfP+w8q4ifwO90SGZZV+HR/Jh6rEaVPDRF/CEG VqR1hiuQOZ1YL5ezMTX0ZSLwrymUE0pwi/KDaiYB15uswgeIAcA6JzPFf9pLkAFFWs1QNyN++niF hsM47qodx/PL+5jR87myx5uYdBEQkkDc+lKB1Wct6ucXqm2EmsaQ0M95QjTmy+rDWjkDYdw3Ms6m SWE3Bn7i5ZgtwCLXgAIe5W8mybM2JzGCA8QwggPAAgEBMIGrMIGWMQswCQYDVQQGEwJHQjEbMBkG A1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0 aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBh bmQgU2VjdXJlIEVtYWlsIENBAhBDXz2PBS4rcSTMoUCPbeA+MA0GCWCGSAFlAwQCAQUAoIIB6TAY BgkqhkiG9w0BCQMxCwYJKoZIhvcNAQcBMBwGCSqGSIb3DQEJBTEPFw0yMTEyMzAwNDQ5NTVaMC8G CSqGSIb3DQEJBDEiBCB2rRuV56JpxqmuvVG/lv2GiddZsgccYHl5g5HpwppH6zCBvAYJKwYBBAGC NxAEMYGuMIGrMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3JlYXRlciBNYW5jaGVzdGVyMRAw DgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdvIExpbWl0ZWQxPjA8BgNVBAMTNVNlY3Rp Z28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQgU2VjdXJlIEVtYWlsIENBAhBDXz2PBS4r cSTMoUCPbeA+MIG+BgsqhkiG9w0BCRACCzGBrqCBqzCBljELMAkGA1UEBhMCR0IxGzAZBgNVBAgT EkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYGA1UEChMPU2VjdGlnbyBM aW1pdGVkMT4wPAYDVQQDEzVTZWN0aWdvIFJTQSBDbGllbnQgQXV0aGVudGljYXRpb24gYW5kIFNl Y3VyZSBFbWFpbCBDQQIQQ189jwUuK3EkzKFAj23gPjANBgkqhkiG9w0BAQsFAASCAQB8wM6bu6Jp P3d+/+Y0HHyPWfzXLE5F2XtAqRlf96tbKZYgKK5ucLgVkfWA9e33cc1fPJ16T4/oIq6aOkZ3xwuy 3DHvhfwN4V7FJiuNTTmX1SrpjDd2EgoYpLNK5iP63NW7NHo8bjinEAmenMJwPjmwwb4ccMUHSsKC 9cST4cNyhiHf6+nz7aQgGJBrg3vU8nXbruVQRSoYYqPa3IsNgcLEKS3DeSfeGyDcGNVL3VfqxidM 5G+zAQmEVcfQWbnZzq/CQDmHQxlMuSp8J6hGTqH/08NwiMdoi8JP9IbUqgXkADnbwNdF06AVv+iN +jU61vxvN2vL1Y0EC+I0l9fe60tZAAAAAAAA --Apple-Mail=_EEEE9412-5FFB-4D3D-96C1-5FCAEB83D523--