[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: gsk_sec_soc_open: (GSKit) Handle is not valid.



I followed the instructions on create the *SYSTEM Certificate Store, now I am getting this message: HTTP/1.1 500 Internal Server Error. I have attached the debug file.

Thanks,
Naresh


Naresh Mistry | TM Architect | Nulogx Inc. | 5090 Explorer Dr, Suite 203, Mississauga, ON L4W 4T9 | T: 905-486-1162 x 238 | F: 905-267-3164 | C: 416-820-5231
www.nulogx.com | Transportation Management Solutions | www.cgfi.ca | Canadian General Freight Index - Register Today



-----Original Message-----
From: ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx [mailto:ftpapi-bounces@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of Mike Krebs
Sent: Tuesday, December 07, 2010 7:50 PM
To: HTTPAPI and FTPAPI Projects
Subject: RE: gsk_sec_soc_open: (GSKit) Handle is not valid.

"Key database file was not found."

It would seem that the *SYSTEM certificate has not been created?

In the information Center for V6R1 http://publib.boulder.ibm.com/infocenter/iseries/v6r1m0/index.jsp , open security, click on Digital Certificate Manager, follow the instructions for Starting Digital Certifcate Manager. Once you get to the DCM, follow the instructions in the README of HTTPAPI.


-----------------------------------------------------------------------
This is the FTPAPI mailing list.  To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------
HTTPAPI Ver 1.23 released 2008-04-24
OS/400 Ver V6R1M0

New iconv() objects set, PostRem=819. PostLoc=0. ProtRem=819. ProtLoc=0
http_persist_open(): entered
http_long_ParseURL(): entered
DNS resolver retrans: 2
DNS resolver retry  : 2
DNS resolver options: x'00000136'
DNS default domain: corp.nulogx.com
DNS server found: 10.1.2.10
https_init(): entered
-------------------------------------------------------------------------------------
Dump of local-side certificate information:
-------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------
Dump of server-side certificate information:
-------------------------------------------------------------------------------------
Cert Validation Code = 6000
-----BEGIN CERTIFICATE-----
MIIFhzCCBG+gAwIBAgIQPT0djGnr4ZdGM1V11tjHQjANBgkqhkiG9w0BAQUFADCB
tTELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL
ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYDVQQLEzJUZXJtcyBvZiB1c2Ug
YXQgaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYSAoYykwOTEvMC0GA1UEAxMm
VmVyaVNpZ24gQ2xhc3MgMyBTZWN1cmUgU2VydmVyIENBIC0gRzIwHhcNMTAwNDA2
MDAwMDAwWhcNMTEwNDA2MjM1OTU5WjB0MQswCQYDVQQGEwJVUzESMBAGA1UECBMJ
VGVubmVzc2VlMRUwEwYDVQQHFAxDb2xsaWVydmlsbGUxDjAMBgNVBAoUBUZlZEV4
MQ8wDQYDVQQLFAZTUUEvUUUxGTAXBgNVBAMUEHdzYmV0YS5mZWRleC5jb20wggEi
MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCo7//lv8DHZ6YTohdtU58MBImH
4MaN5Vj5qYOklOcUihaj+ecHfGHnSEzPchRrbF/l+QlsDqWgFUwjyYTj3FzRegBC
ucVt4JYGDtGPe8ln3mved70NIZ2bS5evfXfVry+yUR0W16jdfo5UM7s6zSPLRoN6
T2r9c3Ww0oTragQ22dj+pe1mPdsFOmGJIz1Stf/YipKpoYV7lx0EwCbmDoIcJlOk
9Br/C63s/ndD/LzXtCRoL4VUt3rgoG+HzyNPzu0lIpLQpJTsHltuNfgTTciOdkvS
RVKMoXhUNms1FIFoddPsVH4A5vyEoLxqBzUAxM4n82kPNJ+t49Ar5r83MAurAgMB
AAGjggHRMIIBzTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIFoDBFBgNVHR8EPjA8MDqg
OKA2hjRodHRwOi8vU1ZSU2VjdXJlLUcyLWNybC52ZXJpc2lnbi5jb20vU1ZSU2Vj
dXJlRzIuY3JsMEQGA1UdIAQ9MDswOQYLYIZIAYb4RQEHFwMwKjAoBggrBgEFBQcC
ARYcaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYTAdBgNVHSUEFjAUBggrBgEF
BQcDAQYIKwYBBQUHAwIwHwYDVR0jBBgwFoAUpe8LEc7AQQOjSmWQSLIc4FctfUcw
dgYIKwYBBQUHAQEEajBoMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC52ZXJpc2ln
bi5jb20wQAYIKwYBBQUHMAKGNGh0dHA6Ly9TVlJTZWN1cmUtRzItYWlhLnZlcmlz
aWduLmNvbS9TVlJTZWN1cmVHMi5jZXIwbgYIKwYBBQUHAQwEYjBgoV6gXDBaMFgw
VhYJaW1hZ2UvZ2lmMCEwHzAHBgUrDgMCGgQUS2u5KJYGDLvQUjibKaxLB4shBRgw
JhYkaHR0cDovL2xvZ28udmVyaXNpZ24uY29tL3ZzbG9nbzEuZ2lmMA0GCSqGSIb3
DQEBBQUAA4IBAQBaUibwacA/bqu2r2wu+oOYQz4Sxmwjz2O8sEL3uni0v/TiCQcD
XSCzzbwLTrHkeiC6X5TshFc1meTfHmfMXPwRdQClLgcxTUfZh7fQM6m/T8FV0o60
qQP+Zsw4ysyK2I7Zom+aIVfZhtZSJTsCbMLmV26RWHrRVy6iZnqq3+kzJYmg6o5O
EheNSJj6TTtNaSzmHUo6TQKEBv0yAUAVVRzN1hpOC9aKgOVte9htB/YTMLPcZWJT
UzAtNpv9XbpzllW2AyiAxSW8EIRh7SkFXoRDIyziWu/Tk3MPbDqeFJT9i7xVgvWF
jFuULtbOuoc9q7Og7nCn4avdeOwIpsIk/Q8d
-----END CERTIFICATE-----
Serial Number: 3D:3D:1D:8C:69:EB:E1:97:46:33:55:75:D6:D8:C7:42
Common Name: wsbeta.fedex.com
Country: US
State/Province: Tennessee
Locality: Collierville
Org Unit: FedEx
Org: SQA/QE
Issuer CN: VeriSign Class 3 Secure Server CA - G2
Issuer Country: US
Issuer Org: VeriSign, Inc.
Issuer Org Unit: Terms of use at https://www.verisign.com/rpa (c)09, OU=VeriSign Trust Network
Version: 03
not before: 20100405200000
not after: 20110406195959
pub key alg: 1.2.840.113549.1.1.5

Protocol Used: TLS Version 1
http_persist_post(): entered
http_long_ParseURL(): entered
do_post(): entered
POST /web-services/rate HTTP/1.1
Host: wsbeta.fedex.com:443
User-Agent: http-api/1.23
Content-Type: text/xml
Expect: 100-continue
Content-Length: 2601


recvresp(): entered
HTTP/1.1 100 Continue


SetError() #13: HTTP/1.1 100 Continue
senddoc(): entered
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"; xmlns:v8="http://fedex.com/ws/rate/v8";> soapenv:Header/> <v8:RateRequest> <v8:WebAuthenticationDetail> <v8:UserCredential> <v8:Key>ILBu5AvIwuooPg5m</v8:Key> <v8:Password>on4pt3uiSPCk2RlP5h8uTXXTq</v8:Password> </v8:UserCredential> </v8:WebAuthenticationDetail> <v8:ClientDetail> <v8:AccountNumber>510087429</v8:AccountNumber> <v8:MeterNumber>118525213</v8:MeterNumber> <v8:ClientProductId>TEST</v8:ClientProductId> <v8:ClientProductVersion>9999</v8:ClientProductVersion>  </v8:ClientDetail>  <v8:TransactionDetail>  <v8:CustomerTransactionId>Test v8 Rate Request</  v8:CustomerTransactionId>  </v8:TransactionDetail>  <v8:Version>  <v8:ServiceId>crs</v8:ServiceId>  <v8:Major>8</v8:Major>  <v8:Intermediate>0</v8:Intermediate>  <v8:Minor>0</v8:Minor>  </v8:Version>  <v8:ReturnTransitAndCommit>true</v8:ReturnTransitAndCommit>  <v8:RequestedShipment>  <v8:ShipTimestamp>2009-08-19T16:15:00-05:00</v8:ShipTimestamp>  <v8:DropoffType>REGULAR_PICKUP</v8:DropoffType>  <v8:CountryCode>US</v8:CountryCode>  </v8:Address>  </v8:Shipper>  <v8:Recipient>  <v8:Address>  <v8:StreetLines>123 Oak Street</v8:StreetLines>  <v8:City>Collierville</v8:City>  <v8:StateOrProvinceCode>TN</v8:StateOrProvinceCode>  <v8:PostalCode>38017</v8:PostalCode>  <v8:CountryCode>US</v8:CountryCode>  </v8:Address>  </v8:Recipient>  <v8:RateRequestTypes>ACCOUNT</v8:RateRequestTypes>  <v8:PackageCount>2</v8:PackageCount>  <v8:PackageDetail>INDIVIDUAL_PACKAGES</v8:PackageDetail>  <v8:RequestedPackages>  <v8:SequenceNumber>1</v8:SequenceNumber>  <v8:InsuredValue>  <v8:Currency>USD</v8:Currency>  <v8:Amount>50.00</v8:Amount>  </v8:InsuredValue>  <v8:Weight>  <v8:Units>LB</v8:Units>  <v8:Value>20.0</v8:Value>  </v8:Weight>  <v8:Dimensions>  <v8:Length>10</v8:Length>  <v8:Width>10</v8:Width>  <v8:Height>10</v8:Height>  <v8:Units>IN</v8:Units>  </v8:Dimensions>  <v8:CustomerReferences>  <v8:CustomerReferenceType>CUSTOMER_REFERENCE</  v8:CustomerReferenceType>  <v8:Value>TEST v8 REQUEST</v8:Value>  </v8:CustomerReferences>  </v8:RequestedPackages>  <v8:RequestedPackages>  <v8:SequenceNumber>2</v8:SequenceNumber>  <v8:InsuredValue>  <v8:Currency>USD</v8:Currency>  <v8:Amount>50.00</v8:Amount>  </v8:InsuredValue>  <v8:Weight>  <v8:Units>LB</v8:Units>  <v8:Value>10.0</v8:Value>  </v8:Weight>  <v8:Dimensions>  <v8:Length>5</v8:Length>  <v8:Width>5</v8:Width>  <v8:Height>5</v8:Height>  <v8:Units>IN</v8:Units>  </v8:Dimensions>  </v8:RequestedPackages>  </v8:RequestedShipment>  </v8:RateRequest>  <SOAP/soapenv:Body>  <SOAP/soapenv:BodyEnvelope>
recvresp(): entered
HTTP/1.1 500 Internal Server Error
Date: Wed, 08 Dec 2010 02:12:21 GMT
Server: Apache/2.2
Content-Length: 526
x-wily-servlet: Clear appServerIp=199.81.69.39&agentName=ESB-2&servletName=HttpTransportServlet&servletResponseTime=8&agentHost=qjaxtest4&agentProcess=WebLogic
X-Powered-By: Servlet/2.5 JSP/2.1
x-wily-info: Clear guid=C3C0325CC7514527160F62F9B643A32B
Connection: close
Content-Type: text/xml; charset=utf-8


SetError() #13: HTTP/1.1 500 Internal Server Error
recvdoc parms: identity 526
header_load_cookies() entered
recvdoc(): entered
SetError() #0:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";><soapenv:Body><soapenv:Fault><faultcode>soapenv:Client</faultcode><faultstring>Failure while unmarshalling message: Failed to parse XML text</faultstring><detail><con:fault xmlns:con="http://www.bea.com/wli/sb/context";><con:errorCode>9999</con:errorCode><con:reason>Failure while unmarshalling message: Failed to parse XML text</con:reason></con:fault></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope>
SetError() #13: HTTP/1.1 500 Internal Server Error
http_close(): entered
http_persist_open(): entered
http_long_ParseURL(): entered
DNS resolver retrans: 2
DNS resolver retry  : 2
DNS resolver options: x'00000136'
DNS default domain: corp.nulogx.com
DNS server found: 10.1.2.10
-------------------------------------------------------------------------------------
Dump of server-side certificate information:
-------------------------------------------------------------------------------------
Cert Validation Code = 6000
-----BEGIN CERTIFICATE-----
MIIFhzCCBG+gAwIBAgIQPT0djGnr4ZdGM1V11tjHQjANBgkqhkiG9w0BAQUFADCB
tTELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL
ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTswOQYDVQQLEzJUZXJtcyBvZiB1c2Ug
YXQgaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYSAoYykwOTEvMC0GA1UEAxMm
VmVyaVNpZ24gQ2xhc3MgMyBTZWN1cmUgU2VydmVyIENBIC0gRzIwHhcNMTAwNDA2
MDAwMDAwWhcNMTEwNDA2MjM1OTU5WjB0MQswCQYDVQQGEwJVUzESMBAGA1UECBMJ
VGVubmVzc2VlMRUwEwYDVQQHFAxDb2xsaWVydmlsbGUxDjAMBgNVBAoUBUZlZEV4
MQ8wDQYDVQQLFAZTUUEvUUUxGTAXBgNVBAMUEHdzYmV0YS5mZWRleC5jb20wggEi
MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCo7//lv8DHZ6YTohdtU58MBImH
4MaN5Vj5qYOklOcUihaj+ecHfGHnSEzPchRrbF/l+QlsDqWgFUwjyYTj3FzRegBC
ucVt4JYGDtGPe8ln3mved70NIZ2bS5evfXfVry+yUR0W16jdfo5UM7s6zSPLRoN6
T2r9c3Ww0oTragQ22dj+pe1mPdsFOmGJIz1Stf/YipKpoYV7lx0EwCbmDoIcJlOk
9Br/C63s/ndD/LzXtCRoL4VUt3rgoG+HzyNPzu0lIpLQpJTsHltuNfgTTciOdkvS
RVKMoXhUNms1FIFoddPsVH4A5vyEoLxqBzUAxM4n82kPNJ+t49Ar5r83MAurAgMB
AAGjggHRMIIBzTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIFoDBFBgNVHR8EPjA8MDqg
OKA2hjRodHRwOi8vU1ZSU2VjdXJlLUcyLWNybC52ZXJpc2lnbi5jb20vU1ZSU2Vj
dXJlRzIuY3JsMEQGA1UdIAQ9MDswOQYLYIZIAYb4RQEHFwMwKjAoBggrBgEFBQcC
ARYcaHR0cHM6Ly93d3cudmVyaXNpZ24uY29tL3JwYTAdBgNVHSUEFjAUBggrBgEF
BQcDAQYIKwYBBQUHAwIwHwYDVR0jBBgwFoAUpe8LEc7AQQOjSmWQSLIc4FctfUcw
dgYIKwYBBQUHAQEEajBoMCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC52ZXJpc2ln
bi5jb20wQAYIKwYBBQUHMAKGNGh0dHA6Ly9TVlJTZWN1cmUtRzItYWlhLnZlcmlz
aWduLmNvbS9TVlJTZWN1cmVHMi5jZXIwbgYIKwYBBQUHAQwEYjBgoV6gXDBaMFgw
VhYJaW1hZ2UvZ2lmMCEwHzAHBgUrDgMCGgQUS2u5KJYGDLvQUjibKaxLB4shBRgw
JhYkaHR0cDovL2xvZ28udmVyaXNpZ24uY29tL3ZzbG9nbzEuZ2lmMA0GCSqGSIb3
DQEBBQUAA4IBAQBaUibwacA/bqu2r2wu+oOYQz4Sxmwjz2O8sEL3uni0v/TiCQcD
XSCzzbwLTrHkeiC6X5TshFc1meTfHmfMXPwRdQClLgcxTUfZh7fQM6m/T8FV0o60
qQP+Zsw4ysyK2I7Zom+aIVfZhtZSJTsCbMLmV26RWHrRVy6iZnqq3+kzJYmg6o5O
EheNSJj6TTtNaSzmHUo6TQKEBv0yAUAVVRzN1hpOC9aKgOVte9htB/YTMLPcZWJT
UzAtNpv9XbpzllW2AyiAxSW8EIRh7SkFXoRDIyziWu/Tk3MPbDqeFJT9i7xVgvWF
jFuULtbOuoc9q7Og7nCn4avdeOwIpsIk/Q8d
-----END CERTIFICATE-----
Serial Number: 3D:3D:1D:8C:69:EB:E1:97:46:33:55:75:D6:D8:C7:42
Common Name: wsbeta.fedex.com
Country: US
State/Province: Tennessee
Locality: Collierville
Org Unit: FedEx
Org: SQA/QE
Issuer CN: VeriSign Class 3 Secure Server CA - G2
Issuer Country: US
Issuer Org: VeriSign, Inc.
Issuer Org Unit: Terms of use at https://www.verisign.com/rpa (c)09, OU=VeriSign Trust Network
Version: 03
not before: 20100405200000
not after: 20110406195959
pub key alg: 1.2.840.113549.1.1.5

Protocol Used: TLS Version 1
http_persist_post(): entered
http_long_ParseURL(): entered
do_post(): entered
POST /web-services/rate HTTP/1.1
Host: wsbeta.fedex.com:443
User-Agent: http-api/1.23
Content-Type: text/xml
Expect: 100-continue
Content-Length: 2601


recvresp(): entered
HTTP/1.1 100 Continue


SetError() #13: HTTP/1.1 100 Continue
senddoc(): entered
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"; xmlns:v8="http://fedex.com/ws/rate/v8";> soapenv:Header/> <v8:RateRequest> <v8:WebAuthenticationDetail> <v8:UserCredential> <v8:Key>ILBu5AvIwuooPg5m</v8:Key> <v8:Password>on4pt3uiSPCk2RlP5h8uTXXTq</v8:Password> </v8:UserCredential> </v8:WebAuthenticationDetail> <v8:ClientDetail> <v8:AccountNumber>510087429</v8:AccountNumber> <v8:MeterNumber>118525213</v8:MeterNumber> <v8:ClientProductId>TEST</v8:ClientProductId> <v8:ClientProductVersion>9999</v8:ClientProductVersion>  </v8:ClientDetail>  <v8:TransactionDetail>  <v8:CustomerTransactionId>Test v8 Rate Request</  v8:CustomerTransactionId>  </v8:TransactionDetail>  <v8:Version>  <v8:ServiceId>crs</v8:ServiceId>  <v8:Major>8</v8:Major>  <v8:Intermediate>0</v8:Intermediate>  <v8:Minor>0</v8:Minor>  </v8:Version>  <v8:ReturnTransitAndCommit>true</v8:ReturnTransitAndCommit>  <v8:RequestedShipment>  <v8:ShipTimestamp>2009-08-19T16:15:00-05:00</v8:ShipTimestamp>  <v8:DropoffType>REGULAR_PICKUP</v8:DropoffType>  <v8:CountryCode>US</v8:CountryCode>  </v8:Address>  </v8:Shipper>  <v8:Recipient>  <v8:Address>  <v8:StreetLines>123 Oak Street</v8:StreetLines>  <v8:City>Collierville</v8:City>  <v8:StateOrProvinceCode>TN</v8:StateOrProvinceCode>  <v8:PostalCode>38017</v8:PostalCode>  <v8:CountryCode>US</v8:CountryCode>  </v8:Address>  </v8:Recipient>  <v8:RateRequestTypes>ACCOUNT</v8:RateRequestTypes>  <v8:PackageCount>2</v8:PackageCount>  <v8:PackageDetail>INDIVIDUAL_PACKAGES</v8:PackageDetail>  <v8:RequestedPackages>  <v8:SequenceNumber>1</v8:SequenceNumber>  <v8:InsuredValue>  <v8:Currency>USD</v8:Currency>  <v8:Amount>50.00</v8:Amount>  </v8:InsuredValue>  <v8:Weight>  <v8:Units>LB</v8:Units>  <v8:Value>20.0</v8:Value>  </v8:Weight>  <v8:Dimensions>  <v8:Length>10</v8:Length>  <v8:Width>10</v8:Width>  <v8:Height>10</v8:Height>  <v8:Units>IN</v8:Units>  </v8:Dimensions>  <v8:CustomerReferences>  <v8:CustomerReferenceType>CUSTOMER_REFERENCE</  v8:CustomerReferenceType>  <v8:Value>TEST v8 REQUEST</v8:Value>  </v8:CustomerReferences>  </v8:RequestedPackages>  <v8:RequestedPackages>  <v8:SequenceNumber>2</v8:SequenceNumber>  <v8:InsuredValue>  <v8:Currency>USD</v8:Currency>  <v8:Amount>50.00</v8:Amount>  </v8:InsuredValue>  <v8:Weight>  <v8:Units>LB</v8:Units>  <v8:Value>10.0</v8:Value>  </v8:Weight>  <v8:Dimensions>  <v8:Length>5</v8:Length>  <v8:Width>5</v8:Width>  <v8:Height>5</v8:Height>  <v8:Units>IN</v8:Units>  </v8:Dimensions>  </v8:RequestedPackages>  </v8:RequestedShipment>  </v8:RateRequest>  <SOAP/soapenv:Body>  <SOAP/soapenv:BodyEnvelope>
recvresp(): entered
HTTP/1.1 500 Internal Server Error
Date: Wed, 08 Dec 2010 02:14:31 GMT
Server: Apache/2.2
Content-Length: 526
x-wily-servlet: Clear appServerIp=199.81.87.243&agentName=ESB-3&servletName=HttpTransportServlet&servletResponseTime=16&agentHost=qjaxtest3&agentProcess=WebLogic
X-Powered-By: Servlet/2.5 JSP/2.1
x-wily-info: Clear guid=C3C22DC2C75157F30DA46BC4A25F2D06
Connection: close
Content-Type: text/xml; charset=utf-8


SetError() #13: HTTP/1.1 500 Internal Server Error
recvdoc parms: identity 526
header_load_cookies() entered
recvdoc(): entered
SetError() #0:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";><soapenv:Body><soapenv:Fault><faultcode>soapenv:Client</faultcode><faultstring>Failure while unmarshalling message: Failed to parse XML text</faultstring><detail><con:fault xmlns:con="http://www.bea.com/wli/sb/context";><con:errorCode>9999</con:errorCode><con:reason>Failure while unmarshalling message: Failed to parse XML text</con:reason></con:fault></detail></soapenv:Fault></soapenv:Body></soapenv:Envelope>
SetError() #13: HTTP/1.1 500 Internal Server Error
http_close(): entered
-----------------------------------------------------------------------
This is the FTPAPI mailing list.  To unsubscribe, please go to:
http://www.scottklement.com/mailman/listinfo/ftpapi
-----------------------------------------------------------------------