Re: Unexpected fragment length exception when retreiving ACLs/SIDs on a file that has explicit permission granted to a deleted user
Michael B Allen <[email protected]> Tue, 28 Apr 2015 11:28:50 -0400
| Newsgroups | gmane.network.samba.java |
|---|---|
| Message-ID | <CAGMFw4i+uA_mQ9V9cST2_otNb75wgQWxc+N7DAjthZ0V7bRJJQ@mail.gmail.com> |
--089e01538cbe005f100514ca8529 Content-Type: multipart/alternative; boundary=089e01538cbe005f0e0514ca8528 --089e01538cbe005f0e0514ca8528 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi Colin, This is a buffering error at the DCERPC layer. During the DCERPC bind, the client submits max_xmit and max_recv values that negotiate the largest buffer size that the client will transmit / receive. This value is hardcoded in JCIFS at 4280. This is observed Windows behavior and I don't recall ever seeing an issue with buffering like you're experiencing. But apparently the server is returning a buffer that is much larger (28757). At first glance, this might look like a decoding error. Meaning the buffer begin decoded as a DCERPC message is actually total garbage. But I don't think this is the case because there is a DCERPC header sanity check just before the frag size check. So it looks like a legit DCERPC response. It's just that the fragment size is way to large for JCIFS to handle. I do recall that the max_xmit and max_recv values are actually suggested sizes and that the server can actually return more data. But I could be mis-remembering that. The Japanese characters could be involved but I somewhat doubt that it has anything to do with the ability to interpret the actual characters. It's more likely just a buffer size issue. If the SID names are Japanese strings, their encoding could be unexpectedly large. Just as a sanity check, try examples/SidLookup.java from the JCIFS package with one of the offending SIDs. What gets printed on the console might not be legible unless your on a Japanese workstation but it might still be enlightening. I would need to see a packet capture to diagnose this further (do not post captures to the mailing list! - send them to me directly). If you can get good network packet captures of a Windows client successfully resolving the SIDs and then another of JCIFS failing to resolve those same SIDs, then I would be happy to at least look at them. But to get good captures might be tricky. You might need to write a JCIFS program that takes a list of SIDs and calls resolveSids. And for Windows you might need to reboot the workstation, start the capture and then look at the ACL on the file using the file browser. If you look at the ACL of the file in the file browser, are the group / account names displayed correctly / successfully? Are there a lot? Unfortunately if it turns out that JCIFS is not correctly handling some kind of dynamic buffering, that could be a difficult fix. But you might be able to workaround by catching that particular exception and then recursively re-trying resolveSids with fewer SIDs (meaning divide the operation into 2 SID arrays and if it still fails, recur on each array with some depth limit). But I'm just thinking out loud. I would need to see captures to make a proper diagnosis. Mike PS: Do NOT send network packet captures to the mailing list. Send them only to me directly. On Mon, Apr 27, 2015 at 3:09 PM, Colin Dean <[email protected]> wrote: > Hello, > > I=E2=80=99m encountering an unexpected exception while retrieving SIDs/AC= Ls for a > file served by Windows Server 2012 Standard Edition. We=E2=80=99re runnin= g on > Windows in this instance, if that matters. > > *Caused by: java.io.IOException: Unexpected fragment length: 28757* > * at > jcifs.dcerpc.DcerpcPipeHandle.doReceiveFragment(DcerpcPipeHandle.java:96)= * > * at jcifs.dcerpc.DcerpcHandle.sendrecv(DcerpcHandle.java:220) = * > * at jcifs.smb.SID.resolveSids(SID.java:94)* > * at > com.vivisimo.connector.smb.SMBConnector.resolveSids(SMBConnector.java:629= ) > ... 10 more* > > This is approximately where our code hands off to jcifs to resolve the > SIDs: > > SID[] sidsToResolveArray =3D sidsToResolve.toArray(new SID[0]); > try { > LsaPolicyHandle policyHandle =3D null; > try { > > policyHandle =3D handle.openPolicyHandle(file); > SID.resolveSids(handle.getHandle(), policyHandle, sidsToResolveArray); > > } finally { > if (policyHandle !=3D null) { > LOGGER.debug("Closing Policy handle for [" + file + "]"); > policyHandle.close(); > } > policyHandle =3D null; > } > } catch (IOException e) { > throw new ConnectorException(e); > } > > It dies shortly after we call SID.resolveSids() there in the middle of th= e > inner try. > > We have a few theories: > > 1. This filesystem has a lot of files with Japanese characters in the > filename. We considered that perhaps jCIFS or our software using it lacks > support for Japanese characters, but we set up a testing environment with= a > bunch of files with Japanese filenames and it works for us. We=E2=80=99re= pretty > certain that our configuration mirrors that of the erring environment, bu= t > there might be subtle differences were are not able to replicate (e.g. re= al > data instead of made up test data). > > 2. All of the files that are failing (we=E2=80=99re crawling a filesystem= ) share > one trait: they have what appears in the Windows properties a permitted > user that shows as =E2=80=9Cunknown user=E2=80=9D, which may be an artifa= ct remaining after > the user was removed but its explicit permissions remained. Processing on= a > directory that has no =E2=80=9Cunknown users=E2=80=9D yields no failures. > > This leads me to believe that jCIFS is failing on unknown users. However, > looking through the source, I don=E2=80=99t see an obvious way to detect = this. > > The obvious workaround appears to be =E2=80=9Cclean your unknown users=E2= =80=9D but I > think this could be detectable and loggable during our processing of the > share. > > I=E2=80=99d appreciate input on this. > > > ------------------------------ > > > *Colin DeanAdvisory Software Engineer & Tech Lead, Watson Explorer > Connectivityemail: **[email protected]* <[email protected]> > * | tel: +1 (412) 315-2066 <%2B1%20%28412%29%20315-2066>Find me on:* [ima= ge: > LinkedIn: http://linkedin.com/in/colindean] > <http://linkedin.com/in/colindean> [image: Github: > http://github.com/colindean] <http://github.com/colindean> [image: > Launchpad: http://launchpad.net/~colindean] > <http://launchpad.net/~colindean> > [image: IBM Watson Group][image: Watson on Facebook: > http://www.facebook.com/ibmwatson] <http://www.facebook.com/ibmwatson>[im= age: > Watson on Twitter: https://twitter.com/@ibmwatson] > <https://twitter.com/@ibmwatson>[image: Watson on YouTube: > http://www.youtube.com/user/IBMWatsonSolutions/videos] > <http://www.youtube.com/user/IBMWatsonSolutions/videos> > ------------------------------ > > > --=20 Michael B Allen Java Active Directory Integration http://www.ioplex.com/ --089e01538cbe005f0e0514ca8528 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div>Hi Colin,<br><br>This is a buffering error at the DCE= RPC layer. During the DCERPC bind, the client submits max_xmit and max_recv= values that negotiate the largest buffer size that the client will transmi= t / receive. This value is hardcoded in JCIFS at 4280. This is observed Win= dows behavior and I don't recall ever seeing an issue with buffering li= ke you're experiencing.<br><br>But apparently the server is returning a= buffer that is much larger (28757). At first glance, this might look like = a decoding error. Meaning the buffer begin decoded as a DCERPC message is a= ctually total garbage. But I don't think this is the case because there= is a DCERPC header sanity check just before the frag size check. So it loo= ks like a legit DCERPC response. It's just that the fragment size is wa= y to large for JCIFS to handle.<br><br></div><div>I do recall that the max_= xmit and max_recv values are actually suggested sizes and that the server c= an actually return more data. But I could be mis-remembering that.<br><br><= /div><div>The Japanese characters could be involved but I somewhat doubt th= at it has anything to do with the ability to interpret the actual character= s. It's more likely just a buffer size issue. If the SID names are Japa= nese strings, their encoding could be unexpectedly large.<br><br></div><div= >Just as a sanity check, try examples/SidLookup.java from the JCIFS package= with one of the offending SIDs. What gets printed on the console might not= be legible unless your on a Japanese workstation but it might still be enl= ightening.<br></div><div><br></div><div>I would need to see a packet captur= e to diagnose this further (do not post captures to the mailing list! - sen= d them to me directly). If you can get good network packet captures of a Wi= ndows client successfully resolving the SIDs and then another of JCIFS fail= ing to resolve those same SIDs, then I would be happy to at least look at t= hem. But to get good captures might be tricky. You might need to write a JC= IFS program that takes a list of SIDs and calls resolveSids. And for Window= s you might need to reboot the workstation, start the capture and then look= at the ACL on the file using the file browser.<br><br></div><div>If you lo= ok at the ACL of the file in the file browser, are the group / account name= s displayed correctly / successfully? Are there a lot?<br></div><div><br></= div><div>Unfortunately if it turns out that JCIFS is not correctly handling= some kind of dynamic buffering, that could be a difficult fix. But you mig= ht be able to workaround by catching that particular exception and then rec= ursively re-trying resolveSids with fewer SIDs (meaning divide the operatio= n into 2 SID arrays and if it still fails, recur on each array with some de= pth limit). But I'm just thinking out loud. I would need to see capture= s to make a proper diagnosis.<br></div><div><br></div><div>Mike<br><br></di= v><div>PS: Do NOT send network packet captures to the mailing list. Send th= em only to me directly.<br></div><div><div><div class=3D"gmail_extra"><br><= div class=3D"gmail_quote">On Mon, Apr 27, 2015 at 3:09 PM, Colin Dean <span= dir=3D"ltr"><<a href=3D"mailto:[email protected]" target=3D"_blank">= [email protected]</a>></span> wrote:<br><blockquote class=3D"gmail_qu= ote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex= "><div><p><font face=3D"Helvetica" size=3D"4">Hello,</font><br><br><font fa= ce=3D"Helvetica" size=3D"4">I=E2=80=99m encountering an unexpected exceptio= n while retrieving SIDs/ACLs for a file served by Windows Server 2012 Stand= ard Edition. We=E2=80=99re running on Windows in this instance, if that mat= ters.</font><br><br><i><font face=3D"Times-Roman" size=3D"4">Caused by: jav= a.io.IOException: Unexpected fragment length: 28757</font></i><br><i><font = face=3D"Times-Roman" size=3D"4">=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0 at jcifs.dcerpc.DcerpcPipeHandle.doReceiveFragment(Dcerp= cPipeHandle.java:96)</font></i><br><i><font face=3D"Times-Roman" size=3D"4"= >=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at jcifs.dcer= pc.DcerpcHandle.sendrecv(DcerpcHandle.java:220) </font></i><br><i><font fac= e=3D"Times-Roman" size=3D"4"> at jcifs.smb.SID.resolveSids(SID.ja= va:94)</font></i><br><i><font face=3D"Times-Roman" size=3D"4">=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 at com.vivisimo.connector.= smb.SMBConnector.resolveSids(SMBConnector.java:629) ... 10 more</font></i><= br><br><font face=3D"Times-Roman" size=3D"4">This is approximately where ou= r code hands off to jcifs to resolve the SIDs:</font><br><br><font face=3D"= Courier New" size=3D"4"> SID[] sidsToResolveArray =3D sidsToReso= lve.toArray(new SID[0]);</font><br><font face=3D"Courier New" size=3D"4"> = try {</font><br><font face=3D"Courier New" size=3D"4"> = LsaPolicyHandle policyHandle =3D null;</font><br><font face=3D"Courier= New" size=3D"4"> try {</font><br><br><font face=3D"Courier = New" size=3D"4"> policyHandle =3D handle.openPolicyHandl= e(file);</font><br><font face=3D"Courier New" size=3D"4"> = SID.resolveSids(handle.getHandle(), policyHandle, sidsToResolveArray);</f= ont><br><br><font face=3D"Courier New" size=3D"4"> } finally= {</font><br><font face=3D"Courier New" size=3D"4"> if (= policyHandle !=3D null) {</font><br><font face=3D"Courier New" size=3D"4"> = LOGGER.debug("Closing Policy handle for ["= + file + "]");</font><br><font face=3D"Courier New" size=3D"4"> = policyHandle.close();</font><br><font face=3D"Courie= r New" size=3D"4"> }</font><br><font face=3D"Courier New= " size=3D"4"> policyHandle =3D null;</font><br><font fac= e=3D"Courier New" size=3D"4"> }</font><br><font face=3D"Cour= ier New" size=3D"4"> } catch (IOException e) {</font><br><font f= ace=3D"Courier New" size=3D"4"> throw new ConnectorException= (e);</font><br><font face=3D"Courier New" size=3D"4"> }</font><b= r><br><font face=3D"Times-Roman" size=3D"4">It dies shortly after we call S= ID.resolveSids() there in the middle of the inner try.</font><br><br><font = face=3D"Times-Roman" size=3D"4">We have a few theories:</font><br><br><font= face=3D"Times-Roman" size=3D"4">1. This filesystem has a lot of files with= Japanese characters in the filename. We considered that perhaps jCIFS or o= ur software using it lacks support for Japanese characters, but we set up a= testing environment with a bunch of files with Japanese filenames and it w= orks for us. We=E2=80=99re pretty certain that our configuration mirrors th= at of the erring environment, but there might be subtle differences were ar= e not able to replicate (e.g. real data instead of made up test data).</fon= t><br><br><font face=3D"Times-Roman" size=3D"4">2. All of the files that ar= e failing (we=E2=80=99re crawling a filesystem) share one trait: they have = what appears in the Windows properties a permitted user that shows as =E2= =80=9Cunknown user=E2=80=9D, which may be an artifact remaining after the u= ser was removed but its explicit permissions remained. Processing on a dire= ctory that has no =E2=80=9Cunknown users=E2=80=9D yields no failures.</font= ><br><br><font face=3D"Times-Roman" size=3D"4">This leads me to believe tha= t jCIFS is failing on unknown users. However, looking through the source, I= don=E2=80=99t see an obvious way to detect this.</font><br><br><font face= =3D"Times-Roman" size=3D"4">The obvious workaround appears to be =E2=80=9Cc= lean your unknown users=E2=80=9D but I think this could be detectable and l= oggable during our processing of the share.</font><br><br><font face=3D"Tim= es-Roman" size=3D"4">I=E2=80=99d appreciate input on this.</font><br><br><b= r> </p><span class=3D"HOEnZb"><font color=3D"#888888"> </font></span><table border=3D"0" cellpadding=3D"0" cellspacing=3D"0"><tbod= y><tr valign=3D"top"><td colspan=3D"3" bgcolor=3D"#FFFFFF" valign=3D"middle= " width=3D"592"><hr style=3D"color:#cccccc" align=3D"left" size=3D"2" width= =3D"100%"></td></tr><tr valign=3D"top"><td colspan=3D"2" bgcolor=3D"#FFFFFF= " width=3D"483"><b><font face=3D"Verdana" size=3D"2">Colin Dean<br>Advisory= Software Engineer & Tech Lead, Watson Explorer Connectivity<br>email: = </font></b><a href=3D"mailto:[email protected]" target=3D"_blank"><b><fo= nt color=3D"#3399FF" face=3D"Verdana" size=3D"2">[email protected]</font= ></b></a><b><font face=3D"Verdana" size=3D"2"> | tel: <a href=3D"tel:%2B1%2= 0%28412%29%20315-2066" value=3D"+14123152066" target=3D"_blank">+1 (412) 31= 5-2066</a><br>Find me on:</font></b><font face=3D"Verdana" size=3D"2"> </fo= nt><a href=3D"http://linkedin.com/in/colindean" target=3D"_blank"><img src= =3D"cid:1__=3D0ABBF4A7DFFA8CE28f9e8a93df938690918c0AB@" alt=3D"LinkedIn: ht= tp://linkedin.com/in/colindean" height=3D"16" border=3D"0" width=3D"16"></a= ><font face=3D"Verdana" size=3D"2">=C2=A0</font><a href=3D"http://github.co= m/colindean" target=3D"_blank"><img src=3D"cid:2__=3D0ABBF4A7DFFA8CE28f9e8a= 93df938690918c0AB@" alt=3D"Github: http://github.com/colindean" height=3D"1= 6" border=3D"0" width=3D"16"></a><font face=3D"Verdana" size=3D"2">=C2=A0</= font><a href=3D"http://launchpad.net/~colindean" target=3D"_blank"><img src= =3D"cid:3__=3D0ABBF4A7DFFA8CE28f9e8a93df938690918c0AB@" alt=3D"Launchpad: h= ttp://launchpad.net/~colindean" height=3D"16" border=3D"0" width=3D"16"></a= ><font face=3D"Verdana" size=3D"2">=C2=A0 </font></td><td rowspan=3D"2" bgc= olor=3D"#FFFFFF" valign=3D"bottom" width=3D"109"><div align=3D"right"><img = src=3D"cid:4__=3D0ABBF4A7DFFA8CE28f9e8a93df938690918c0AB@" height=3D"101" a= lign=3D"bottom" width=3D"105"></div></td></tr> <tr valign=3D"top"><td bgcolor=3D"#FFFFFF" valign=3D"bottom" width=3D"165">= <img src=3D"cid:5__=3D0ABBF4A7DFFA8CE28f9e8a93df938690918c0AB@" alt=3D"IBM = Watson Group" height=3D"23" align=3D"bottom" width=3D"163"></td><td bgcolor= =3D"#FFFFFF" valign=3D"bottom" width=3D"314"><a href=3D"http://www.facebook= .com/ibmwatson" target=3D"_blank"><img src=3D"cid:6__=3D0ABBF4A7DFFA8CE28f9= e8a93df938690918c0AB@" alt=3D"Watson on Facebook: http://www.facebook.com/i= bmwatson" height=3D"16" align=3D"bottom" border=3D"0" width=3D"16"></a><a h= ref=3D"https://twitter.com/@ibmwatson" target=3D"_blank"><img src=3D"cid:7_= _=3D0ABBF4A7DFFA8CE28f9e8a93df938690918c0AB@" alt=3D"Watson on Twitter: htt= ps://twitter.com/@ibmwatson" height=3D"16" align=3D"bottom" border=3D"0" wi= dth=3D"16"></a><a href=3D"http://www.youtube.com/user/IBMWatsonSolutions/vi= deos" target=3D"_blank"><img src=3D"cid:8__=3D0ABBF4A7DFFA8CE28f9e8a93df938= 690918c0AB@" alt=3D"Watson on YouTube: http://www.youtube.com/user/IBMWatso= nSolutions/videos" height=3D"16" align=3D"bottom" border=3D"0" width=3D"16"= ></a></td></tr> <tr valign=3D"top"><td colspan=3D"3" bgcolor=3D"#FFFFFF" valign=3D"middle" = width=3D"592"><hr style=3D"color:#cccccc" align=3D"left" size=3D"2" width= =3D"100%"></td></tr></tbody></table><br><br> <p></p></div> </blockquote></div><br><br clear=3D"all"><br>-- <br><div class=3D"gmail_sig= nature">Michael B Allen<br>Java Active Directory Integration<br><a href=3D"= http://www.ioplex.com/" target=3D"_blank">http://www.ioplex.com/</a></div> </div></div></div></div> --089e01538cbe005f0e0514ca8528-- --089e01538cbe005f100514ca8529 Content-Type: image/jpeg; name="07261987.jpg" Content-Disposition: inline; filename="07261987.jpg" Content-Transfer-Encoding: base64 Content-ID: <5__=0ABBF4A7DFFA8CE28f9e8a93df938690918c0AB@> X-Attachment-Id: c1851606562e6e81_0.5 /9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAPAAA/+4ADkFkb2JlAGTAAAAAAf/b AIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoKDBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxsc Hx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f Hx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgAFwCjAwERAAIRAQMRAf/EAHMAAAICAwEBAAAAAAAAAAAA AAYHBQgBAwQAAgEBAAAAAAAAAAAAAAAAAAAAABAAAQMDAwMDAwIFAwUAAAAAAwECBBEFBgASByET CDFBImEyFFFxUnIjMxVCYoI0JRYXGBEBAAAAAAAAAAAAAAAAAAAAAP/aAAwDAQACEQMRAD8AZLuf 5ciLZ/8AD4sW5XK9XK42uJASYEC77bRXP7pWNZ82qq0VUpT30HfN5R5PtsQs+58XTRW+M1SSixrn b5ZWjalXOYATt71RPZNBzZf5HYrj8HDLsKKSdZMvUqtnI9BLFGB4WFcQatduVneXclU+1eugbSKi pVOqL6LoFwzmm1m5j/8AWkaA8p2Cc890QiINhWA/IcJB7V3KjdqKu71X6aCA5c8jU44yRLRKxeVO jPEwgbkhuyEjnJVzGK4T0VWdK0doOrI/IEGPcW2jObpj8mNKu8p8UVhMTtSGbHmTe5zxou3YDd9n +pNBnMvIAGP4HjuZw8fk3e230HfN2SbWw/iz4mIgyN/uPVnWnVNBnDOeJ2UYPfsqj4jOCy0MYSHD 3OI6dvVyKkd6CSu1WUXajtBG8UeT1mz/AC5uMvsxbPKMEpIpCnaZCEDRzhbUYNUXZud/x0Hdy15B s4+y6HjI8ckXuVNhMnDdHNsdRxCjViDQZHLRAK6ugBh+aQiDkEHhEx44lPyntkoqCqqoncVAfH0X 10BVk/k/Z7Pi+Nz4tlPcchyiOkmDYRE+TBueomq8rWOVVe9qtYjRqrqL6aDRhHk1Lvub2zCrzh8u w3uc945DZJXN7O0Sla7tECInyRvoqJ+66CQ5Y8mcWwW6usEGGS/5CxUaeIB6CEFzkq1hC7SKr1qn xa1frRdAK495iwm3UUHNcYk4+Eypsmsc8yMaq03EC8QibU93M3L/ALdAW8seRIMAm29B48e9We4x Ay496AbtxVcdxdomk7ZGK7YLf93ovpoCy08pWu+cZlzqwxS3JgopDrahLWR3xNq+KqNR/wDUR3T7 evRU6KmgAuOPJx+b5fGx2PiEyKhHuHMmqbusi7WPcimRAt21cPb8lTroHloPaCotgmXiGXAZNmtz btcx5Tkqxrc47YqFVWoiopnte1lGqq9U0DeyPO+fGWSW6BxsEErtu2HZd481w+n3tjNGBxVb6o1H 9dAtA4tht9Dwti1rkvmWSXAymGU5hoMzZBIVTueKru28chznI2q06dV9VBo8a8iJB4fmTsjdS6YO 2TbL6NXfJx7am1lHL9zjD2UX3cugXvHuOzrXyNxrcrsn/fsmBfr7d3KlF704THtb16psFsSnstdA YeWuLLeuJJE8TN0mxSRTm0+7tKvZKn7I0u9f5dAksovUzmInFWGQj1kpbCPuJelUOLeEqvT2dsgK 9K/x6AfNyJIf47h4+VXf5cd+WP8Aier1hon5KJt9a/lupT6aCyPJ99FxPwAG2xCIK5tggstuVq9V kkFtKZPq1qEJX+Kn66CsEmdhuKY/x/kuKXYMnM7YZ0m/RGNK1yue9DiY5zmNaqDYihfRVrX9NBdS 2Y7gmV3aw8nAid+8JAYlpuPdMijjHGRdiia9BKtJJEXcxVRV+iUBFeMlgtOQXHlqy3cH5NsnS4op Ufe8e9immrTeNzHp6ey6CY5d4Nya1X3GMw4thjKbGACjDspHqRUZHK8o3sU76kRe65r2793pt66D VhvNtmvPIMWDn+EDsXIQRqC1XMgnblJR6jDtK1DCQivc1lHORyu+ugh/DWzWq83PKMvue2bkojja w5aOeL8ruEKZK+jyuRU3foip7roHD5DYzYL5xNkBLqMfdtcM063ynIm8UgLd7EY71Tuq1Br+qLoK xX+6XCd4kY+OY5z2wcoWLEc6qr2WxZJESq+zXEc1P0RKaCc42vt74LzK0x70RxcFzOHFmJKVF2Dc YbHd36PA5+wqJ6sVHU+1NAUeIr2EzvkUg3I9jzDcx7VqiosiQqKipoLQ6D2gqhZFuNnfg1xBCW6m hZNkZUt8I8Z8gyEajUaJFK1HuStXNRaonroHGXlPPJAnDtXGd5fNVKCScaHEBVeiK8ilf0r60TQL zDsYNac04maW6QLnN/MyqVdywZAXhZLkxWuIAKI7c/tL8Xo1F2r60TQZ5Nxl0nkudHi3GELj++nt x+RDkkhYOEe3OVzRSFV6IBZbe01u5Pk7QHuWxnP5349kDUaBFBu6U7g2uVHBbTYNXI9yfyotNAd5 dCtM7FbxCvBxxbXKhnDNknc1gxhINzXvc96o1qNRa1Vemgqn4hYtChciXObcZ9vfOiw3R7ZGDMiy CFeV9SlE0RHuVGDEqKtPR2gij4Xj3/1J0uls/wDHVvST3G/Pibe7/wBS6Oo+5v3fk/0dm2temg7/ ACVn8jXfM4iZBZwRcVs00zLQ08gcQU8aEarnOeYrdznjYifH0RfroJrlx3DT+K4r8WtmLOyi6JHH LDDmQRng9wLikIxyERf6ZWNGqe6LoJPgHIeZLPxvcLeHH2XG3W6EaVjErchmyTvkNRYzSCKrHMTc Ren7V0EJ4szM7g8jXuOlrjltV7kdzI5QjDO6AQI5ZANVBFfs7hnqz5p7fvoC7nMPMoeYbFdsEDJl xIVtEQkJD7IhjDPJcRhQqQaPVwtqfqvSnWmgEYg80z7nTF79yCCFhjLS+K+322WccaXJUMhxADAA 70OZxZHxqjdtOidfUPifh2U4lyFcsq4LvFuyKEdXEuNhgyo8ogGEfVwjR2kq8SE/tqxd7fT2qoa8 vk+RPJdvbb8xjQ8Hw8RRuus6Wn+Oi/eiMcVZRXlJRy/FjV2q6letFQNPPVvfC48xfDcOZBn8ewuz KFlDZQEYa6IssZg99StC5zkc4itb1RfolNAwj2m25n4/Wy2ckmt2J3AbGhx6dLkCCNHRwo2MZjyE VHoUf3o1erVqntoAfxUj5Djjs0kQIcW9zRDhMHDiz470JQpWuVpAfkonrVKoiKnvoLV2OfMuFrBM mQSW2QZHK+EZyOIOjlREcrelVREXpoO7Qf/Z --089e01538cbe005f100514ca8529 Content-Type: image/jpeg; name="07122817.jpg" Content-Disposition: inline; filename="07122817.jpg" Content-Transfer-Encoding: base64 Content-ID: <6__=0ABBF4A7DFFA8CE28f9e8a93df938690918c0AB@> X-Attachment-Id: c1851606562e6e81_0.6 /9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAPAAA/+4ADkFkb2JlAGTAAAAAAf/b AIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoKDBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxsc Hx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f Hx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgAEAAQAwERAAIRAQMRAf/EAGsAAQEAAAAAAAAAAAAAAAAA AAYCAQEBAQAAAAAAAAAAAAAAAAADBAUQAAEEAQIFBQEAAAAAAAAAAAIBAwQFBgARIXESExQxUSJC FTURAAIABgIDAAAAAAAAAAAAAAECABEhMRIDQXFRMhP/2gAMAwEAAhEDEQA/AKy3Lc3XN7iBAuLL +lIjxIkeQ+no+QNtttgXJERE1v6dOv5gkC0Zzu2RAJvDVWcjoZmF+VbZE9Y2kuuOxWU65+aISTXu RCQl6u+PT8gL67rylmrh5BJAGXnvqFqMamsuoK5PhGTlmVvYRoVk2ZWUmRGfYhSTRN3yNtxt1sdv YkVF1Rq3pgASLDkQb62yJreFtjDyW1ybCCELZ6LWt1SWIPxJrbXlMPL33nCeEQ6kAuJ8eep1KKj+ tcpVFoQgkrfiP//Z --089e01538cbe005f100514ca8529 Content-Type: image/jpeg; name="07293534.jpg" Content-Disposition: inline; filename="07293534.jpg" Content-Transfer-Encoding: base64 Content-ID: <7__=0ABBF4A7DFFA8CE28f9e8a93df938690918c0AB@> X-Attachment-Id: c1851606562e6e81_0.7 /9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEBAQEBAQEB AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAARCAAQABADASIA AhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAACAcK/8QAHRAAAgIDAQEBAAAAAAAAAAAABAUDBgEC CAcJEv/EABQBAQAAAAAAAAAAAAAAAAAAAAj/xAAdEQADAAIDAQEAAAAAAAAAAAADBAUBAgYHFAgV /9oADAMBAAIRAxEAPwDWt7j9F6XzL0I58f8AZ6hYRqgVV69aKf6FU1bJrmPDIQqJkrsyIyEIkyGJ qtI0AsVHlsoudjYk7VYtNUNjcGjgXvzqPqv3ZlRLQg8gFoq5M1uthOU1+3LXCJAHJqpARJDJbS1A ZNj37yvZ1IcDj/lOssJEcRBEg8Yaf7f4muXXptaGguvmNVQ1yPfKxiw88uTL0RSQTvBsziGsgHqa 2qtEzLEOu2ytnQcFA7xY2Eb4lnkn0rPHvGvn/H9NZJa2eXabhadwCLteWQ2gBDuVZoRqvBXKYiC4 UiNfsYbKIBgw8vecwiU9mdnA2BkPpS6On9StGHKJQ7RszEpPgPtQYSiuJkKM/I1WdwKgV3dW3wwd T0OZ2oBAAK2iGTslHJYv1LY+hJ6xrwo/RHGrdTkH66mshOlyabRAAynC6CI2nm39Jjwtk1aPknY0 kMttsu71sKJA/9k= --089e01538cbe005f100514ca8529 Content-Type: image/jpeg; name="07593660.jpg" Content-Disposition: inline; filename="07593660.jpg" Content-Transfer-Encoding: base64 Content-ID: <8__=0ABBF4A7DFFA8CE28f9e8a93df938690918c0AB@> X-Attachment-Id: c1851606562e6e81_0.8 /9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAUDBAQEAwUEBAQFBQUGBwwIBwcHBw8LCwkMEQ8SEhEP ERETFhwXExQaFRERGCEYGh0dHx8fExciJCIeJBweHx7/2wBDAQUFBQcGBw4ICA4eFBEUHh4eHh4e Hh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh7/wAARCAAQABADASIA AhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAABwQF/8QAIhAAAgICAgICAwAAAAAAAAAAAQIDBAUG ERIHFBMxACJS/8QAFQEBAQAAAAAAAAAAAAAAAAAABQf/xAAiEQABAgUEAwAAAAAAAAAAAAABAhEA AxIhMQUiQVEWcZH/2gAMAwEAAhEDEQA/AFXb5UxnkDac3r+w4yCZq9P1lXL1BIk7zhMl8MUz/Gtj 161YKZQE78/1Jzr+Otv2Obb6VXZ9t16xUlxgaZat2n8ZuvFRRYYgrGVissd9+SACLCAFuoCF5yet XNZxuK2y9bGSw1OaD1rS2uYpAbgEQCjgMGNP74AWPqT+vX8p2a546zV/NT46o1/OZEu1QJ7aRtNJ LMVKL0ZmmIMPKN1jLdupA+wRqqwLU+iS/Nvpx3FG8LkVUrVN5uEppyAC5I2tud7DvMf/2Q== --089e01538cbe005f100514ca8529 Content-Type: image/jpeg; name="07898436.jpg" Content-Disposition: inline; filename="07898436.jpg" Content-Transfer-Encoding: base64 Content-ID: <1__=0ABBF4A7DFFA8CE28f9e8a93df938690918c0AB@> X-Attachment-Id: c1851606562e6e81_0.1 /9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAPAAA/+4ADkFkb2JlAGTAAAAAAf/b AIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoKDBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxsc Hx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f Hx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgAEAAQAwERAAIRAQMRAf/EAGoAAAMAAAAAAAAAAAAAAAAA AAMFBgEAAwEBAAAAAAAAAAAAAAAAAgMEBQYQAAIBBAICAwEAAAAAAAAAAAECAxEEBQYAEiITITEH FBEAAgICAQUBAAAAAAAAAAAAAQIRAwAEEiFRYSIUBf/aAAwDAQACEQMRAD8Avdc1jEZDUrG8TFLd 5Gcxo0zRwsrs0Qd+zP5ly1TzestK2EEwucrRriyvkAS0+MS7rrSYjXry/mwqWPWKT+e6WFEZJlUl CGUdlPYfB5TRcrtAacf8pUSVjB6V+va3reuWWMyq3S3dpe+6ZVjU0jWL108mU17D6pwtr817G5qV gp3wdDaWteBBkPOSeY/VMTk9O2jAwrdTZLN5U3OOHQMpid1oGIYkOQKUAPGnUK2I8rCpBypLfVgZ 6tOf/9k= --089e01538cbe005f100514ca8529 Content-Type: image/jpeg; name="07745300.jpg" Content-Disposition: inline; filename="07745300.jpg" Content-Transfer-Encoding: base64 Content-ID: <2__=0ABBF4A7DFFA8CE28f9e8a93df938690918c0AB@> X-Attachment-Id: c1851606562e6e81_0.2 /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAkGBwgHBgkIBwgKCgkLDRYPDQwMDRsUFRAWIB0iIiAd Hx8kKDQsJCYxJx8fLT0tMTU3Ojo6Iys/RD84QzQ5Ojf/2wBDAQoKCg0MDRoPDxo3JR8lNzc3Nzc3 Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzf/wAARCAAQABADASIA AhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAABAUH/8QAIhAAAQQCAQUBAQAAAAAAAAAAAQIDBBEF EgYAEyExURQy/8QAFQEBAQAAAAAAAAAAAAAAAAAAAAL/xAAVEQEBAAAAAAAAAAAAAAAAAAAAEf/a AAwDAQACEQMRAD8A0LO8rg4SdGhSI8h999KVDtJSddlhCSdiLtRqhf0+Oi8N5Q5ne7HdjObR2GXD N0S2l4rBPhAJ19fT6PQuUYTLz+Q4/IY91lr8aShKnE2pvZQKzWp2tIqrTR831Tw+Dg4uWHcdFeZJ ZRH17qikoT/NgmiR6v31cH//2Q== --089e01538cbe005f100514ca8529 Content-Type: image/gif; name="07267702.gif" Content-Disposition: inline; filename="07267702.gif" Content-Transfer-Encoding: base64 Content-ID: <4__=0ABBF4A7DFFA8CE28f9e8a93df938690918c0AB@> X-Attachment-Id: c1851606562e6e81_0.4 R0lGODlhaQBlAPcAAKrU68zv+mq33efwz/P6/W25lrLRkqnazIbJkSyq3Dmu3iiUzczo09jjiG3G 6IbD5Fyv2eTmeeT0+kW446rYs5/EQLbevI/CecTkyTWnTY2yQNfr9SWHs/X45karTcjelvr881e0 jqHc8ObstOnslYHEhtvz+7rl9qPUpjOss9vpt3rO76fg9V23anbFr7Hk9rve8ITU8qbITJXU63LL 78nXaG+2tsjXVpi7QJPY8kSi1IW6bYa7Q5vd9cLZikOsV+nspuHswqvLWHvK6njS8YrQ6yyZSuf0 6XXBhu3027nLOMTl5qm6N1zF62m7b7rUYka03DSnjbfKRTar0XfIx8LTRFWxV9Hq0jWlcHW/emi9 e4jGytvu3ZrTpkq4x1qozPX32GmtkbDc4qzEOlDC7L/QN7vh5JfGmIi/mHnL19XZMprEYN/nm/L5 9KfQfGG/5nS5XLfTcLbcq06yZE3G7ozMok/A5tXv+lW62dHm5+Dszli3s6DLcpLKipbNp8nr977p +MrSNqvHcMLJM53X1Ve5yY/CQDmwy1q3o7jfzSqZ0nCzes/hnjSnVZTRurnJXlS44oTGuJLH3Njd TIjI1DKYvy+lyD+y2C+besfUdUSmg2XB2nq4Rp3Vx5m4WMzdscfitb3WfWGqSFOruLHPZD+puNXc Wdrw7TWd0qOzQI3V8TW25IDM43PL5dXlq1mxSnSjRXq+a0uwfIXS3Hi83iaGnUGPkUqzqEWtrPH0 zWi1SJDOztPs3cnk89PfeLzUVdLXM5jAScLn9ieOw8jPWmGval2cd4/CXUy943+tWtHWQCex4u34 /WfN8EHC7NjbP5LJ5pjQmvHyv+/xsuDjZd3gWef3/FrK743b9MHo+H2jPlq3eVGkp6LOh6G9b1nD 4VCsS3vQ502tV8bp90GVv16+vejx3I/BT2LDxOLz8tDls6/f8EGobUKgS1mqbyqwximu222mdXWs fUKdzJLX8IevRK3PZYy4Xs/caL3WcE+q1k+5u2qrUXC6UjS+6////yH5BAAAAAAALAAAAABpAGUA AAj/AP8JHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNqhGiiWTNAG0OKjEjHn0lrI1OqPGjSZICV MFe29Pcyps2QM2ve3HkxJ8+Y2JrFIGDRJ8UezYgQ/XmQRcseRVvqjBigJRGmB3u0dLZ0olGJzVo2 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 pdyq7rEKNlfLMXGautzLvqwcAQEAOw== --089e01538cbe005f100514ca8529 Content-Type: image/jpeg; name="07066234.jpg" Content-Disposition: inline; filename="07066234.jpg" Content-Transfer-Encoding: base64 Content-ID: <3__=0ABBF4A7DFFA8CE28f9e8a93df938690918c0AB@> X-Attachment-Id: c1851606562e6e81_0.3 /9j/4AAQSkZJRgABAQEAYABgAAD/4QBoRXhpZgAASUkqAAgAAAAEABoBBQABAAAAPgAAABsBBQAB AAAARgAAACgBAwABAAAAAgAAADEBAgASAAAATgAAAAAAAABgAAAAAQAAAGAAAAABAAAAUGFpbnQu TkVUIHYzLjUuMTAA/9sAQwABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB/9sAQwEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB/8AAEQgAEAAQAwEiAAIRAQMRAf/E AB8AAAEFAQEBAQEBAAAAAAAAAAABAgMEBQYHCAkKC//EALUQAAIBAwMCBAMFBQQEAAABfQECAwAE EQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkqNDU2Nzg5OkNERUZH SElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1 tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+v/EAB8BAAMBAQEBAQEB AQEAAAAAAAABAgMEBQYHCAkKC//EALURAAIBAgQEAwQHBQQEAAECdwABAgMRBAUhMQYSQVEHYXET IjKBCBRCkaGxwQkjM1LwFWJy0QoWJDThJfEXGBkaJicoKSo1Njc4OTpDREVGR0hJSlNUVVZXWFla Y2RlZmdoaWpzdHV2d3h5eoKDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5usLDxMXG x8jJytLT1NXW19jZ2uLj5OXm5+jp6vLz9PX29/j5+v/aAAwDAQACEQMRAD8A/t5+Mf7SHw7+C+u+ B/B2vS3+reOfiNeXFt4V8JaDDb3mqyWVkobU/EurLPd2kel+FtH3IdT1WV3ddxjsrW9uEeFfEfC3 xF134y/HXw1o/hDxnPeeHfh8r+JfidJ4e1DUxo0YuNNuodC8G6jbQx22lWuqXXiNre/tUkudZvNR 8M6VrKXsdnJ5M58j/bi/Zr+OPx3vXfwz411bw5ofh/8A4nei2XhufxZa3Gu3Nrbx2segamPCE9vN fWep2l5rWnTtq7xpoEmor4i0i21PUbG2Fvmf8E/P2NPGX7InhvSvDdh8Svix47TxFdQ+L/iDcfEu /wBaj0uDWdXW5l1nT9A0XV7u+WwSK8mmMKxzalqcqjTV1HVZLe1gNn6c3hsPh8LWwmJhLFToThiq ThVqSjOs8RTnd1sNToQUKHsVD2Uq8lUqOpCtGcFycUfb1a1eliKLVBVYzoTUoQTjS9jOH8OtOpJy qqo5e0VJOEVCVNxk+b//2Q== --089e01538cbe005f100514ca8529--