Return-Path: Delivered-To: apmail-ibatis-user-java-archive@www.apache.org Received: (qmail 43871 invoked from network); 12 Aug 2005 21:17:01 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur.apache.org with SMTP; 12 Aug 2005 21:17:01 -0000 Received: (qmail 31850 invoked by uid 500); 12 Aug 2005 21:17:00 -0000 Delivered-To: apmail-ibatis-user-java-archive@ibatis.apache.org Received: (qmail 31505 invoked by uid 500); 12 Aug 2005 21:16:59 -0000 Mailing-List: contact user-java-help@ibatis.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user-java@ibatis.apache.org Delivered-To: mailing list user-java@ibatis.apache.org Received: (qmail 31492 invoked by uid 99); 12 Aug 2005 21:16:59 -0000 Received: from asf.osuosl.org (HELO asf.osuosl.org) (140.211.166.49) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 12 Aug 2005 14:16:59 -0700 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests= X-Spam-Check-By: apache.org Received-SPF: neutral (asf.osuosl.org: local policy) Received: from [129.41.63.135] (HELO fecls-01.atlarge.net) (129.41.63.135) by apache.org (qpsmtpd/0.29) with SMTP; Fri, 12 Aug 2005 14:17:19 -0700 Received: from mail-16ps.atlarge.net ([129.41.63.14]) by fecls-01.atlarge.net with Microsoft SMTPSVC(5.0.2195.6713); Fri, 12 Aug 2005 16:03:04 -0500 X-MimeOLE: Produced By Microsoft Exchange V6.5.7226.0 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----_=_NextPart_001_01C59F81.3AEC409B" Subject: RE: Clob Issue Date: Fri, 12 Aug 2005 16:03:03 -0500 Message-ID: <9AEC997E8B6FF84A8F1FDDB12935E788E3AF5F@mail-16ps> X-MS-Has-Attach: X-MS-TNEF-Correlator: <9AEC997E8B6FF84A8F1FDDB12935E788E3AF5F@mail-16ps> Thread-Topic: Clob Issue Thread-Index: AcWfXqeHp+J2d88JQM+QVgTD9iahhgAHvYMa From: "Steve Biondi" To: X-OriginalArrivalTime: 12 Aug 2005 21:03:04.0328 (UTC) FILETIME=[3B3B8080:01C59F81] X-Virus-Checked: Checked by ClamAV on apache.org X-Spam-Rating: minotaur.apache.org 1.6.2 0/1000/N This is a multi-part message in MIME format. ------_=_NextPart_001_01C59F81.3AEC409B Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Just to let you know, the upgrade only partially solves the problem. The = updated driver still has a hard limit of 32766 characters for a string. = Setting the "SetBigStringTryClob=3Dtrue" solves this too. Try inserting = a 60000 char string into a CLOB column.=20 =20 I wrote a quick example to generate the exception text for this case: =20 java.sql.SQLException: setString can only process strings of less than = 32766 chararacters at = oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:158= ) at = oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:206= ) at = oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:305= ) at = oracle.jdbc.driver.OraclePreparedStatement.setStringInternal(OraclePrepar= edStatement.java:5220) at = oracle.jdbc.driver.OraclePreparedStatement.setString(OraclePreparedStatem= ent.java:5191) at TestBigClob.main(TestBigClob.java:28) =20 Here's where I configure the connection: =20 String url =3D "jdbc:oracle:thin:uname/pword@server:1521:sid"; Class.forName("oracle.jdbc.OracleDriver"); Connection conn =3D null; PreparedStatement pstmt =3D null; Properties props =3D new Properties(); // props.put("SetBigStringTryClob", "true"); conn =3D DriverManager.getConnection(url, props); ... If I uncomment the props.put line with SetBigStringTryClob, no = exception. =20 For the iBatis basic datasource, the following might work: =20 =20 We do something like this when using the Tomcat Simple JDBC Datasource. = The Apache DBCP component uses bean getters/setters to configure the = underlying driver, and "connectionProperties" is a collection property. = DBCP apparently is smart enough to do this right, as it works in our = Tomcat instances. =20 Here's an example of this DBCP config in Tomcat server.xml: =20 =20 url jdbc:oracle:thin:@server:1521:sid =20 driverClassName oracle.jdbc.OracleDriver =20 username user =20 password password =20 connectionProperties SetBigStringTryClob=3Dtrue; =20 Regards, =20 Steve B. =20 ________________________________ From: Nathan Maves [mailto:Nathan.Maves@Sun.COM] Sent: Fri 2005-08-12 9:52 AM To: user-java@ibatis.apache.org Subject: Re: Clob Issue I have updated the BLOB/CLOB page in the wiki to reflect this new info. Nathan On Aug 12, 2005, at 10:24 AM, Craig Swift wrote: > Hey Everyone, > > First off thanks for the assistance, appreciate it a lot. I tried both > suggestions. The first being setting the driver property > "SetBigStringTryClob" to true and the second getting the latest 10g > drivers from Oracle. It looks like the one that did the trick was the > updated drivers from Oracle. In fact I didn't need the property string > in there after I updated the driver. ;) Thanks again for the=20 > assistance! > > > Nathan Maves wrote: > > >> Steve, >> >> You almost had it! >> >> After checking the source code you just need to prepend "Driver." in >> front of your property name. >> >> // Additional Driver Properties prefix >> private static final String ADD_DRIVER_PROPS_PREFIX =3D "Driver."; >> >> >> So ..... >> >> >> >> >> ... >> >> >> >> >> >> Should do the trick. I will verify that is works in the morning and >> if so I will append all that we have learned to the BLOB/CLOB wiki! >> >> Nathan >> >> >> On Aug 11, 2005, at 11:57 PM, Steve Biondi wrote: >> >> >> >> >>> I've always used an external JDBC DataSource or a previously >>> configured connection with iBatis, so I'm not exactly sure. From >>> glancing at the SimpleDataSource code, you should be able to set >>> the property as is in the JDBC section of the config file and it >>> should get passed to the DataSource create method and thereby be >>> set in the driver. I would try adding this element to the >>> element: >>> >>> >>> >>> >>> ... >>> >>> >>> >>> >>> Someone can correct me if I'm wrong about that. The prop should >>> pass through to the driver. >>> >>> Steve >>> >>> -----Original Message----- >>> From: Nathan Maves [mailto:Nathan.Maves@Sun.COM] >>> Sent: Thu 2005-08-11 6:29 PM >>> To: user-java@ibatis.apache.org >>> Subject: Re: Clob Issue >>> >>> Steve, >>> >>> How would one go about setting this property when using the jakarta >>> connection pool build into ibatis? >>> >>> Nathan >>> >>> On Aug 11, 2005, at 5:13 PM, Steve Biondi wrote: >>> >>> >>> >>> >>> >>>> Is this with Oracle? If so, the string can only be up to 4000 >>>> characters long if you use setString even if the underlying column >>>> is a CLOB and you tell the driver that. With bigger strings, you >>>> need to use the CLOB-specific API stuff. >>>> >>>> A nice workaround is to use the Oracle10g JDBC driver and set the >>>> following connection property: >>>> >>>> SetBigStringTryClob=3Dtrue; >>>> >>>> Then, you can pass any size string to setString, and the JDBC >>>> driver will internally do the "clob" work. You can also define your >>>> maps using simply "string". >>>> >>>> FYI - the Oracle10g driver works well with both Oracle9i and 10g >>>> databases. We support both DBs and make extensive use of clobs in >>>> our iBatis stuff. >>>> >>>> Steve B. >>>> >>>> From: Craig Swift [mailto:Craig.Swift@Sun.COM] >>>> Sent: Thu 2005-08-11 3:33 PM >>>> To: user-java@ibatis.apache.org >>>> Subject: Clob Issue >>>> >>>> Hello, >>>> >>>> Has anyone seen this type of error before when trying to use=20 >>>> Clobs in >>>> IBatis? >>>> >>>> javax.servlet.ServletException: Error executing update. Cause: >>>> com.ibatis.common.jdbc.exception.NestedSQLException: >>>> --- The error occurred in recognition/dao/ibatis/mapping/ >>>> Nomination.xml. >>>> --- The error occurred while applying a parameter map. >>>> --- Check the updateNomination-InlineParameterMap. >>>> --- Check the parameter mapping for the 'writeUp' property. >>>> --- Cause: java.sql.SQLException: Data size bigger than max size >>>> for this type: 4236 >>>> >>>> I'm using a String as the underlining object and specifying the >>>> JDBC type as a clob in the sql map. It works for inserts/updates/ >>>> deletes until the String size becomes to large. I was under the >>>> impression that a CustomType Hnadler wasn't necessary. Any >>>> information would be appreciated, thanks! >>>> >>>> Craig S >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>>> >>> >>> >>> >>> >>> >>> > > ------_=_NextPart_001_01C59F81.3AEC409B Content-Type: application/ms-tnef; name="winmail.dat" Content-Transfer-Encoding: base64 eJ8+IgUVAQaQCAAEAAAAAAABAAEAAQeQBgAIAAAA5AQAAAAAAADoAAEIgAcAGAAAAElQTS5NaWNy b3NvZnQgTWFpbC5Ob3RlADEIAQ2ABAACAAAAAgACAAEEgAEADwAAAFJFOiBDbG9iIElzc3VlAJoE AQWAAwAOAAAA1QcIAAwAEAADAAMABQALAQEggAMADgAAANUHCAAMABAAAwADAAUACwEBCYABACEA AAAxRjFDN0U0NzFFNjgxMTRDOEZBMjM3MTE1M0E5Q0MxNQAaBwEDkAYAJDYAADcAAAADADYAAAAA AEAAOQCbQOw6gZ/FAR4APQABAAAABQAAAFJFOiAAAAAAAgFHAAEAAAAzAAAAYz1VUzthPSA7cD1B U1AtT05FO2w9TUFJTC0xNlBTLTA1MDgxMjIxMDMwM1otNjIyODMAAB4ASQABAAAADwAAAFJlOiBD bG9iIElzc3VlAABAAE4AgIR6OV6fxQEeAFoAAQAAAA0AAABOYXRoYW4gTWF2ZXMAAAAAAgFbAAEA AAA/AAAAAAAAAIErH6S+oxAZnW4A3QEPVAIAAAAATmF0aGFuIE1hdmVzAFNNVFAATmF0aGFuLk1h dmVzQFN1bi5DT00AAAIBXAABAAAAGgAAAFNNVFA6TkFUSEFOLk1BVkVTQFNVTi5DT00AAAAeAF0A AQAAAA0AAABOYXRoYW4gTWF2ZXMAAAAAAgFeAAEAAAA/AAAAAAAAAIErH6S+oxAZnW4A3QEPVAIA AAAATmF0aGFuIE1hdmVzAFNNVFAATmF0aGFuLk1hdmVzQFN1bi5DT00AAAIBXwABAAAAGgAAAFNN VFA6TkFUSEFOLk1BVkVTQFNVTi5DT00AAAAeAGYAAQAAAAUAAABTTVRQAAAAAB4AZwABAAAAFQAA AE5hdGhhbi5NYXZlc0BTdW4uQ09NAAAAAB4AaAABAAAABQAAAFNNVFAAAAAAHgBpAAEAAAAVAAAA TmF0aGFuLk1hdmVzQFN1bi5DT00AAAAAHgBwAAEAAAALAAAAQ2xvYiBJc3N1ZQAAAgFxAAEAAAAb AAAAAcWfXqeHp+J2d88JQM+QVgTD9iahhgAHvYMaAB4AdAABAAAAHAAAAHVzZXItamF2YUBpYmF0 aXMuYXBhY2hlLm9yZwAeABoMAQAAAA0AAABTdGV2ZSBCaW9uZGkAAAAAHgAdDgEAAAALAAAAQ2xv YiBJc3N1ZQAAAgEJEAEAAADvLwAA6y8AALPqAABMWkZ1M0zvdgMACgByY3BnMTI1gjIDQ2h0bWwx AzA/AQMB9wqAAqQD4wIAY2jBCsBzZXQwIAcTAoD/EAMAUARWCFUHshHVDlEDAd0Q1zIGAAbDEdUz BEYQ2dkS72Y0EG8RezUYXxcfxQIANgPGVGFoA3ECgLcR4wjvCfc7Hm8OMDUfj/cfbwpBDiA4IgMg oSE8EeGdDGBjAFALCQFkMzYRYMkLpTQgEAIqXA6yAZBeZxTwCqMR4ydYNBTwPAAhRE9DVFlQRQAg SFRNTCBQVQBCTElDICItLxAvVzNDKvBEVEQRKgQzLjIq8EVOIs4+KF0n/y0xMTgpYCoSNyx/LY8w ADMm8C7gRUG+RC89DvEwXzLfLmQ2DvCgPE1FVEEHsEE10Jg9IkcJ8ASQYXQFsKIiG1BPTlQsQFQ2 YIkF4UV4GOFuZ2UGUh52EzE4sQCQAiAgNi7UNS4BwDI5cDAsbjQ/CS5zNzcpYFRJVEyKRS8+NA7w UmU6G1BxHgBiIEkEEApQLd41/SlgLzy/Ou8vtT4BQDAxvwswD0QENRFgPEJPRI5ZQ30mYUSfZzk2 KWAARElWIGRpcj3dRCByQ3BD4wAhIAAASTHnCrFKIhjgXHEDIUmVEWC5Q7k2NEl6S0ct7DQuwZJG N0EgZgDQZT0HE6IgHeM9IzBQgyAAkLp6T5AySWsYMAMwYxPwxwOyAdBLKUp1cwVANuAkIGwRQCB5 CGAga9Bub3csU+BoOGBCHF1HNXUOADbAAQAgAiBstHkgCrF0BzFXMXMG8Dc4sAQgVQJwA2ACYGVt 7i4dAFURVpBkNtAJgEjgfwUQOLJTwAMQAyAY8AQgYa9awQsgVT9HU2wHcGkFQMJvSfAzMjc2SIAY 4v8A0FnAGRBPUAWxWxBTwAUQvzhAWSAGYAJAXwFU8yJfURBCaWdTXuNUcnn9PnI9SUAKUDcQW49H YlgH2wQAU+FvWSFg8CALgBkg/1eBX6FbECZQULIY4l7FZFFDU/FbEENMT0JQAnWcbW5ZIGHPR28x NUiB/i9PEklpSXdLuwHASXcKovdq+AqALewwMYErUEjAak//Ta9HH0gvST9KT2svTG9wT/9Oj0+f UK9Rv1LMaN9p73AfBUP1OCbwJm5ic3DjAoBz91wnYQFAdb9sL/9tP25Pb1+Aj3F/co9zn3Sv/4M/ ds+IX3jvef97D3wfUr04SSB3A2BZwFsBcXWBDeBrIGV4YW0LUP84YFPxZ4+J8jhQNqOXkVUR35cw khAFMDkyWcB4BUBecv1jg2Na4D5Afh9/L2r/hC//hT+GT4dfkA+Jf4qPi5+Mr/+Nv47Pj9+Q75H5 k4+UlH0v6YEMPFWm23WoiqtvrHT9kqk4pJWtjx3BFdCu35vf75zvox+ldilRL7D6ud+4H/+7v7zP ga+Cv56vn7+gz6Hf/78Po/+lD6Yfpy+oP6lPql//sq+sf7VPrp/PT7C/sc/Pvw+z77T/tg/MyGph dmHELnPMkC5TUUCAmhb/xq+6X7tvzMjZ79MvvU++X3/ib9dfktIBIZNP4UbS7yD/PlAZIWCEl9/I 45uAA6BXFP8DYJIQBBFe1AQgXTFUIAQRf1UAA5FdaV31Lew1gEXRUvfK+cuwC4BlCoHlL+Nv5H// 8t/QZwqj5y/oP+lPEWA20B/rL8jjBbAA0FQgLmpkyGJjLloELkQ20AGgeZuRRXIDYP1wVQADYHf2 U8yQ3Jco8w/0H/Uv1G//1X8CL+aP2K/Zv/nf/Zzb0vo6AGA4AS/eP99P4F8Iv/8MbwA/Dk8FH+a/ +D/5T8zX/inwD/Ef8iz67/v//Q/+H///LxH/Ew8CXwNvEK8Ujwaf3wevD98JzwrXUtA2Ij8Mr/8N vw7PKc8tfyFPL18mLxUv/xY/F08YXxlvGn8bjxyfHa//Hr8fzzKfM680vyQPJR81Lx8nPyhPMH8q bwpuMzA1/0NPLb8uzy/fSt9Oj0JfUG//Rz82PzdPOF85bzp/O488n8s9rz6+T1+jUHKaMPdgrGVk 6sCZgW2ZQHTcEO3qpklmUO/QbpJwQa9Uf/9Vj0TfRe9l7/afSMtYn1Ifz80TYM9h1QsTNTL6EGT/ /07PT99Q72yPcO9kD3LPaO//af9YD1kfWi9bP1xPXV9eb/9ff2CPYZ/twWNfdt9372aP/2efiB95 b2rPe490v23/bwz4MTkxhy9xL3I/c0+Ov/+TH4Y/lP+LH4wver97z3zfF33vfv+ADVTtUHRCaYRn Q0jQYi5tYfIQ/4WPmQ+aH4i/ic+mv1cPSR//nb+W76MbLCQLj6mPlF+Vb/+tT7DPpM+yr6mvVz+d I6wf/54/n0m3X7Oqt+nCz8PfxO/3xf+3v4EoMpuytuXFX8ZvN+vCusXG3Dm2scPBIGT2aatw68By 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 8z/8//4P/x//AC8BPwJP9O/kmx4CBY/4b7uTVUxwbAhfBp+TVS8IH/8JL/k/+k/7XxAPAz8ETxNf /xRvFX8WjxefGK8LjwyfIaNvHC8PD5NV6AI6W9DocjopR6I6QH5UOiigMjH6OpiAZB8PHT8NNh6/ H8//D88Q3xHvKJ8ZzxrfK+8s//8uDyO/JM8NRfbPJx8oLy8f/zAvMT8pjyqfOg84PzlPPV//Pm8/ fzIPMx/2fzVPNl9DD/87XzxvQz9Bb0J/TD9NT05f/09vUH9Rj0QvB39Gn0evjmIGZJfgfoFDbGFz c/5OVz9Vfw0PV49Yn1RPSb//Ss9Uf1KvU79jj2SfZa9mv/9nz2jfW78eD13fXu+TZCHk+i7oAi7o VVoDbt9tDyXP/28fcC9gL2E/Yk9132ovaz//e798z33fc48zn0X/dn93j/9+f3+Phl9473n/iW+H n4iv/4y/jc+O34Fvgn9Fr4Svhb//ia+Kv4vPj7+Qz5Hfm5+cr/+dv57Pn9+g75OPVq+V/5cP/wrB IrGmb6SvXM+mv6fPo3//mO+Z/6Ovod+i77JPs1+0b/+1f7aPt5+qf23Pus+tr6jJ/72vu991D73v vv+u/7APsR//w2+4/7oPyU/KX8tvwR+C3/+VP8QPxR/MD80f0+/Gf8eP/9b/1S/WP9pP21/cb87/ 0A//lO/SP9NP1z/YT9lf3U/eX//fb+kv6j/rT+xf7W/uf+Ef36Xv44/kn+KCWoB3cWAjn//yb6vP 9H/1j+Wf5q/nv/ov/++f8K8ADwEfAi8DPwRPBV//+D+8z/pf+2/2jwivCb/C7/8Lz/vP/N/97/7/ Bc8G3xZf/xdvGH8Zjw8/0L/jHxIvG/8/Gi8bPyIPFJ8VryI/PFNgVFJPTkcmaSVAYv8nACefIs8j 3yrvK/8tDxyf/x2v4k8f3yDvMJ8l7yb/MM//Lv8wDznPOt877zz/Pg8/Hx8xv/NPNC81P0HjY29u ETiwY3RpR6BQcm/mcFowR/Blc0UPQ0/5b/9FX0ZvNn83jzifP29Af0GP/1GvUr9Tz1TfVe9W/0nf Cm8XS/9ND04RUzPAQmlnBFN0cpBuZ1RyeWBDbG9iPV/AXKA7/1zPWv8Qb10PXh9OH08vUD//Y99Y H1kvab9qz2vfYY8eP38zn2R/ZY9mn2evaL9ytTn6MnXgLyk/cGdvD20/bk8Xb19wb0sjUkiwb3Vy +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 Ah8DLwQ/BU//Bl8Hbwh/CY//7wD/DE8Kz/8L3w/vEP8SDxMfFC8VPxZP/wyvDb8OzxePGJ8crx2/ Hs//H98g7yH/Iw8kHxp/G48kT/8lXylvKn8rjyyfLa8uvy/P/zDfJz8oTylfMh8zLzc/OE//OV86 bzt/PI89nz6vNQ82H/8+3z/vQ/9FD0YfRy9IP0lP/0pfS29Bz0LfTi9Mr02/Uc//Ut9T71T/Vg9O /1APUR9XT/9YX1xvXX9ej1+fwk/jf7Ih12GfYiBiyTxg+HdbgI8A/aBwLpDBZY9ir2EvWh9bL/9r H2mfaq9uv2/PcN9x73L//2vvbP91v3Q/dU95X3pve3//fI99n3aPd5+AX37ff++D//+FD4Yfhy+I P4Evgj+K/4l//4qPjp+Pr5C/kc+S34vPjN//lZ+UH5Uvlj+XT5hfmW+af3+bj5yfna+hT6Jfo2+k eDXBpSEvRk9OVKV5n+f/noCf9rHyqVimeLHjpn+e9rQ3MqgxUKVwpDwwn4CxqEBESVaor6zPZ6nh J2U/se+fIzU4qDFCT7xEWa5NrfCzb7XxN6gxUEhUTUylcH24IAAeADUQAQAAADMAAAA8OUFFQzk5 N0U4QjZGRjg0QThGMUZEREIxMjkzNUU3ODhFM0FGNUZAbWFpbC0xNnBzPgAAHgBHEAEAAAAPAAAA bWVzc2FnZS9yZmM4MjIAAAsA8hABAAAAHwDzEAEAAAAqAAAAUgBFACUAMwBBACAAQwBsAG8AYgAg AEkAcwBzAHUAZQAuAEUATQBMAAAAAAALAPYQAAAAAEAABzAPUpSdfZ/FAUAACDBdLPg6gZ/FAQMA 3j+vbwAAAwDxPwkEAAAeAPg/AQAAAA0AAABTdGV2ZSBCaW9uZGkAAAAAAgH5PwEAAABXAAAAAAAA ANynQMjAQhAatLkIACsv4YIBAAAAAAAAAC9PPUFTUC1PTkUvT1U9QklaQVRMQVJHRS9DTj1SRUNJ UElFTlRTL0NOPVNURVZFQi5TQ0hFTUFMT0cAAB4A+j8BAAAAFQAAAFN5c3RlbSBBZG1pbmlzdHJh dG9yAAAAAAIB+z8BAAAAHgAAAAAAAADcp0DIwEIQGrS5CAArL+GCAQAAAAAAAAAuAAAAAwD9P+QE AAADABlAAAAAAAMAGkAAAAAAAwAdQAAAAAADAB5AAAAAAB4AMEABAAAAEQAAAFNURVZFQi5TQ0hF TUFMT0cAAAAAHgAxQAEAAAARAAAAU1RFVkVCLlNDSEVNQUxPRwAAAAAeADJAAQAAABUAAABOYXRo YW4uTWF2ZXNAU3VuLkNPTQAAAAAeADNAAQAAABUAAABOYXRoYW4uTWF2ZXNAU3VuLkNPTQAAAAAe ADhAAQAAABEAAABTVEVWRUIuU0NIRU1BTE9HAAAAAB4AOUABAAAAAgAAAC4AAAADAHZA/////wsA KQAAAAAACwAjAAAAAAADAAYQ+pjGPQMABxAYFQAAAwAQEAAAAAADABEQDwAAAB4ACBABAAAAZQAA AEpVU1RUT0xFVFlPVUtOT1csVEhFVVBHUkFERU9OTFlQQVJUSUFMTFlTT0xWRVNUSEVQUk9CTEVN VEhFVVBEQVRFRERSSVZFUlNUSUxMSEFTQUhBUkRMSU1JVE9GMzI3NjZDSEEAAAAAAgF/AAEAAAAz AAAAPDlBRUM5OTdFOEI2RkY4NEE4RjFGRERCMTI5MzVFNzg4RTNBRjVGQG1haWwtMTZwcz4AALR0 ------_=_NextPart_001_01C59F81.3AEC409B--