So nginx is not interpreting folded headers correctly? - http-headers

HTTP/1.1 header field values can be
folded onto multiple lines if the
continuation line begins with a space
or horizontal tab. All linear white
space, including folding, has the same
semantics as SP. A recipient MAY
replace any linear white space with a
single SP before interpreting the
field value or forwarding the message
downstream.(quoted from here)
Here's my server side script,which just dumps the cookie content:
var_dump($_COOKIE);exit;
Here comes my test,please pay attention to the cookie part:
GET /logtest.php HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-CN; rv:1.9.2.17) Gecko/20110420 AlexaToolbar/alxf-2.11 Firefox/3.6.17
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-cn,zh;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: GB2312,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Cookie: A=t;
artDate=t
Cache-Control: max-age=0
HTTP/1.1 200 OK
Server: iis/8.0
Date: Mon, 23 May 2011 12:38:00 GMT
Content-Type: text/html
Transfer-Encoding: chunked
Connection: keep-alive
Keep-Alive: timeout=20
X-Powered-By: PHP/5.3.2
Set-Cookie: ZDEDebuggerPresent=php,phtml,php3; path=/
27
array(1) {
["A"]=>
string(1) "t"
}
0
GET /logtest.php HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-CN; rv:1.9.2.17) Gecko/20110420 AlexaToolbar/alxf-2.11 Firefox/3.6.17
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-cn,zh;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: GB2312,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Cookie: A=t;
artDate=t
Cache-Control: max-age=0
HTTP/1.1 200 OK
Server: iis/8.0
Date: Mon, 23 May 2011 12:38:11 GMT
Content-Type: text/html
Transfer-Encoding: chunked
Connection: keep-alive
Keep-Alive: timeout=20
X-Powered-By: PHP/5.3.2
Set-Cookie: ZDEDebuggerPresent=php,phtml,php3; path=/
27
array(1) {
["A"]=>
string(1) "t"
}
0
GET /logtest.php HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; zh-CN; rv:1.9.2.17) Gecko/20110420 AlexaToolbar/alxf-2.11 Firefox/3.6.17
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-cn,zh;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: GB2312,utf-8;q=0.7,*;q=0.7
Keep-Alive: 115
Cookie: A=t;artDate=t
Cache-Control: max-age=0
HTTP/1.1 200 OK
Server: iis/8.0
Date: Mon, 23 May 2011 12:38:55 GMT
Content-Type: text/html
Transfer-Encoding: chunked
Connection: keep-alive
Keep-Alive: timeout=20
X-Powered-By: PHP/5.3.2
Set-Cookie: ZDEDebuggerPresent=php,phtml,php3; path=/
47
array(2) {
["A"]=>
string(1) "t"
["artDate"]=>
string(1) "t"
}
0

It's a known issue that doesn't have a high priority.

Related

scraping api protected by impreva

I want to scrape an api, protected by "impreva" society,they use X-D-token in request header , and visid_incap_ incap_ses_* in response header.
now with datacenter proxy I get 200 response each 50 429 http response. even if I use only one concurent request. but with residential proxy I get 200.
is there any solution to bypass this protection by using only datacenter proxy ?
this is the request :
GET /api/magasins/72/navigation-content/ HTTP/2
Host: api.cora.fr
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/91.0.4472.114 Safari/537.36
Accept: application/vnd.api.v1+json
Accept-Language: fr,fr-FR;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Cache-Control: no-cache
Pragma: no-cache
Cora-Auth: apidrive
App-Id: 1
App-Signature: BROWSER;WEB;91.0.4472.114;;1.25.0;1;2;Chrome;1080;1920
X-D-Token: 3:R3wmbBvTR1D6vDBmzCLerA==:qzf5V/qwmQQShcP5/cFIjM/goahseigjk/Xs2H5btwW5kCw+nLSNStvZUdugaCm1WIVl4vGCwXFf8Te0GueaZV3koYe2oCe7YiDelKihZ5LSVVz3T6uNKMaOxpSFD+CIP6usg48ioqTCv/Wme5hdCQ8n7b5qR25xWKhFCYesCoYZnen2LHVOVnMWde6AkItRarRDG5IcEUW0XYyojX9i+XL6X3Mgnynvsb7l6wVVW4AruNE80MiLkSgo2XHlh3SBFArXBdBvvyKUpfRUGZokMqYDIS03w/ShB1OJ4KUfKs6Wu1hrNCZlY3N8RTE/S8oYAsjpagWzQwTuCTwCLtYv+48kvXRIihtHC1IQ5nRPsd7s4TuanGYsYDjm3CMaUpvA+pQIqLTiLUYdG+lIMfYXUpQpGOXC+2gF69yxyFQbtxpbluv7NsHELoaaLQHvoYKI:JA3UaEpTRK6Wjf6b6yXbvJ28p7vjimPImMsmAN8GEmI=
Uuid: 2bb3d0ad-04c1-485a-a98d-4ac3d753fd1b
Origin: https://www.cora.fr
Referer: https://www.cora.fr/
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-site
Te: trailers
this is the response 429 :
HTTP/2 429 Too Many Requests
Date: Mon, 27 Sep 2021 13:08:36 GMT
Content-Type: application/json
Server: api.cora.fr
X-Content-Type-Options: nosniff
X-Xss-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Strict-Transport-Security: max-age=31536000; includeSubDomains
Access-Control-Allow-Origin: https://www.cora.fr
Vary: Origin
Set-Cookie: nlbi_2346747=ozjvaL0oPg66DB86rtkoMQAAAAA9QXZBJ+NCBIVB3SmXJNXF; path=/;
Domain=.cora.fr; Secure; SameSite=None
Set-Cookie:
visid_incap_2346747=70eYj3uqQcKlyni2K4A651PCUWEAAAAAQUIPAAAAAAD3srVYiHapPbOcjTfZu3h0;
expires=Tue, 27 Sep 2022 10:34:34 GMT; HttpOnly; path=/; Domain=.cora.fr; Secure;
SameSite=None
Set-Cookie:
incap_ses_1099_2346747=FIAFfin/tmOLYnuIJm9AD1PCUWEAAAAA/xhZaPz5UshGvjEiQfzp2w==;
path=/; Domain=.cora.fr; Secure; SameSite=None
X-Cdn: Imperva
X-Iinfo: 0-27795484-27795152 pNYN RT(1632748115671 0) q(0 0 0 0) r(1 1) U5
{"message": "429 Too Many Requests","429}
this is the header of response 200 :
HTTP/2 200 OK
Content-Type: application/json
Vary: Accept-Encoding
Cache-Control: no-cache, private
Date: Mon, 27 Sep 2021 14:13:10 GMT
X-Ratelimit-Limit: 10
X-Ratelimit-Remaining: 9
X-Ratelimit-Reset:
Etag: W/"09af7903630eefe87a18365ff527e6917bac5da1"
Server: api.cora.fr
X-Content-Type-Options: nosniff
X-Xss-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Strict-Transport-Security: max-age=31536000; includeSubDomains
Access-Control-Allow-Origin: https://www.cora.fr
Vary: Origin
Set-Cookie:
nlbi_2346747=FsJOKpMDRQqeSktYrtkoMQAAAADB426mJ/c0BiDBDsyETwFU;
path=/; Domain=.cora.fr; Secure; SameSite=None
Set-Cookie: visid_incap_2346747=Dsbf9nV0RN+yazh0zGE893bRUWEAAAAAQUIPAAAAAAD6RV43J8UcxEZJHt07UrHN; expires=Tue, 27 Sep 2022 08:49:53 GMT; HttpOnly; path=/; Domain=.cora.fr; Secure; SameSite=None;
Set-Cookie: incap_ses_476_2346747=qsgAeXWGFRc+6OUn+BebBnbRUWEAAAAAimqhOCYEdQHug9mxUEC0wA==; path=/; Domain=.cora.fr; Secure; SameSite=None
X-Cdn: Imperva
X-Iinfo: 10-120722009-120615528 pNNN RT(1632751989673 0) q(0 0 0 -1) r(4 4) U5

New to VBA : MSXML2.XMLhttp strips session cookies from POST response

I am very new to VBA and trying to scrape through a website. So far I have been able to get cookies from initial get request and use them in POST for a successful login. The next step is to capture the session and user cookies and use them in the subsequent requests.
Unfortunately, this is where my problem begins.
Post successful login I am using .getAllResponseHeaders() to capture all headers but it seems the two cookies (Set-Cookie: xf_user AND Set-Cookie: xf_session) are missing and hence I am not able to capture them for later use. For comparison and easier understanding, I am posting the fiddler (correct) response and response captured by vba (incorrect).
I am not sure what am I doing wrong. Please suggest any options, I am happy to take an alternate approach. I am sure I am very close to success, just need your expert advice.
Fiddler Response
HTTP/1.1 303 See Other
Date: Thu, 30 Apr 2020 04:55:14 GMT
Content-Type: text/html; charset=utf-8
Connection: keep-alive
X-Frame-Options: SAMEORIGIN
X-Content-Type-Options: nosniff
Last-Modified: Thu, 30 Apr 2020 04:55:24 GMT
Location: https://f95zone.to/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: private, no-cache, max-age=0
Set-Cookie: xf_user=19872%2CUsOoxkBS4bzvLttbYhWkicE-JFQ-vBWo2L68LEVS; expires=Fri, 30-Apr-2021 04:55:24 GMT; Max-Age=31536000; path=/; secure; HttpOnly
Set-Cookie: xf_session=nlJRIrZOrbAiQGVAo_wRJhDSKBsy7wKz; path=/; secure; HttpOnly
Strict-Transport-Security: max-age=15768000
CF-Cache-Status: DYNAMIC
Expect-CT: max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
Server: cloudflare
CF-RAY: 58beab553a76fea5-MEL
alt-svc: h3-27=":443"; ma=86400, h3-25=":443"; ma=86400, h3-24=":443"; ma=86400, h3-23=":443"; ma=86400
cf-request-id: 026b0969420000fea583bd8200000001
Content-Length: 0
VBA Response
date: Thu, 30 Apr 2020 13:47:02 GMT
content-type: text/html; charset=utf-8
x-frame-options: SAMEORIGIN
x-content-type-options: nosniff
last-modified: Thu, 30 Apr 2020 13:47:01 GMT
expires: Thu, 19 Nov 1981 08:52:00 GMT
cache-control: private, no-cache, max-age=0
strict-transport-security: max-age=15768000
cf-cache-status: DYNAMIC
expect-ct: max-age=604800, report-uri=""https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct""
server: cloudflare
cf-ray: 58c1b6504d3dfe8d-MEL
alt-svc: h3-27="":443""; ma=86400, h3-25="":443""; ma=86400, h3-24="":443""; ma=86400, h3-23="":443""; ma=86400
cf-request-id: 026cf0462f0000fe8d47804200000001
Snippet From My Code
Set objXMLHTTPSearch = CreateObject("MSXML2.XMLHTTP")
objXMLHTTPSearch.Open "POST", "https://f95zone.to/login/login", False
objXMLHTTPSearch.setRequestHeader "Accept", "text/html, application/xhtml+xml, image/jxr, */*"
objXMLHTTPSearch.setRequestHeader "Accept -Language", "en -US"
objXMLHTTPSearch.setRequestHeader "User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko"
objXMLHTTPSearch.setRequestHeader "Content-type", "application/x-www-form-urlencoded"
objXMLHTTPSearch.setRequestHeader "Accept -Encoding", "gzip , deflate"
objXMLHTTPSearch.setRequestHeader "Host", "f95zone.to"
objXMLHTTPSearch.setRequestHeader "Content-Length", Len(dataSTR)
objXMLHTTPSearch.setRequestHeader "Connection", "Keep -Alive"
objXMLHTTPSearch.setRequestHeader "cache -Control", "no-cache"
objXMLHTTPSearch.withCredentials = True
objXMLHTTPSearch.send dataSTR
statusSearch = objXMLHTTPSearch.status
fetchHeader = objXMLHTTPSearch.getAllResponseHeaders()

Download Page Txt using webclient vb.net

Im trying to download a simple web page as text using Weblcient but all time i get a problem,
i think the problem in the user-agent but when i set one for the weblclient i get the same problem
the page httpheader Capture :
GET /wp-json/binlist/v1/441442/?_wpnonce=335f68c9e2 HTTP/1.1
Host: binlist.org:443
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.9
Cookie: _ga=GA1.2.1639241798.1540059335
User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.0.1617 Safari/537.36
HTTP/1.1 200
access-control-allow-headers: Authorization, Content-Type
access-control-expose-headers: X-WP-Total, X-WP-TotalPages
allow: GET
alt-svc: quic=":443"; ma=86400; v="43,39"
cache-control: max-age=0
content-encoding: gzip
content-length: 221
content-type: application/json; charset=UTF-8
date: Sat, 22 Jun 2019 10:02:14 GMT
expires: Sat, 22 Jun 2019 10:02:13 GMT
host-header: 192fc2e7e50945beb8231a492d6a8024
link: <https://binlist.org/wp-json></https:>; rel="https://api.w.org/"
server: nginx
set-cookie: wpSGCacheBypass=0; expires=Sat, 22-Jun-2019 09:02:13 GMT; Max- Age=0; path=/
status: 200
vary: Accept-Encoding
x-cache-enabled: True
x-content-type-options: nosniff
x-proxy-cache: MISS
x-robots-tag: noindex
x-wp-nonce: 335f68c9e2
my code :
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
Dim webClient As New System.Net.WebClient
webClient.Headers("User-Agent") = "Mozilla/5.0 (Windows NT 5.1; rv:11.0) Gecko Firefox/11.0 (via ggpht.com GoogleImageProxy)"
Dim result As String = WebClient.DownloadString("https://binlist.org/wp-json/binlist/v1/441442/?_wpnonce=a7ddc554d3")
RichTextBox3.Text = result
End Sub

Jsessionid Jmeter after login to site

what should i do to corelate i can use different login in jmeter i have already parameterize the value. i am getting stuck with this jsession id
Sample Count: 1
Error Count: 0
Data type ("text"|"bin"|""): text
Response code: 200
Response message: OK
Response headers:
HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
X-AREQUESTID: 340x9129744x1
Cache-Control: no-cache, no-store, must-revalidate
Pragma: no-cache
Expires: Thu, 01 Jan 1970 00:00:00 GMT
X-ASEN: SEN-1047238
Set-Cookie: atlassian.xsrf.token=AVWR-AYBS-V3UU-QQRS|fef17187ee7e13e93c498a08e44fb5c2b90aba75|lout; Path=/
X-AUSERNAME: anonymous
X-Content-Type-Options: nosniff
Set-Cookie: JSESSIONID=3075A3A258CBA5D6131F724E3C0800CC; Path=/; HttpOnly
X-Accel-Buffering: no
Vary: User-Agent
Content-Type: text/html;charset=UTF-8
Transfer-Encoding: chunked
Date: Sun, 07 Oct 2018 09:40:27 GMT
Content-Encoding: gzip
HTTPSampleResult fields:
ContentType: text/html;charset=UTF-8
DataEncoding: UTF-8

Corrupt Form data: premature ending

Could you please suggest me as to what is wrong with my POST request? Its giving me an error: Corrupt form data: premature ending
HTTP/1.1 500 Internal Server Error
Server: Apache-Coyote/1.1
Content-Type: text/xml;charset=UTF-8
Content-Length: 116
Date: Tue, 02 Dec 2014 17:02:47 GMT
Connection: close
<?xml version="1.0" encoding="UTF-8" ?>
<resp status="fail">
<err>Corrupt form data: premature ending</err>
</resp>
HTTP POST Request:
POST http://subdomain.domain.com/rest/api/setDataField HTTP/1.1
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71 Safari/537.36
Content-Type: multipart/form-data; boundary=----=_Part_2_5070931.1417531039501
Host: subdomain.domain.com
Content-Length: 22679
Expect: 100-continue
----=_Part_2_5070931.1417531039501
Content-Disposition: form-data; name=\file\; filename=\TestFile.pdf\
Content-Type: text/plain
<filedata> &sessionId=686ad734c88c4c429a53e73ad7047eff#1&objName=demoAttachment&id=39896&fieldName=file&fileName=Book1.xlsm&output=xml&value=UEsDBBQABgAIAAAAIQCsmTVRbwEAAD8EAAATAAgCW0NvbnRlbnRfVHlwZXNdLnhtbCCiBAIooAAC%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACs%0D%0AU09PwjAUv5v4HZZezVrwYIxhcFA8Kgf8AF33YJWubfoKjm%2FvWwckGgQNXtZt7e%2Ff63ujSduYbAMB%0D%0AtbMFG%2FIBy8AqV2m7LNjb%2FDm%2FZxlGaStpnIWCbQHZZHx9NZpvPWBGaIsFq2P0D0KgqqGRyJ0HSzsL%0D%0AFxoZ6TMshZdqJZcgbgeDO6GcjWBjHjsONh49wUKuTcymLf3unZTasuyxP9dJFUx6b7SSkYyKja14%0D%0Ag7lbLLQCvinlLLh3UJGJo2QBDJ5h%2B2o539nlhEyKWGuPN5TpB4Vu52e7O9wr1TnoCrKZDPFFNhRK%0D%0AtEZ8uLAqnVvx0yS7zNAqMBxrgMgbqYKbWlkaoHpIbfcOTyglJIq0DH8h%2Ba0wfckrp9YN3SBHH0BW%0D%0AiawxvEuS3s%2F4iNQmINLzcguJ5owgxq0B%2FOe0PekpZSoTNaZHavgAf1ffN2GHzj0RQYgaDm147JIP%0D%0AijQtF8eFbhwrqI5oizT%2B408AAAD%2F%2FwMAUEsDBBQABgAIAAAAIQC1VTAj9AAAAEwCAAALAAgCX3Jl%0D%0AbHMvLnJlbHMgogQCKKAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAArJJNT8MwDIbvSPyHyPfV3ZAQQkt3QUi7IVR%2BgEncD7WNoyQb3b8nHBBU%0D%0AGoMDR3%2B9fvzK2908jerIIfbiNKyLEhQ7I7Z3rYaX%2BnF1ByomcpZGcazhxBF21fXV9plHSnkodr2P%0D%0AKqu4qKFLyd8jRtPxRLEQzy5XGgkTpRyGFj2ZgVrGTVneYviuAdVCU%2B2thrC3N6Dqk8%2Bbf9eWpukN%0D%0AP4g5TOzSmRXIc2Jn2a58yGwh9fkaVVNoOWmwYp5yOiJ5X2RswPNEm78T%2FXwtTpzIUiI0Evgyz0fH%0D%0AJaD1f1q0NPHLnXnENwnDq8jwyYKLH6jeAQAA%2F%2F8DAFBLAwQUAAYACAAAACEAgfQKKwQBAACnAgAA%0D%0AGgAIAXhsL19yZWxzL3dvcmtib29rLnhtbC5yZWxzIKIEASigAAEAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAArJLBTsMwDIbvSLxD5DtNOxBCaOkuCGk3hMoDZKnbhjVxFYdB357QSXSTxrjsEsm2%0D%0A8v%2Bf82e5%2BnK92GFgS15BkeUg0BuqrW8VvFXPNw8gOGpf6548KhiRYVVeXy1fsdcxXeLODiySimcF%0D%0AXYzDo5RsOnSaMxrQp0lDwemYytDKQZutblEu8vxehkMNKI80xbpWENb1LYhqHJLz%2F9rUNNbgE5kP%0D%0Ahz6esJAcxz4tICodWowK9nWWGEGetl9c0j6mZ8HZfSrldBbnGIpLMnxS2HKHGGeO3xbLaXIW5u4P%0D%0AGGdNIKYmZoac3EdxKoLdRr8EekdzADD3so31P1HIo%2B9VfgMAAP%2F%2FAwBQSwMEFAAGAAgAAAAhAO3N%0D%0AKzphAgAA1gQAAA8AAAB4bC93b3JrYm9vay54bWysVMlu2zAQvRfoPxC8y1osWZFgKfCioAaKIkid%0D%0A5OILLVEWYYpUSap2EOTfO5Ki1m0uKdoLZ7jMm%2BXNcH59rjn6TpVmUiTYnTgYUZHLgolDgu%2B3N9YV%0D%0ARtoQURAuBU3wE9X4Ov34YX6S6riX8ogAQOgEV8Y0sW3rvKI10RPZUAE3pVQ1MbBVB1s3ipJCV5Sa%0D%0Amtue48zsmjCBB4RYvQdDliXL6VrmbU2FGUAU5cRA%2BLpijR7R6vw9cDVRx7axclk3ALFnnJmnHhSj%0D%0AOo83ByEV2XNI%2B%2BwGIzKob6BrliupZWkmAGUPQb7J13Vs1x1STucl4%2FRhKDsiTfOF1J0XjhEn2mQF%0D%0AM7RI8Ay28kR%2FO1Bts2wZh1vX9z2gC8iig%2FlzuPDWYRbNrFk29S3fjRbWIgtuLC%2BaLaeLMAujMHzB%0D%0AdvqTvFt1Yb6tmH58ZRWjgpak5WYLdI6Bgstg6nlehwDlWXBDlSCGrqQwwMYrj%2F9a%2BR57VUngGd3R%0D%0Aby1TFNqrIyCdw0rymOz1LTEVahVP8Cre3Wso5I4pUqNjRcRubA%2B9u%2BCMvG2Iv2CN5F3SNmQ9RDbo%0D%0Af1YgnXcT8cDoSf%2BqcbdF50cmCnlKMBD2dKGf%2BuNHVpgqwZ7vOHA%2FnH2i7FCZBEfhNOh9X0D3MwQu%0D%0AeolE3ztfu7lyYVg7uenaAyMVM1DUpnB7hNEsJzzvmAfRPwy8wO1f0LP5rE06BwnFZQl%2Bdn1nETqR%0D%0AbznZNLD8q8izrvypZ638tZcFYbbOlsHL%2F50M4DgeP5cuyooos1UkP8KXdEfLJdEwKUNCECcQMUZt%0D%0Aj1bpDwAAAP%2F%2FAwBQSwMEFAAGAAgAAAAhAJbw16w0GwAAAE4AABEAAAB4bC92YmFQcm9qZWN0LmJp%0D%0AbuxcDXRUx3We93YlLYuEVyAwCDl%2BSILIgOTd1T9GtnZXK36FBOIvsWKxkhaQkbTKaoWFbWAFTmIn%0D%0ATopt6tC6AZzYKa3rHHB6WuzTH0GTlOQ4CbTOCXFzYnDchjQ%2BjTiH2qSnQf3u%2FLx9u1qBIIndnJPZ%0D%0Ac%2FXmzdy5c%2BfOnZk7d%2Bbp7PdzLzx%2FIv8iSwn3Mhu7NjaFZVrSNcQJeHAxpiNCcG1sbEwlI%2FqH8Hsk%0D%0AgV%2BD1xnovI%2FIfszAk%2Fo8C%2BAATAHkAaYCsgE5gGmA2wAuQC5gOsAGuAMwEzALcDtgNmAOIB8wF1AA%0D%0AuBNA%2BkJgID4PUAgoAhQD5sv8PyjRByOBdSyCX4wZLMj68IyyXeiByYdZLIMpTklHrheMlWWFWb%2F6%0D%0AvmYH0sgigbmR%2BZnvpmpMRnZgRlL1E910wVUk6lX1W3HWs%2B2smw2wTZBClO1gHVweOybNUT7TNaqf%0D%0Axgw9J1PQCaRiGnQI7fi1snWsBU%2FvLcjBhRnYqimTJbFRdhbN5zSH0%2Fgl%2BaUb%2F8TvjcY%2FNYfmiRuN%0D%0Af5ojaK6hecAApBv%2FC5D%2BUUAJ4C7AQgCpy2JAKYDmjrvxdAM88r0czwpAJaAKUA2oAdQClgDuASwF%0D%0A1AHuBdwHqAeQ7hG9AJ4NgCCgEbAMsBywArASsAqwGtAEWANoBrQA1gLWAVoB6wEbABsBmwCbAR8D%0D%0AfBxwP6AN8AnAA4B2wBZACNAB6AR0AcKArYBtgO2AbsCDANLIHkAvgPiN4NkP%2BCQgChgAxACDgJ0S%0D%0AZwhPGs0PAx4BPArYDdgD2AuIA4Zrsjxz4vbBfn3WNxz%2BWN%2FwKod%2FMBaL9O1zRO4LFATe9devaB15%0D%0AoLGqTjcyN5b5urpKjMz2faW21vW7%2BsNLRup6ByKByOkH%2FPeuXPxZR8fp%2FUvqluUGWiKDfbGpU2Ij%0D%0AL0ZGoqHoriV1vudsm%2F95WZjN%2FWZRWSBk%2B3L8F798Ypc%2B3142fH%2Fdt7ZmfSR%2B9959U%2Fa1MecF%2B9va%0D%0AyNRvOxtZJNo72BMygnfU5%2B%2B6MDRim2dv7vMFCldqnwp09LY%2Fr%2B18Mtz%2BQsbP7K2xXW8%2FNHa08J%2BW%0D%0AFs%2Fy5zyY%2F9bMjswfzzy6MdQzGD4yM8b2HG7vyGif2T6T1W3ov2%2FR%2BxcXOKrmL2o1ol8ZKMw5sejX%0D%0ADRntgYz2WfT7dO7yWWNfWXTnrMCit2Y2TH195in%2FN76QNL5%2Bd7NyPYaizu5fLWYRjbW6zNhBFStB%0D%0A7r0Yrhoz8sbG%2FDRwWVWhmnfyZVmsuMgVc5FK09jCRK4lFt1AWmAN9fJFPVUejSYKtOKrkIjb%2BGhQ%0D%0A6TpaQqP8FJkPqhyZDzIMkxmh0l2WdAvxXJpOZFhroaOR6SHDUzTdyHCOzA4Zcsn0kOEimSAqnUwQ%0D%0AGZ6iqUilG5Y4mSEyrKXpSeGTmaLwaWpS6Rb6Gk1bMpwjk0YGjyV92BJfS9ObDM9b4hpNeTKELPFz%0D%0AlrhHrqCEpnG7XGNPkdkmwylLPJdMORmUBocs%2BQ52N5%2BNfBa8E2YJjX0yTXmiozMn3yDYtuwHNY3Z%0D%0AtnSbi7DOVpg1JK9Rv7sx9AfKoleytJ%2FzuYG6UGe15iZOZytpwUd4R%2FbuNp0yt%2Bm0Rh3Rz6L4tYzz%0D%0A%2BJvJ5upH9FHEjuhX8feU7YpGM8Bh%2FnZFO4PePszzr2gHUEfYRmVP62fw990MO6MyVHqbTsP%2Bezrx%0D%0AtU2nFfKydhxxRV3UlsVrozKHOYUrmkOzmXVthmWi6irRMlg6%2BrQmbtNpZ%2FKudpLT2MYlcFX7AZkK%0D%0APLgwR1G76wEWheZ5tEcRQQoIL9QWGzt%2FN9kjIpCVJALxamPUQhujltvYg2Q6IVyQIyBZsiPAuZZB%0D%0AFIVkLyB2RL%2BEv0KyDrSQ3kiyUxCnfJKsE5Klsqf1k%2FhLLScsyk0n2aNIJ8lSvqhtBpcslTnMKZBk%0D%0Ap5p1bcaeTtVVouVwyabSF5I9ipYd0Q%2BZXKej1oKd4RGduP0vLc45eZqX6LEJvi5rLTz1sradP3%2FF%0D%0A5UHWpeI5maqQwXLsNQ9xqhvseew01793MzJNOVB9iZ4nKW3TaSl4PyPL1CCX5oKO9%2FE2ENVUTi5L%0D%0Afi9rilPqKeJKSI56%2B4p2VM81JSe4Ilob7DPB1Shiyb1Du%2BJDPP2kvtzC1SzQoPcrmuBK8Hq7mXqG%0D%0A80oL2GgGqbDCHtWnow1KwwXFD69F9ZYWzQaP9J7cojlm6vgWCezkFgmKH16Laiwtygfv9J7corlm%0D%0A6vgWCezkFgmKH16L3JYWFYB3ek9u0R1m6vgWCezkFgmKNMtdNadJBzvL5zzavaTOqrTTEiFhbNAI%0D%0AtTHSXxujPrcxkpONEW01o9J4o7k23cxLI9LGaOTZGI19G993Ahlb0C3sKcu6l2uxRaTxNo3pIaY7%0D%0AHDTpIOxNSZYm5wwNlC7K%2BZxW0MuWFdQQRacx7eOgZBLgb2ZzJx2JbqhPwVXvqelqhUqYyON3%2FrTj%0D%0Ac2B9u2j2DonDtsXO%2Bh01DMJKClSxNssGfx%2FQH4aJTYtjCeT%2BS4jn14CQS%2FBG1F57794XycVRhJfH%0D%0A8f43iGu8GqJJeGNj%2FQBseQ8UHfxVjmPV4dtPZe149b7YHIfokxFBjHbXSYGIvPy%2FF37xxRdeWhlf%0D%0AFbv8nTMLL1LFpADUB6Q6im9NIxWjN97U1GKpVQvGmrCpFwQEm%2BKvYP4tzjJjx1KkM5sZ4%2BSVKr%2Ff%0D%0A7vuHs%2F9TnWfZO5o70PQ7RrMElw%2FJMr9FpNmte0wzV196XMpYX3rSjI2YsTNm7KwZO2%2FGLpixS2Zs%0D%0A1IxdNWOCA6WSGnw0bvg83Pznxd8aeIpq4T0SKe6kWECmJnIVFj0r4E%2FazZUQth3tvbURaKUeJ7tI%0D%0A%2BLDp6YYcyBOoNFvphnqnzSb5trNzF%2BvHeaJti9DDhGYqXHqewag4jizy81A4ACDMfui%2FAz81zR0U%0D%0AWz%2FWvb%2BM29hqeEyVvFCZOGhl5y7h%2BbRHu169NRh1bku9qh1DDg3%2B%2BWLYoyIclEdBxmNLOV2asbk8%0D%0A5MzzJXj%2Fqb3GYz6ePyrzScspfAnji%2FIVfdpbHAfo%2B4VcFY%2BPm1OMmmQS8qLYHfASEp19RxfwekTp%0D%0AsbERlKP5UZ1NqXoUXVWO0g9Y%2BFB4N%2FuMo0NUmeOWeCqdS9fJs%2BJuB54DfUFpXnNNE7IjkdTbr40d%0D%0AQrqS%2BxRgGjL9DNKVvK3ps0HvvKwk24JPSWdlusKnV14b6qFwRubTrLwFGXfAO6r6j9qkFhziiwLp%0D%0ALgVVD6cxgZxLUFiiT%2FiA%2BiXhjErZUAED6zw9D8mnlUhLmrR0lZwHvX6J69Ub9fWyn0gGtBBRuxzI%0D%0AJ%2BuDglWuNUi%2FkCY9jnQlt1R5j6TgM9C%2FCnyyjihsR1zIuZ%2FLeTbmHGqL2oESP8fxflTip9I%2FJNNt%0D%0AVr0AfjwNPu1Yt09ApyUlnfgsAS9kv1FwIS74PMT5XI53aod5FgT8zUirl%2Fj1KfhDeCd6uexbwlgE%0D%0A%2FuN4J5uQQn8K%2FjG8E73bxVDAoYXQN7fEP5qCT8lETzn76P04ypKH0nKazc8KJAlpzIg3wk2XTmkH%0D%0AoJObleIDT1hfxFjc0e9QpZKfLuTa2XKUGv7hjI0ZTCvG8UYbjhC2yt9CLDnlOMaowoJVjiOBakAl%0D%0Aw55QoJXjWYQEb2pSLSVNl1gejuUBic5UvJrxSRWoIqWCChxEjEvaOp4N96Tq%2FM0qSG56OeQzThqe%0D%0ASSSVYyV%2FS%2FQWdQkprc6PsJUm3dzz2nc0VkY9bS7FLC681ES9cDgbZnWm2BANO2zFOASirmfDjkw7%0D%0AnC603FG8AIdG9ZZ04grpNh2ulO2kKsNE38GPepLpOzh9UjnwYKNlP26Jk4VOdKjeAxb6J2U8H%2FWO%0D%0AWNIv8LiRuYQdZZdkWeKBpmaiMxuH%2Bm4Zn46DYlJgSnfg8H%2BLiGfOAs52Gc9HnMwOaqMDpsBRiU80%0D%0Aj1noHLfQIZOH8PNQ9qyMU72XLHS4sKV8%2BLYCceLHRaNZ8lMi4pnEg9sSb5Fx4qdf4hM%2FQzJOdGgZ%0D%0AV3RoeSV%2BiIejlvhJC52zFjrnEVf9dYHSLfpAOqFpo0g96xJ7l2ftXAeYXXsVMtwUie4Y2B4Ox4ym%0D%0AcN%2Bg4Q9FDebV57MKXWNXqT%2FY65hU6%2FF8FVPrgqZdjYN9nbHuSB%2Fmhyrg%2BOtrqEbCgyrMxvOTmLZc%0D%0AeEbwJO141n6c53%2BC%2FbedFlN6Uu9Opn4jqX4nS1SfWnui%2Fq9Cyx1wZWYDZgBGmcEa9TdYj4a5TZ%2FH%0D%0AViK%2BXH%2FN%2FgZbrVPKfNag2zCilsp2EP9n07TXAEYJW6MTvaWgQ7Qa9DJWL8vZNQPxq5BTDmtUR4h9%0D%0AsegumP9rgEPSpvNDH8S3M9wuUWoZ1w7UZ7D1ei1bp1P9LXi%2FcT1TGT9qNIKWWqgel7UejkK1WOmP%0D%0AQv43pp9rtqM13BMWvS7aQh2q2iMb0i5w0reHRuSN67tNtie5NtUe3hBLLdb2GKBP%2BjYbT9J4l3xi%0D%0AoX31FeaLxaLdHYMxFjY2%2BtvXhHoRqTMK12%2FH%2FQvS%2F45IxLWjMMfpfNIfGtD0J92PuN1ur7ulxlNb%0D%0AylxumyOQxfL06Vqx211RtXs459FlPZGOUI921tXaH%2BrUnm4M9dgHwtldgWg4FHOEOnpm3tkSDXcd%0D%0ACHf2hFjmii52wrE%2BOpjjDw71R4CYV7A%2B3Nvfw0KxcEM42r3Tpk9%2F2j84EIv0dmc%2BbG%2BweZv7McDs%0D%0AfQa7u6e7szu2JceZ42zBZaUFhqt1sMPIeK7dH67fGomGAz3MX8ICob7OcI%2FhYwOGPxLpCYdY3105%0D%0ATsMwNsW7Y9sNX38%2FK9ZD2sKyQKS3F5ldGOQDJYXacLEc%2BGdp5DNnoW1uvEBvZvXRaCRqrHs8PDAY%0D%0A%2F9Ga8FC8IQuDSYsXQs0iPRqbJ2cBbbi08K6yBqjGtBh7xjYjc96yyPpIg%2BHWi4N9Xfr8nGlOnx4v%0D%0A31jd3B%2Fu00v2FzV09xqRjpEHWyL9G%2Fqt90%2FK%2BQRxc39w%2FwQnMuIOCXX5ZEpj2WQ%2FloitWObC%2BMX4%0D%0ATY6bZwAOPb43p6V3svV7gfszaUi347YG3UBqx9nQOtzqWIkbIAF%2Bk2NyvOD%2Bj2kfTrZ%2BP0h%2FV26k%0D%0Au3DDI3oLcldFYB7w%2B0fKypwMKfJI86MFPC%2BbBWiVpXs5AfKVUJfyoDPhMRhy1Ce109rWOyVuh3jS%0D%0A1ZJJB%2FI%2FaqNAfxNz8xtUDE8ifhHPStlJxNpr753DQfv1%2FY%2BT7YDx3LmQRJVRu6%2Fjb7xRsybvb5w9%0D%0ATpqqBz%2BoZwmXdet17pugL5YKkV7Pr0betVv3qwnHujCPlhNHN%2BFXM4Cv%2FGpEoR7v9BSGFfWV0GmK%0D%0AWaWa%2Bm4dO%2Bmkr3qdelfkT0RBSEvj5r3Y3711I5W5Xj7tMUSVyX5vWc2x4xOtqa3bw%2FXhmIcW00t%2B%0D%0Ae2hAj%2FHFdMTrrvG6S5lhd0wLYC0tEGupvlutpfO0b6i11NGj1lJXTK2lRpdaS3PZS2otdUTUWsp6%0D%0A5FqauVMvlmtpdjdfSyds5euhr9LIG5sCG3UKTNx37MrDQb1nx2xwje9plyV5cyswSzf%2BBlpXhL1g%0D%0AGTbMRTAKizDjLcEWXMz%2Fy7AK%2BHBDzoOUANaDJvya4U0WKU24Dxjg60SrTBGrR5tcRapBlUpSahCm%0D%0AeRnuFK7GrwgpdMt0EPf9emBi%2BvEcQEonGcX85qmBWvvx6%2BGpIayH3Ujv4%2Ff6EsJz4WJQG%2B4mpnq2%0D%0Ay38jWXjAZw14dFtkEUXt27AyhXDjkHjsBmdhcNMGeRDflD8A2MrvDjdz5wWlh4FhffPAV9EGWWyG%0D%0A3IKQRBmPB1FTOjpB%2BFCIBsmISpaBJwP0OnAHMowcuqe8GvV3cM5S7yr%2FXVpNIYfBrc9PRdAS4sIq%0D%0AnU3goA8%2Bkwh7iEukFbcsB8BbGLIqB34bf6N8khmVjyHWARrN4D6INvigCTHk90K%2BqqetQ6TE7Gcv%0D%0ANKgRvdPATyICaEkltKcRFEohITfAj5gf%2BUHkiHb6kCtOLipkuhcnGKIl1ZPu5wDnr5dr4Y01gOy4%0D%0AEHolDLmQBjTiR2MlyPuRtKYVqYnxcCMtupX%2BJ5%2BeDrfIdJgOedgUzwLMRjwfzwJAIT8hSNioYoa2%0D%0AzviJu%2BQTrcLjPdWJNSbRg6%2B9p2MTPtHd8ry0Lr6xsY%2FqE5fBvc8XJX3a6G5zESPZEGrCfCay3iTP%0D%0AIfkOx8YW4QqWFW9sjCwpCiQcdo%2FpSdc0ciJ80HYIX8w%2BpHo%2F6LaSwD8M%2Bd5MnW%2B%2Fc1tL5%2FnAis%2FV%0D%0AFIz%2B5ysvf4HKko6P5PXoS5%2F4WfPf7voJG33k1XyVTk%2By3OJcpRZrC1imVo87dxnZwSFsiOOLXMyW%0D%0AvdHve%2F9tF8uwb%2Bru81Sd2iOj5d6svTJaVTGEqM3eFOr8%2BisuZrejSNXLRTJW%2FTXEHPaWaORBeEA8%0D%0AzttdLDN7INaFffYzW1zMSRXIzH%2F4R8pr3rq1uzM8c9DFsrPhYVAOhh2P%2FtTFpoDVMZvG2oM7cUcc%0D%0ANsvsH1ERGE2wmS7lu1ieXfojdmCLL3b4MHJe%2BSGw7GKbf%2FkQsaOwdsx2samSKPb5cBeEyDf34sJE%0D%0AMt%2F0iz2%2FswBlObaNBSJ8Nz%2Fw%2BirQlhRoKx8LnxxysZwEH7R5f%2B4iVRrpEDv373lc7DaTDFwKnDo2%0D%0A9YP9TjjIMwkRF%2Frnz3Mx1zg0cce%2F9l8hcYY7%2Fe9HE7T4hX7OFafVcxdosQ4uhid%2Bgs4Cz7jc794J%0D%0AObIYPCgRuuD%2F7L%2B5WJbkPxAix0mfCw0QzdQYLu5zv9VjR0FAouHafk%2F4m%2F0J7lCxYEsSOHYiIT5L%0D%0AN%2By5BzrBVqDqHz4M7wNtTdZD9Saj4oZOm3WxDBTD20hTLn3iJspOwxIBnxUfoosQnwIPIl23o4Pv%0D%0A8WH8tJ9uIUhTMDlJ016BVw6GLzrCvVDXD0xh%2FXmZy21sn8663rHbceBewJRyP94Zy6CvXOr1vAcz%0D%0AdWed7szSo1qeIyNz%2BhR9Ol%2FODrJsfeVS3TmLadG4GCD36nNMgyROFkkOFo35%2BgPMtrBtGXxscTjZ%0D%0AKsqxLXDcYbcHmFOfpk2Hi41V7S7ylrmLYPsElrRh3MKgeWigrXXXQMwI95Z722xhLyybno6i5tVB%0D%0AmDSD8JxB7Qvgk97CtP1BjMCG7s7HgrAG46z7Dda5L3g4nnswrg0HmbehsabBXQFzptLf6Cv1uOMe%0D%0Af6m%2FIVgZD77h88UDFfEM7%2BPB%2BCG2LRrqNRq7wfVAGw2hiN5nz2zq7oxGYHxujRmt20OwObramhsb%0D%0AV8DY8FS2NbU2l7kbVq8u%2Boxrf5Phqa8scxvNHcOnjPjq7g5SVbYqyLTb9r2hsxn7bK%2FZ35uz7xif%0D%0AIPC9CbkgdyzLY7PjM9bHX4LBbmeb4l%2Fnn4VtGNEiI1r%2B96Z635xasHZkOk5A%2FZrHP7TtuAsfNPnh%0D%0ABFt8et6xe18s9DsW%2BbU5%2FkfjYjpZdnqus7W%2BKFy%2FmTxcb%2BYvz%2FKuyfr%2B3HvYy9%2BdW3BuzrfnsuIR%0D%0Ay4cIN9SXVIRnVi38qo0fLQm7RuP%2BKMJKqCOliaBh%2BCb%2FrP4%2F903XTt%2BA3rz%2F6yHU8y%2FS%2F2Wt33Nr%0D%0A9fMrYbRrFNviGxP5ClBel2jJXr%2BH%2BPdVN8NG3i20%2F89RgboZeWtexwSH5H%2BlniZxTrb9x4D711I9%0D%0AhhHfB9gPeAzwKcCnAZ8B0CHiE4DPAj4HeBLwecAXAH8EOAB4CvA04BnAQcAfA54FfBFwCPAngD8F%0D%0APAf4M8CXAIcBRwBHAc8DvgygU%2FwX8CQjFx4B8xvhv0D8LwEvAf4K8DLgazL%2F%2F7sl9fvAn5oN8BXh%0D%0AhhE5TdRDvhRSn%2FIS7B45dPdI9Amf9E0JgukPLpR0c%2BWT5iiXGcdZq2UF%2FZi%2F7%2Be9%2F%2FFC03M%2Frb56%0D%0A5ZkDODMm7xB5id6hxRIhsVfT2f7Phi3fpeks1%2FK9mOoFnT1P56AyXLTEaeY8Yanb5rRPaE5Q8cTt%0D%0AWrrLcU5NrpaWqKhH8pomi4VMH%2Fv43HPmfePxebI6s1ZZha4apGxkla5u7CUsZJWjPsiz2seKumJA%0D%0ArGKyhO2XdpE%2FIthqJPMIQVczNwyFlnXNy9b59njaAs1NTc1rEGlaEVjX3IoIOCCoLqNosLoMq7Sq%0D%0ATjn9kO0SNJ2aRa6qD8kfSF3rseSdsMSPjxOX4nwGvy2AXUwK57CmeCDOoxFlbsDaEEYG2RhiK9Em%0D%0AHrAwgpsDwdVlwc1BxbzqSL7fUeyHEn5MU5k0eUH%2BKUte4pI67gZMyL47RfCys3V19CItNGWgcftM%0D%0AWH%2FeMphoqb0qshSrpyxamhgtgpfLljyfRWNHJ2R19dmrpf9z%2F1zX3%2F87Ju6Gn6yTtej3TSRpbtf1%0D%0AkZWXJHYy7ZRlpww7i8YoBRXdoppy2cJioini44N5lkF1whKnU%2BrkoJTmzRSlUemp18xVeupNdyn2%0D%0AvSo%2F9bq6Sp%2FekDysUoe02mdKpvU8yW66Xaoqq76wNXFoBykJ5OTxbyaGUpot54OpxUhX%2Fw9hwHQw%0D%0AGfDhheH3HGTCfx1VX2dMs%2Bm99E2F9YNS1bIfpEhQfsSwd4GoWhXFJ2lmUEV1m%2BBnROQ00qkxwjSb%0D%0A7SBqy3SstXxDLIfD1FlAWAA%2Bd8H7OAheyWMs%2FOiKqj2FqktQTWVo7W3jGcq8EUOJdY1v6EDB5kgp%0D%0Ao9pvNkb%2FPDVGm5GoLkU0VqleR2qTkQ6pTTrZpJC1tl1%2BL713HHlLW6%2FTlo9MIF1L6eTKs64jCevH%0D%0A1VKRbdNS5NumlCSrQYNcKTjWpukXZ0o5pUDUP%2BJAphcKhMshUPbEP0axDpAAHPq9uDbgk0q2E4Oj%0D%0APaWsGv%2FJbdStX4ZbNXcjPx0aBCFrpXL9nmqAtfSVJsopXLK0UpvRys9VxCmKGBPpmpNciv43CZ3G%0D%0AiFKKOvWqldfxlNPxnCiRTFXaEDd1ayAxWhLfT9XLxNSn7IQ9D0tdVGWny4hFO9JafYSWwCGnkQhS%0D%0ABadYbTzr9%2FMuk0lz%2F%2B1Qq45wIj6QwlGiVZOPWW23CQ8c8O9JuG8z6RhA1LGioa7wEa870BD0e%2BGI%0D%0A8Vf4Sitq%2FcHSWl%2FAX%2BqtrvC5vf5yeGIbd%2BMwuSHSOdgb7ovVWWu9e8Fy3NPiwYIhKkzKw42vcF1h%0D%0AwgwFweXhnn5ygYaHYsSIG0kbw9EBeA9hFPTDm9TREy731hWW15Z7vV7UAYRA0zIkVJZXe%2F1V7srK%0D%0AWk9lrRWIzRZ%2FXWGVr6qmusJf7qtBmzggZ1mgrrC2sbahxlMTrClvrPLXNlYTVFQhM8d5%2F%2FIInFvB%0D%0AoVi4ryscNVb0bY18Isdpts9T90h5Tbm3oarCXRporHWXejyBxtKaYEV5qdvtcwdqPR63u9K3%2Bx5Y%0D%0At%2FdYpQLK%2FIInrqmFQdAqvTpv1WKDwOOpxt%2FKiprFxsdznEJ8dZVeJAE8XjfFqisWG4EcZdDfirqM%0D%0AK%2FN%2FAgAAAP%2F%2FAwBQSwMEFAAGAAgAAAAhAIuCbliTBgAAjhoAABMAAAB4bC90aGVtZS90aGVtZTEu%0D%0AeG1s7FnPixs3FL4X%2Bj8Mc3f8a2ZsL%2FEGe2xn2%2BwmIeuk5Ki1ZY%2BympEZybsxIVCSY6FQmpZeCr31%0D%0AUNoGEugl%2FWu2TWlTyL%2FQJ83YI63lbppuIC1ZwzKj%2BfT06b0335M0Fy%2FdjalzhFNOWNJ2qxcqroOT%0D%0AERuTZNp2bw4HpabrcIGSMaIswW13gbl7afv99y6iLRHhGDvQP%2BFbqO1GQsy2ymU%2BgmbEL7AZTuDZ%0D%0AhKUxEnCbTsvjFB2D3ZiWa5VKUI4RSVwnQTGYvTaZkBF2htKku7003qdwmwguG0Y03ZemsdFDYceH%0D%0AVYngCx7S1DlCtO3COGN2PMR3hetQxAU8aLsV9eeWty%2BW0VbeiYoNfbV%2BA%2FWX98s7jA9rasx0erAa%0D%0A1PN8L%2Bis7CsAFeu4fqMf9IOVPQVAoxHMNOOi2%2FS7rW7Pz7EaKLu02O41evWqgdfs19c4d3z5M%2FAK%0D%0AlNn31vCDQQheNPAKlOF9i08atdAz8AqU4YM1fKPS6XkNA69AESXJ4Rq64gf1cDnbFWTC6I4V3vK9%0D%0AQaOWGy9QkA2r7JJDTFgiNuVajO6wdAAACaRIkMQRixmeoBFkcYgoOUiJs0umESTeDCWMQ3OlVhlU%0D%0A6vBf%2Fjx1pTyCtjDSektewISvNUk%2BDh%2BlZCba7odg1dUgL599%2F%2FLZE%2Bfls8cnD56ePPjp5OHDkwc%2F%0D%0AZraMjjsomeodX3z72Z9ff%2Bz88eSbF4%2B%2BsOO5jv%2F1h09%2B%2BflzOxAmW3jh%2BZePf3v6%2BPlXn%2F7%2B3SML%0D%0AvJOiAx0%2BJDHmzlV87NxgMcxNecFkjg%2FSf9ZjGCFi9EAR2LaY7ovIAF5dIGrDdbHpvFspCIwNeHl%2B%0D%0Ax%2BC6H6VzQSwjX4liA7jHGO2y1OqAK3IszcPDeTK1D57OddwNhI5sY4coMULbn89AWYnNZBhhg%2BZ1%0D%0AihKBpjjBwpHP2CHGltndJsTw6x4ZpYyziXBuE6eLiNUlQ3JgJFLRaYfEEJeFjSCE2vDN3i2ny6ht%0D%0A1j18ZCLhhUDUQn6IqeHGy2guUGwzOUQx1R2%2Bi0RkI7m%2FSEc6rs8FRHqKKXP6Y8y5rc%2B1FOarBf0K%0D%0AiIs97Ht0EZvIVJBDm81dxJiO7LHDMELxzMqZJJGO%2FYAfQooi5zoTNvgeM98QeQ9xQMnGcN8i2Aj3%0D%0A2UJwE3RVp1QkiHwyTy2xvIyZ%2BT4u6ARhpTIg%2B4aaxyQ5U9pPibr%2FTtSzqnRa1Dspsb5aO6ekfBPu%0D%0APyjgPTRPrmN4Z9YL2Dv9fqff7v9evze9y%2Bev2oVQg4YXq3W1do83Lt0nhNJ9saB4l6vVO4fyNB5A%0D%0Ao9pWqL3lais3i%2BAy3ygYuGmKVB8nZeIjIqL9CM1giV9VG9Epz01PuTNjHFb%2BqlltifEp22r%2FMI%2F3%0D%0A2DjbsVarcneaiQdHomiv%2BKt22G2IDB00il3Yyrza107VbnlJQPb9JyS0wUwSdQuJxrIRovB3JNTM%0D%0AzoVFy8KiKc0vQ7WM4soVQG0VFVg%2FObDqaru%2Bl50EwKYKUTyWccoOBZbRlcE510hvcibVMwAWE8sM%0D%0AKCLdklw3Tk%2FOLku1V4i0QUJLN5OEloYRGuM8O%2FWjk%2FOMdasIqUFPumL5NhQ0Gs03EWspIqe0gSa6%0D%0AUtDEOW67Qd2H07ERmrXdCez84TKeQe5wue5FdArHZyORZi%2F86yjLLOWih3iUOVyJTqYGMRE4dSiJ%0D%0A266c%2FiobaKI0RHGr1kAQ3lpyLZCVt40cBN0MMp5M8EjoYddapKezW1D4TCusT1X31wfLnmwO4d6P%0D%0AxsfOAZ2nNxCkmN%2BoSgeOCYcDoGrmzTGBE82VkBX5d6ow5bKrHymqHMraEZ1FKK8ouphncCWiKzrq%0D%0AbuUD7S6fMzh03YUHU1lg%2F3XVPbtUS89polnUTENVZNW0i%2BmbK%2FIaq6KIGqwy6VbbBl5oXWupdZCo%0D%0A1ipxRtV9hYKgUSsGM6hJxusyLDU7bzWpneOCQPNEsMFvqxph9cTrVn7odzprZYFYritV4qtPH%2FrX%0D%0ACXZwB8SjB%2BfAcyq4CiV8e0gRLPqyk%2BRMNuAVuSvyNSJcOfOUtN17Fb%2FjhTU%2FLFWafr%2Fk1b1Kqel3%0D%0A6qWO79erfb9a6XVr96GwiCiu%2BtlnlwGcR9FF%2FvFFta99gImXR24XRiwuM%2FWBpayIqw8w1drmDzAO%0D%0AAdG5F9QGrXqrG5Ra9c6g5PW6zVIrDLqlXhA2eoNe6Ddbg%2Fuuc6TAXqceekG%2FWQqqYVjygoqk32yV%0D%0AGl6t1vEanWbf69zPlzEw80w%2Bcl%2BAexWv7b8AAAD%2F%2FwMAUEsDBBQABgAIAAAAIQDeI%2FLThQIAALEF%0D%0AAAANAAAAeGwvc3R5bGVzLnhtbKRUW2%2BbMBR%2Bn7T%2FYPmdGmjIkgiolgtSpW6a1E7aqwMmseoLsk2X%0D%0AbNp%2F7zGQhKrTNq0v%2BJzD8Xe%2Bc3N6c5ACPTFjuVYZjq5CjJgqdcXVLsNfH4pghpF1VFVUaMUyfGQW%0D%0A3%2BTv36XWHQW73zPmEEAom%2BG9c82CEFvumaT2SjdMwZ9aG0kdqGZHbGMYray%2FJAWJw3BKJOUK9wgL%0D%0AWf4LiKTmsW2CUsuGOr7lgrtjh4WRLBe3O6UN3QqgeogmtDxhd8oreMlLo62u3RXAEV3XvGSvWc7J%0D%0AnABSntZaOYtK3SoHtQJoH2HxqPR3Vfhf3th75an9gZ6oAEuESZ6WWmiDHFQGiHUWRSXrPVZU8K3h%0D%0A3q2mkotjb469oSvm4Cc5pOaNxPMYDguXuBBnVrEnAIY8heo4ZlQBChrkh2MD4RU0sofp%2FP7ivTP0%0D%0AGMXJ6ALpAubpVpsKBudSj5MpTwWrHRA1fLf3p9MNfLfaOahynlac7rSiwqfSg5wFSKdkQtz74fpW%0D%0Av8A%2B1Ei1spDutsowjKkvwkmERAaxx%2BsVjz9G67HfDIsO9Ut8QBzRfkH6HB75fmf4s98GAZMzQKBt%0D%0Ay4Xj6jeEAbM6XEoQ%2Bg44P9ldcc5RoBIVq2kr3MP5Z4Yv8idW8VbGZ68v%2FEm7DiLDF%2FnOdyqa%2Bhjs%0D%0A4O4sjBecqDU8wz83yw%2Fz9aaIg1m4nAWTa5YE82S5DpLJarleF%2FMwDle%2FRov2hjXrnoM8hcVaWAHL%0D%0AaIZkhxTvL7YMj5SefjejQHvMfR5Pw49JFAbFdRgFkymdBbPpdRIUSRSvp5PlJimSEffk%2F7hHIYmi%0D%0A%2Fi3z5JOF45IJrk69OnVobIUmgfqHJMipE%2BTy1ubPAAAA%2F%2F8DAFBLAwQUAAYACAAAACEAyuNFvHoB%0D%0AAACgAgAAGAAAAHhsL3dvcmtzaGVldHMvc2hlZXQxLnhtbIySy24rIQyG95X6Doh9h0nvjTKpKkXV%0D%0A6aJHVW97hvHMoAAegXPSvH0Nac4mm%2B5swJ%2F9%2B2dx%2F%2BWd%2BAcxWQyNnFW1FBAMdjYMjfx4fzy7lSKR%0D%0ADp12GKCRO0jyfnl6sthiXKcRgAQTQmrkSDTNlUpmBK9ThRMEvukxek2cxkGlKYLuSpF36ryur5XX%0D%0ANsg9YR5%2Fw8C%2BtwZWaDYeAu0hEZwmnj%2BNdkoHmje%2FwXkd15vpzKCfGNFaZ2lXoFJ4M38aAkbdOtb9%0D%0ANbvU5sAuyRHeWxMxYU8V49R%2B0GPNd%2BpOMWm5KHt4iYKXDX%2B15x5veZ0zqZaLzrK6bImI0DfyoRyW%0D%0Agk8L2%2FRTnGNBun0DB4agY%2F%2BkyL60iOt8%2BcRHdeapo9rH4gu376DXG0evuP0DdhiJIVesM8udd7sV%0D%0AJMN7Zkx1fpVJBbTSpDme9ADPOg42JOGgL69upIh7TF1xTDjl2htGtkiE%2FpCN%2FBOAHa%2BrCyl6RDok%0D%0Aedr%2Ff2v5DQAA%2F%2F8DAFBLAwQUAAYACAAAACEAod4L6kMBAABjAgAAEQAIAWRvY1Byb3BzL2NvcmUu%0D%0AeG1sIKIEASigAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAjJJfS8MwFMXfBb9DyXubZutU%0D%0AQtuBykB0ILih%2BBaSu63Y%2FCGJdvv2pu1WK%2FPBx9xz8ss5l%2BTzvayjL7Cu0qpAJElRBIprUaltgdar%0D%0ARXyDIueZEqzWCgp0AIfm5eVFzg3l2sKz1Qasr8BFgaQc5aZAO%2B8NxdjxHUjmkuBQQdxoK5kPR7vF%0D%0AhvEPtgU8SdMrLMEzwTzDLTA2AxEdkYIPSPNp6w4gOIYaJCjvMEkI%2FvF6sNL9eaFTRk5Z%2BYMJnY5x%0D%0Ax2zBe3Fw7101GJumSZppFyPkJ%2Fht%2BfTSVY0r1e6KAypzwSm3wLy25YNlMnrcMZXj0bTdYM2cX4Zl%0D%0AbyoQt4ex8VwMxK5AjwURhUi0L3BSXqd396sFKicpyWJC4nS2IhlNrynJ3tu3f91vI%2FYDeUzwb2I2%0D%0Ao5PZiHgClDk%2B%2BxblNwAAAP%2F%2FAwBQSwMEFAAGAAgAAAAhAN5BFtmKAQAAEQMAABAACAFkb2NQcm9w%0D%0Acy9hcHAueG1sIKIEASigAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%0D%0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnJJBb9swDIXvA%2FYf%0D%0ADN0bOd06DIGsYkg39LBiAZJ2Z02mY6GyJIiskezXj7bR1Gl72o3ke3j6REldHzpf9JDRxVCJ5aIU%0D%0ABQQbaxf2lbjf%2Fbj4KgokE2rjY4BKHAHFtf74QW1yTJDJARYcEbASLVFaSYm2hc7gguXAShNzZ4jb%0D%0AvJexaZyFm2ifOggkL8vyi4QDQaihvkinQDElrnr639A62oEPH3bHxMBafUvJO2uIb6nvnM0RY0PF%0D%0A94MFr%2BRcVEy3BfuUHR11qeS8VVtrPKw5WDfGIyj5MlC3YIalbYzLqFVPqx4sxVyg%2B8truxTFH4Mw%0D%0A4FSiN9mZQIw12KZmrH1Cyvp3zI%2FYAhAqyYZpOJZz77x2n%2FVyNHBxbhwCJhAWzhF3jjzgr2ZjMr1D%0D%0AvJwTjwwT74SzHfimM%2Bd845X5pFfZ69glE44snKqfLjzifdrFG0PwvM7zodq2JkPNL3Ba92mgbnmT%0D%0A2Q8h69aEPdTPnrfC8PgP0w%2FXy6tF%2Bankd53NlHz5y%2FofAAAA%2F%2F8DAFBLAQItABQABgAIAAAAIQCs%0D%0AmTVRbwEAAD8EAAATAAAAAAAAAAAAAAAAAAAAAABbQ29udGVudF9UeXBlc10ueG1sUEsBAi0AFAAG%0D%0AAAgAAAAhALVVMCP0AAAATAIAAAsAAAAAAAAAAAAAAAAAqAMAAF9yZWxzLy5yZWxzUEsBAi0AFAAG%0D%0AAAgAAAAhAIH0CisEAQAApwIAABoAAAAAAAAAAAAAAAAAzQYAAHhsL19yZWxzL3dvcmtib29rLnht%0D%0AbC5yZWxzUEsBAi0AFAAGAAgAAAAhAO3NKzphAgAA1gQAAA8AAAAAAAAAAAAAAAAAEQkAAHhsL3dv%0D%0Acmtib29rLnhtbFBLAQItABQABgAIAAAAIQCW8NesNBsAAABOAAARAAAAAAAAAAAAAAAAAJ8LAAB4%0D%0AbC92YmFQcm9qZWN0LmJpblBLAQItABQABgAIAAAAIQCLgm5YkwYAAI4aAAATAAAAAAAAAAAAAAAA%0D%0AAAInAAB4bC90aGVtZS90aGVtZTEueG1sUEsBAi0AFAAGAAgAAAAhAN4j8tOFAgAAsQUAAA0AAAAA%0D%0AAAAAAAAAAAAAxi0AAHhsL3N0eWxlcy54bWxQSwECLQAUAAYACAAAACEAyuNFvHoBAACgAgAAGAAA%0D%0AAAAAAAAAAAAAAAB2MAAAeGwvd29ya3NoZWV0cy9zaGVldDEueG1sUEsBAi0AFAAGAAgAAAAhAKHe%0D%0AC%2BpDAQAAYwIAABEAAAAAAAAAAAAAAAAAJjIAAGRvY1Byb3BzL2NvcmUueG1sUEsBAi0AFAAGAAgA%0D%0AAAAhAN5BFtmKAQAAEQMAABAAAAAAAAAAAAAAAAAAoDQAAGRvY1Byb3BzL2FwcC54bWxQSwUGAAAA%0D%0AAAoACgB9AgAAYDcAAAAA&contentType=text/plain
----=_Part_2_5070931.1417531039501
Managed to solve this problem by using the following request body header.
POST http://privatecloud.com/rest/api/setDataField HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: multipart/form-data; boundary="----=_Part_0_2215605.1417599940206"
MIME-Version: 1.0
Content-Length: 22311
Host: privatecloud.com
Connection: Keep-Alive
User-Agent: Apache-HttpClient/4.1.1 (java 1.5)
------=_Part_0_2215605.1417599940206
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: form-data; name="sessionId"
f2d1dab5b6f843feb71344e437a2df88#1
------=_Part_0_2215605.1417599940206
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: form-data; name="objName"
demoAttachment
------=_Part_0_2215605.1417599940206
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: form-data; name="fieldName"
file
------=_Part_0_2215605.1417599940206
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: form-data; name="contentType"
text/plain
------=_Part_0_2215605.1417599940206
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: form-data; name="fileName"
Book.xlsm
------=_Part_0_2215605.1417599940206
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: form-data; name="output"
xml
------=_Part_0_2215605.1417599940206
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Content-Disposition: form-data; name="id"
20936
------=_Part_0_2215605.1417599940206
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: quoted-printable
Content-Disposition: form-data; name="value"
UEsDBBQABgAIAAAAIQCsmTVRbwEAAD8EAAATAAgCW0NvbnRlbnRfVHlwZXNdLnhtbCCiBAIooAA=
C AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
AAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
AAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
------=_Part_0_2215605.1417599940206--
- See more at: https://community.progress.com/community_groups/rollbase/f/25/p/14664/52650.aspx?Redirected=true#52650