Thanks, Kevin, but I tried that approach as well. Moved my base64 encoding to the point after I wrote/read the file from IFS. Same issue. Maybe 819 isn't the code page I should be using? But Somehow I thought I had seen comments floating in the internet that the base64 encoding service program was meant to be used with EBCDIC data. I could be mistaken. I also tried sending the string just after encoding to base64, without writing to IFS and reading again. Same bad result.On Tue, Nov 17, 2020 at 6:31 AM Kevin Bucknum <Kevin@xxxxxxxxxxxxxxxxxxx> wrote:--It will need to be ASCII/UTF/etc before you encode it. Translate it before you base64 encode it.
On Tue, 2020-11-17 at 06:09 -0800, Braden Lincoln wrote:Hoping someone can help. I have overcome all the connectivity issues with this SOAP web service I am connecting to. And I can even send the file payload. But the encoding of the data is just wrong, and I can't seem to find the magic solution.
I've tried sending the raw data as a string. Server rejects it immediately with http 500 error. It suggested it was not "properly base64 encoded data". So, I downloaded and installed the BASE64 encoding service program from Scott. I encoded the string, and it went through, http 200, we thought we were home free. But the data on the receiving server was garbled - apparently not encoded in a way that they could decode it correctly. I thought maybe it was an EBCDIC/ascii issue, so i decided to write the encoded string to the IFS using code page 819, then read it back in and send it. Same result.
I've tried every which way I can think of (which is apparently just short of enough). I need some expert advice on how to get this string to the receiver correctly.
Attached are the program source, the http log (where the request string can be seen), and the garbled mess from the receiving server. Hoping for some sage advice. Thanks in advance.
Kevin Bucknum
Senior Programmer Analyst
MEDDATA / MEDTRON
120 Innwood Drive
Covington LA 70433
Local: 985-893-2550
Toll Free: 877-893-2550
https://www.medtronsoftware.com
CONFIDENTIALITY NOTICE
This document and any accompanying this email transmission contain confidential information, belonging to the sender that is legally privileged. This information is intended only for the use of the individual or entity named above. The authorized recipient of this information is prohibited from disclosing this information to any other party and is required to destroy the information after its stated need has been fulfilled. If you are not the intended recipient, or the employee of agent responsible to deliver it to the intended recipient, you are hereby notified that any disclosure, copying, distribution or action taken in reliance on the contents of these documents is STRICTLY PROHIBITED. If you have received this email in error, please notify the sender immediately to arrange for return or destruction of these documents.
_______________________________________________
Ftpapi mailing list
Ftpapi@xxxxxxxxxxxxxxxxxxxxxx
http://scottklement.com/mailman/listinfo/ftpapi
**free ctl-opt DFTACTGRP(*NO) BNDDIR('HTTPAPI':'BASE64') ACTGRP('QILE') ; // // Send request to CIBRS to send data // // /copy httpapi_h dcl-f cibrresp disk usage(*output) rename(cibrresp:resp) ; dcl-f nibrcibr disk usage(*input) rename(nibrcibr:recin) ; dcl-s url varchar(100) ; dcl-s soap varchar(1000000) ccsid(1208) ; dcl-s myresponse varchar(1000000) ; dcl-s myFile char(1000000) ; dcl-s myAscii char(1000000) ccsid(1208) ; dcl-s myEncode char(2732) ; dcl-s myResult char(7000) ccsid(1208) ; dcl-s logFile varchar(200) ; dcl-s myPath char(200) ; dcl-s l int(10) ; dcl-s nl int(10) ; dcl-s o int(10) ; dcl-s x int(10) ; dcl-s y int(10) ; dcl-s z int(10) ; dcl-s myid int(10) ; dcl-s rc int(10) ; dcl-s fd int(10) ; dcl-s flags int(10) ; dcl-s crlf char(2) inz(X'0D25') ; exec sql set option commit = *none, naming = *sql, datfmt = *iso, datsep = '-', timfmt = *iso ; clear myFile ; read recin ; // note: the "record length" of each record is variable, based on the "seglen" field in the record. // Each record may contain trailing blanks; crlf is appended at the appropriate place to delineate end of line. dow not %eof(nibrcibr) ; l = %len(%trimr(myFile)) ; myfile = %trimr(myFile)+seglen+seglvl+segact+segmon+segyer+citind+orinum+incnum+lvlrcd ; // all the columns in the table %subst(myFile:(l+%int(seglen)+1):2)= crlf ; // add crlf at end of each record read recin ; enddo ; myFile = %trimr(myFile)+X'00' ; nl = %len(%trimr(myFile)) ; // length of data in the string y = (nl/2732)+1 ; //encode to base64 for x = 1 to y ; z = (x*2732)-2731 ; myEncode = %subst(myFile:z:2732) ; exec sql values SYSTOOLS.BASE64ENCODE(:myencode) into :myResult ; myAscii = %trim(myAscii)+%trim(myResult) ; endfor; myAscii = myAscii ; logFile = '/home/CIBRS/logs/http_api_log'+%char(%timestamp:*iso0)+'.txt' ; http_debug(*on:logfile) ; url = 'https://catraining.nibrs.com/SwiftUpload.svc' ; // their test site soap = '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:swif="http://www.otech.com/SwifthRepository/SwiftUpload">'+ '<soapenv:Header>'+ '<swif:SwiftUploadCredentials>'+ '<swif:Password>myUserID</swif:Password>'+ '<swif:UserName>myPassword</swif:UserName>'+ '</swif:SwiftUploadCredentials>'+ '</soapenv:Header>'+ '<soapenv:Body>'+ '<swif:UploadRequest>'+ '<swif:FileName>CIBR_NIBR202011010921</swif:FileName>'+ '<swif:ORINumber>CA1234567</swif:ORINumber>'+ '<swif:File><![CDATA['+%trimr(myAscii)+']]></swif:File>'+ '</swif:UploadRequest>'+ '</soapenv:Body>'+ '</soapenv:Envelope>' ; // good place to monitor for errors // monitor ; rc=http_setOption('soap-action':'http://www.otech.com/SwifthRepository/SwiftUpload/SwiftUpload/Upload') ; rc = http_req('POST':url:*omit:myresponse:*omit:soap:'text/xml') ; if rc = 302 ; rc = http_req('POST':http_redir_loc():*omit:myresponse:*omit:soap:'text/xml') ; endif ; // on-error ; // *inlr = *on ; // return ; //endmon ; // write the response to database table response = %trim(myresponse) ; write resp ; // at this point, we would scan this string to see what "kind" of response we got, or we could parse the // response XML document into a data structure, either way we will need to handle // the responses *inlr = *on ;
HTTPAPI Ver 1.42 released 2020-10-12 NTLM Ver 1.4.0 released 2014-12-22 OS/400 Ver V7R4M0 http_persist_open(): entered http_long_ParseURL(): entered DNS resolver retrans: 2 DNS resolver retry : 2 DNS resolver options: x'00000136' DNS default domain: LOCAL.TECADATASAFE.COM DNS server found: 8.8.8.8 Nagle's algorithm (TCP_NODELAY) disabled. SNI hostname set to: catraining.nibrs.com ------------------------------------------------------------------------------------- Dump of server-side certificate information: ------------------------------------------------------------------------------------- Cert Validation Code = 6000 -----BEGIN CERTIFICATE----- MIIG1jCCBb6gAwIBAgIJAPyMafwv/fv6MA0GCSqGSIb3DQEBCwUAMIG0MQswCQYD VQQGEwJVUzEQMA4GA1UECBMHQXJpem9uYTETMBEGA1UEBxMKU2NvdHRzZGFsZTEa MBgGA1UEChMRR29EYWRkeS5jb20sIEluYy4xLTArBgNVBAsTJGh0dHA6Ly9jZXJ0 cy5nb2RhZGR5LmNvbS9yZXBvc2l0b3J5LzEzMDEGA1UEAxMqR28gRGFkZHkgU2Vj dXJlIENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTE5MTIyMjEzNTQxMloX DTIyMDIyMTAzNTgwMFowaDELMAkGA1UEBhMCVVMxDTALBgNVBAgTBE9oaW8xETAP BgNVBAcTCENvbHVtYnVzMSEwHwYDVQQKExhPcHRpbXVtIFRlY2hub2xvZ3ksIElu Yy4xFDASBgNVBAMMCyoubmlicnMuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A MIIBCgKCAQEAuEs9aJJrerfJlexDZZd9+vjshPSINnumBa6diyTg6q4EnpVy5oh+ K7FardcihOdiWcu3h65X8DHDmRhnmdlX6tLjt+3Bp6L2vQuyyPbXdEaCTH7McqJx u/tR5qaxXhh3n4ihF15UoFDySJqjvhiyEma4fX1cHxHECIfPRaSlfzwGZa3OZjNa Q4Y7Kv/RpT2eb/+ym/kpIsTwaWsOuOmkgiztUzJNFGlFeFdsL/l2KqtmZOADo6Zt sRNFwJowL0A/2TR8V/8DB6mdprF7hl4WsjPnAhLutZufNTHeNJGFmMu0g2O+NrJn jlF7vZXUvcIj7PhqKXoaPZzYF6ZB3w/7TwIDAQABo4IDNDCCAzAwDAYDVR0TAQH/ BAIwADAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwDgYDVR0PAQH/BAQD AgWgMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jcmwuZ29kYWRkeS5jb20vZ2Rp ZzJzMi0xNC5jcmwwXQYDVR0gBFYwVDBIBgtghkgBhv1tAQcXAjA5MDcGCCsGAQUF BwIBFitodHRwOi8vY2VydGlmaWNhdGVzLmdvZGFkZHkuY29tL3JlcG9zaXRvcnkv MAgGBmeBDAECAjB2BggrBgEFBQcBAQRqMGgwJAYIKwYBBQUHMAGGGGh0dHA6Ly9v Y3NwLmdvZGFkZHkuY29tLzBABggrBgEFBQcwAoY0aHR0cDovL2NlcnRpZmljYXRl cy5nb2RhZGR5LmNvbS9yZXBvc2l0b3J5L2dkaWcyLmNydDAfBgNVHSMEGDAWgBRA wr0njsw0gzCiM9f7bLPwtCyAzjAhBgNVHREEGjAYggsqLm5pYnJzLmNvbYIJbmli cnMuY29tMB0GA1UdDgQWBBQaWeZPY73/Cq8BguMCOpAgNdzXAzCCAX0GCisGAQQB 1nkCBAIEggFtBIIBaQFnAHcApLkJkLQYWBSHuxOizGdwCjw1mAT5G9+443fNDsgN 3BAAAAFvLeMPNgAABAMASDBGAiEAnHcr0YaOGI4v8If2wjxaQI3t77B3GYs053YT /EF78VACIQDtA42mYTq+5vI6N+AKsetrMc7h9IBtJQIS2gQfi+MCfgB1AO5Lvbd1 zmC64UJpH6vhnmajD35fsHLYgwDEe4l6qP3LAAABby3jE6gAAAQDAEYwRAIgevSL oG2m+pjDCTtwgFR2pFlDYVJ/GJwuCt8JJzMgarMCIEheLicsw9DbDKytHcv6Oh9c 4RtBVjx1FXmGxQYcfsddAHUAVhQGmi/XwuzT9eG9RLI+x0Z2ubyZEVzA75SYVdaJ 0N0AAAFvLeMVQgAABAMARjBEAiBLjuF0XaTvEl6tRm7gPUPJ+FxrCZSAmv/mYuGp aengkAIgLyyo3r00TfWJMTRKh4PIbBmP+sAMC+MiP2TX8BOkeVQwDQYJKoZIhvcN AQELBQADggEBAEhZwkJjDOrsZpkDtQyqBszGx2fUGPmlsQW3XLVkH9TbukxaLdTq AH6eyHL7oiW9Q+1F/k6SW2MqwNFuWUnE9alfWTIPgKxZoHmAklyRkRna7TWK3JxO X76EbUmCKjc4snh+NgSmNXo96o58/mug02eRLGy+rJ758AvL1WDysp0rIy+kfVHt 9gUzMJ/wgDRz5SlWEoT1wcBopI2n8nTaR04jaoo7s0y/r/jx7NIFbTUKcLcUIEqT LTFZr4gkqGxorEpslo7ZtdZG82DoXNgtLV7EKY/jbEx0IVArBHm020ghnTCct0fh YEwoPh7gDJ1m7eEuPim36fUHeG0HlsLZBSc= -----END CERTIFICATE----- Serial Number: 00:FC:8C:69:FC:2F:FD:FB:FA Common Name: *.nibrs.com Country: US State/Province: Ohio Locality: Columbus Org Unit: Optimum Technology, Inc. Issuer CN: Go Daddy Secure Certificate Authority - G2 Issuer Country: US Issuer State/Province: Arizona Issuer Locality: Scottsdale Issuer Org: GoDaddy.com, Inc. Issuer Org Unit: http://certs.godaddy.com/repository/ Version: 3 not before: 20191222055412 Unknown Field: 05:54:12 22-12-2019 not after: 20220220195800 Unknown Field: 19:58:00 20-02-2022 pub key alg: 1.2.840.113549.1.1.1 signature algorithm: 1.2.840.113549.1.1.11 Unknown Field: 0382010F003082010A0282010100B84B3D68926B7AB7C995EC4365977DFAF8EC84F488367BA605AE9D8B24E0EAAE049E9572E6887E2BB15AADD72284E76259CBB787AE57F031C399186799D957EAD2E3B7EDC1A7A2F6BD0BB2C8F6D77446824C7ECC72A271BBFB51E6A6B15E18779F88A1175E54A050F2489AA3BE18B21266B87D7D5C1F11C40887CF45A4A57F3C0665ADCE66335A43863B2AFFD1A53D9E6FFFB29BF92922C4F0696B0EB8E9A4822CED53324D14694578576C2FF9762AAB6664E003A3A66DB11345C09A302F403FD9347C57FF0307A99DA6B17B865E16B233E70212EEB59B9F3531DE34918598CBB48363BE36B2678E517BBD95D4BDC223ECF86A297A1A3D9CD817A641DF0FFB4F0203010001 Unknown Field: 2048 Unknown Field: 96B0F82452796E272042534E1EF72B6B Unknown Field: 1.2.840.113549.2.5 Unknown Field: EF326B9ABD947820EB13AB9B3F4913CBFBCC8794 Unknown Field: 37BDE3AF9FC8481B81E079D64B146A1D254F3BFABE67B3C5BAEFC73F52AADCD0 Unknown Field: 5 Unknown Field: *.nibrs.com Unknown Field: 0 Unknown Field: 1.3.6.1.5.5.7.3.2 Unknown Field: 1.3.6.1.5.5.7.3.1 Unknown Field: 2.23.140.1.2.2 Unknown Field: 2.16.840.1.114413.1.7.23.2 Unknown Field: http://ocsp.godaddy.com/ Protocol Used: TLS Version 1.2 http_persist_req(POST) entered. http_long_ParseURL(): entered http_long_ParseURL(): entered do_oper(POST): entered There are 2 cookies in the cache POST /SwiftUpload.svc HTTP/1.1 Host: catraining.nibrs.com User-Agent: http-api/1.43 Content-Type: text/xml SOAPAction: http://www.otech.com/SwifthRepository/SwiftUpload/SwiftUpload/Upload Content-Length: 11468 Cookie: $Version=0; ARRAffinity=ceb254e931dc3c85fc581cb9af526dbcc121f61ab18fb7cf2b6bedf4e7c3ab97; $Path=/; $Domain=catraining.nibrs.com; $Version=0; ARRAffinitySameSite=ceb254e931dc3c85fc581cb9af526dbcc121f61ab18fb7cf2b6bedf4e7c3ab97; $Path=/; $Domain=catraining.nibrs.com; senddoc(): entered <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:swif="http://www.otech.com/SwifthRepository/SwiftUpload"><soapenv:Header><swif:SwiftUploadCredentials><swif:Password>MyPassword</swif:Password><swif:UserName>MyUserID</swif:UserName></swif:SwiftUploadCredentials></soapenv:Header><soapenv:Body><swif:UploadRequest><swif:FileName>CIBR_NIBR202011010921</swif:FileName><swif:ORINumber>CA0270700</swif:ORINumber><swif:File><![CDATA[8PD49/HJ8fHy8PLwQEBAQMPB8PL38Pfw8NfH8PD58PDw8UBAQPLw8vDx8fDx2fH01UBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBADSXw8Pfx8snx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PDxQEBA8vPDw9VAQMfDQEBAQEBAQEBAQEBAQEBA8fFAQEBAQEBAQA0l8PPw9/PJ8fHy8PLwQEBAQMPB8PL38Pfw8NfH8PD58PDw8UBAQPfw8vDw8PDw8PDw9UBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQA0l8PPw9/PJ8fHy8PLwQEBAQMPB8PL38Pfw8NfH8PD58PDw8UBAQPXw8vDw8PDw8PDw9fLw8vDx8fHzQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQA0l8PH08fTJ8fHy8PLwQEBAQMPB8PL38Pfw8NfH8PD58PDw8UBAQPDw8fLzw0BAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQMJAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBADSXw8PT29cnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PDxQEBA8PH38EBA1OZADSXw8PT29cnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PDxQEBA8PLx9UBA8fFADSXw8fHw9snx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PDxQEBA8PHXx/Dw+fDw8PFg8PHy8PLw8fHw+NbV8vPD8PFAQEBA9/BAQNTmQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQA0l8PT19/jJ8fHy8PLwQEBAQMPB8PL38Pfw8NfH8PD58PDw8UBAQPnz+fXw1dXVQEDy88Px8UBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQPLzw/Lz8vHx18P09flL9UBAQEBAQEBAQEBAQEBAQEBAQEBA1EBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQA0l8PH49vnJ8fHy8PLwQEBAQMPB8PL38Pfw8NfH8PD58PDw8UBAQPDw8UDy88Po8PPw9UBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBADSXw8Pnxwsnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PDxQEBA8PHXx/Dw+fDw8PFg8PHy88Py8/Lx8dfD9PX5S/VAQEBAQEBAQEBAQEBAQEBAQEBAQNTVQEDDDSXw8Pj38cnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PDyQEBA8vDy8PHx8PHZ8fTB8vDy8PHx8fNAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEANJfDw9/HyyfHx8vDy8EBAQEDDwfDy9/D38PDXx/Dw+fDw8PJAQEDx8vDD1UBA2cRAQEDVQED5+UBAQEBAQEDx8UBAQEBAQEBADSXw8/D388nx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PDyQEBA9/D08PDw8PDw8fL1QEBAQEBAQED08vDw8PDw8fDx8EBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBADSXw8/D388nx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PDyQEBA9fD08PDw8PDw8fL18vDy8PHx8fP08vDw8PDw8fDx8PLw8vDx8fHzQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBADSXw8fTx9Mnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PDyQEBA8PDx8fLwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAyfL1QEDUyUBAQEA=QEBA1UBAQEDw8cHYQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBADSXw8PT29cnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PDyQEBA8PH08UBA1PlADSXw9PX3+Mnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PDyQEBA+fP59fDV1dVAQPHy8PHxQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBA8fLw8fLw8PTXw/Lx8UBAQEBAQEBAQEBAQEBAQEBAQEBAQEDGQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBADSXw8fj2+cnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PDyQEBA8PDx1fHy8Ojw9PDxQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEANJfDw+PfxyfHx8vDy8EBAQEDDwfDy9/D38PDXx/Dw+fDw8PNAQEDy8PLw8fHw8dnx9MPy8PLw8fHx80BAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQA0l8PD38fLJ8fHy8PLwQEBAQMPB8PL38Pfw8NfH8PD58PDw80BAQPHzwsPVQEDHw0BAQNVAQPTwQEBAQEBAQPj4QEBAQEBAQEANJfDx9PH0yfHx8vDy8EBAQEDDwfDy9/D38PDXx/Dw+fDw8PNAQEDw8PHx88JAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDJ8/BAQNTmQEBAQEBAQNRAQEBA8PHZ5PDywdhAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQA0l8PD09vXJ8fHy8PLwQEBAQMPB8PL38Pfw8NfH8PD58PDw80BAQPDx8/BAQOTkQA0l8PD09vXJ8fHy8PLwQEBAQMPB8PL38Pfw8NfH8PD58PDw80BAQPDy8vlAQOT4QA0l8PD09vXJ8fHy8PLwQEBAQMPB8PL38Pfw8NfH8PD58PDw80BAQPDz8vdAQPHpQA0l8PHx8PbJ8fHy8PLwQEBAQMPB8PL38Pfw8NfH8PD58PDw80BAQPDx18fw8Pnw8PDzYPDx8vDy8PHx8PnW1fHzwvDxQEBAQPPwQEDk5EBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEANJfD09ff4yfHx8vDy8EBAQEDDwfDy9/D38PDXx/Dw+fDw8PNAQED58/n18NXV1UBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDx88Lx8/D089fD8vTwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQNRAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEANJfDx+Pb5yfHx8vDy8EBAQEDDwfDy9/D38PDXx/Dw+fDw8PNAQEDw8PHVQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQA0l8PD58cLJ8fHy8PLwQEBAQMPB8PL38Pfw8NfH8PD58PDw80BAQPDx18fw8Pnw8PDzYPDx8fPC8fPw9PPXw/L08EBAQEBAQEBAQEBAQEBAQEBAQEBAQEDU1UBAww0l8PD49/HE8fHy8PLwQEBAQMPB8PL38Pfw8NfH8PD58PDw9EBAQPLw8vDx8fDx2UBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBADSXw8Pj38cnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PD0QEBA8vDy8PHx8PHZ8PjVQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEANJfDw9/HyyfHx8vDy8EBAQEDDwfDy9/D38PDXx/Dw+fDw8PRAQEDx88HD1UBAxMlAQEDVQEDWwkBAQEBAQED4+EBAQEBAQEBADSXw8fTx9Mnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PD0QEBA8PDx8fPBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAyfTyQEDGyUBAwddAQEDTQEBAQPDx8fBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEANJfDw9Pb1yfHx8vDy8EBAQEDDwfDy9/D38PDXx/Dw+fDw8PRAQEDw8fT1QEDGyUANJfDx8fD2yfHx8vDy8EBAQEDDwfDy9/D38PDXx/Dw+fDw8PRAQEDw8dfH8PD58PDw9GDw8fLw8vDx8fHx1tXx88Hw8UBAQED09UBAxslAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBADSXw9PX3+Mnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PD0QEBA+fP59fDV1dVAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBA8fPB8fPx9/TXw/L0803FXU3xXUBAQEA=QEBAQEBAQEBAQEBA1EBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQA0l8PH49vnJ8fHy8PLwQEBAQMPB8PL38Pfw8NfH8PD58PDw9EBAQPDw8dVAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBADSXw8Pnxwsnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PD0QEBA8PHXx/Dw+fDw8PRg8PHx88Hx8/H39NfD8vTzTcVdTfFdQEBAQEBAQEBAQEBAQEBAQNTVQEDDDSXw8Pj38cnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PHxQEBA8vDy8PDx8fHZ8fDVQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEANJfDw9/HyyfHx8vDy8EBAQEDDwfDy9/D38PDXx/Dw+fDw8fFAQEDy8vDD1UBA8fTw8sZAQEBAQEBAQEBAQED4+EBAQEBAQEBADSXw8/D388nx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PHxQEBA9/D08PDw8PDw8vHwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBADSXw8/D388nx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PHxQEBA9fD08PDw8PDw8vHw8vDy8PHx8fNAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBADSXw8fTx9Mnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PHxQEBA8PDx8vLwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAyffwQEDU5kBAQEBAQEBAQEBAQPDxwdhAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEANJfDw9Pb1yfHx8vDy8EBAQEDDwfDy9/D38PDXx/Dw+fDw8fFAQEDw8fbwQEDU5kANJfDx8fD2yfHx8vDy8EBAQEDDwfDy9/D38PDXx/Dw+fDw8fFAQEDw8dfH8PD58PDx8WDw8fLw8vDx8fDx1tXy8vDw8UBAQED28EBA1OZAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBADSXw9PX3+Mnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PHxQEBA+fP59fDV1dVAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBA8vLw8vLx8/DXw/T1+UBAQEBAQEBAQEBAQEBAQEBAQEBAQEDUQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBADSXw8fj2+cnx8fLw8vBAQEBAw8Hw8vfw9/Dw18fw8Pnw8PHxQEBA8PDx6EBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEANJfDw+fHCyfHx8vDy8EBAQEDDwfDy9/D38PDXx/Dw+fDw8fFAQEDw8dfH8PD58PDx8WDw8fLy8PLy8fPw18P09flAQEBAQEBAQEBAQEBAQEBAQEBAQEBA1NVAQMMNJQBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEA=]]></swif:File></swif:UploadRequest></soapenv:Body></soapenv:Envelope> recvresp(): entered HTTP/1.1 200 OK Cache-Control: no-cache, no-store Pragma: no-cache Content-Length: 419 Content-Type: text/xml; charset=utf-8 Expires: -1 Server: Microsoft-IIS/10.0 X-Frame-Options: SAMEORIGIN X-AspNet-Version: 4.0.30319 X-Powered-By: ASP.NET Date: Tue, 17 Nov 2020 23:32:34 GMT SetError() #13: HTTP/1.1 200 OK recvresp(): end with 200 recvdoc parms: identity 419 header_load_cookies() entered recvdoc(): entered SetError() #0: recvdoc(): Receiving 419 bytes. <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><UploadResponse xmlns="http://www.otech.com/SwifthRepository/SwiftUpload"><OperationStatusID>Success</OperationStatusID><OperationStatusMessage>Success</OperationStatusMessage><SubmissionID>2015</SubmissionID></UploadResponse></s:Body></s:Envelope> http_close(): entered
????????????@@@@??????????????????@@@????????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@?????@@??@@@@@@@@@@@@@@@??@@@@@@@@ %????????????@@@@??????????????????@@@????????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????????????????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@??????@@@@@@@@@@@@@@@@@@@@@@@@@@@?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????@@??@ %????????????@@@@??????????????????@@@????@@??@ %????????????@@@@??????????????????@@@???????????`?????????????????@@@@??@@??@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????????@@?????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?????????????K?@@@@@@@@@@@@@@@@@@@@?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@???@????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@???????????`???????????????K?@@@@@@@@@@@@@@@@@@@@??@@? %????????????@@@@??????????????????@@@????????????????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@?????@@??@@@?@@??@@@@@@@??@@@@@@@@ %????????????@@@@??????????????????@@@????????????@@@@@@@@???????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@???????????????????????????????????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@??????@@@@@@@@@@@@@@@@@@@@@@@@@@@???@@??@@@@@@@?@@@@????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????@@??@ %????????????@@@@??????????????????@@@????????@@?????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?????????????@@@@@@@@@@@@@@@@@@@@@@?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????????????????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@?????@@??@@@?@@??@@@@@@@??@@@@@@@@ %????????????@@@@??????????????????@@@??????@@@@@@@@@@@@@@@@@@@@@@@@@@@???@@??@@@@@@@?@@@@????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????@@??@ %????????????@@@@??????????????????@@@????@@??@ %????????????@@@@??????????????????@@@????@@??@ %????????????@@@@??????????????????@@@???????????`?????????????????@@@@??@@??@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?????????????@@@@@@@@@@@@@@@@@@@@@@?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@???????????`???????????????@@@@@@@@@@@@@@@@@@@@@@??@@? %????????????@@@@??????????????????@@@?????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@?????@@??@@@?@@??@@@@@@@??@@@@@@@@ %????????????@@@@??????????????????@@@??????@@@@@@@@@@@@@@@@@@@@@@@@@@@???@@??@@??@@@?@@@@????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????@@??@ %????????????@@@@??????????????????@@@???????????`?????????????????@@@@??@@??@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?????????????M?]M?]@@@@@@@@@@@@@@@@?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@???????????`???????????????M?]M?]@@@@@@@@@@@@@@@@??@@? %????????????@@@@??????????????????@@@????????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@?????@@?????@@@@@@@@@@@@??@@@@@@@@ %????????????@@@@??????????????????@@@????????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????????????????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@??????@@@@@@@@@@@@@@@@@@@@@@@@@@@???@@??@@@@@@@@@@@@????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????@@??@ %????????????@@@@??????????????????@@@???????????`?????????????????@@@@??@@??@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?????????????@@@@@@@@@@@@@@@@@@@@@@?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@????@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %????????????@@@@??????????????????@@@???????????`???????????????@@@@@@@@@@@@@@@@@@@@@@??@@? % @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
-- _______________________________________________ Ftpapi mailing list Ftpapi@xxxxxxxxxxxxxxxxxxxxxx http://scottklement.com/mailman/listinfo/ftpapi