diff --git a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis.json index 75163c003..719832cfd 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis.json @@ -38,7 +38,7 @@ "TCPConnectUnexplainedFailureDuringWebFetch": [], "TCPConnectUnexplainedFailureDuringConnectivityCheck": [], "TLSHandshakeExpectedFailure": [ - 40002 + 40001 ], "TLSHandshakeUnexpectedFailure": [], "TLSHandshakeUnexpectedFailureDuringWebFetch": [], @@ -49,7 +49,7 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPRoundTripUnexplainedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, - "HTTPFinalResponseSuccessTLSWithControl": 40001, + "HTTPFinalResponseSuccessTLSWithControl": 40002, "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, "HTTPFinalResponseDiffBodyProportionFactor": 1, @@ -64,7 +64,7 @@ "TagDepth": 0, "Type": 3, "Failure": "", - "TransactionID": 40001, + "TransactionID": 40002, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "www.example.com", @@ -78,7 +78,7 @@ "IPAddress": "93.184.216.34", "IPAddressASN": 15133, "IPAddressBogon": false, - "EndpointTransactionID": 40001, + "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", "EndpointAddress": "93.184.216.34:443", @@ -121,7 +121,7 @@ "TagDepth": 0, "Type": 2, "Failure": "ssl_unknown_authority", - "TransactionID": 40002, + "TransactionID": 40001, "TagFetchBody": true, "DNSTransactionID": 1, "DNSDomain": "www.example.com", @@ -135,7 +135,7 @@ "IPAddress": "104.154.89.105", "IPAddressASN": 396982, "IPAddressBogon": false, - "EndpointTransactionID": 40002, + "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", "EndpointAddress": "104.154.89.105:443", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis_classic.json index b343a2041..9ceb5740a 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/analysis_classic.json @@ -30,7 +30,7 @@ "TCPConnectUnexplainedFailureDuringWebFetch": [], "TCPConnectUnexplainedFailureDuringConnectivityCheck": [], "TLSHandshakeExpectedFailure": [ - 40002 + 40001 ], "TLSHandshakeUnexpectedFailure": [], "TLSHandshakeUnexpectedFailureDuringWebFetch": [], @@ -53,7 +53,7 @@ "TagDepth": 0, "Type": 2, "Failure": "ssl_unknown_authority", - "TransactionID": 40002, + "TransactionID": 40001, "TagFetchBody": true, "DNSTransactionID": 1, "DNSDomain": "www.example.com", @@ -67,7 +67,7 @@ "IPAddress": "104.154.89.105", "IPAddressASN": 396982, "IPAddressBogon": false, - "EndpointTransactionID": 40002, + "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", "EndpointAddress": "104.154.89.105:443", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/measurement.json b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/measurement.json index 75135b0ab..170affc10 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/measurement.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/measurement.json @@ -219,7 +219,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 40001 + "transaction_id": 40002 } ], "tcp_connect": [ @@ -235,7 +235,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 40002 + "transaction_id": 40001 }, { "ip": "93.184.216.34", @@ -249,7 +249,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 40001 + "transaction_id": 40002 } ], "tls_handshakes": [ @@ -268,7 +268,7 @@ "fetch_body=true" ], "tls_version": "", - "transaction_id": 40002 + "transaction_id": 40001 }, { "network": "tcp", @@ -285,7 +285,7 @@ "fetch_body=true" ], "tls_version": "TLSv1.3", - "transaction_id": 40001 + "transaction_id": 40002 } ], "x_control_request": { @@ -302,10 +302,10 @@ ] }, "tcp_connect": [ - "93.184.216.34:443", - "93.184.216.34:80", "104.154.89.105:443", - "104.154.89.105:80" + "104.154.89.105:80", + "93.184.216.34:443", + "93.184.216.34:80" ], "x_quic_enabled": false }, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/observations.json b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/observations.json index e247d5ae6..398dc5e30 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/observations.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/observations.json @@ -262,50 +262,45 @@ "KnownTCPEndpoints": { "40001": { "TagDepth": 0, - "Type": 3, - "Failure": "", + "Type": 2, + "Failure": "ssl_unknown_authority", "TransactionID": 40001, "TagFetchBody": true, - "DNSTransactionID": 20001, + "DNSTransactionID": 1, "DNSDomain": "www.example.com", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "93.184.216.34" + "104.154.89.105" ], "IPAddressOrigin": "dns", - "IPAddress": "93.184.216.34", - "IPAddressASN": 15133, + "IPAddress": "104.154.89.105", + "IPAddressASN": 396982, "IPAddressBogon": false, "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "93.184.216.34:443", + "EndpointAddress": "104.154.89.105:443", "TCPConnectFailure": "", - "TLSHandshakeFailure": "", + "TLSHandshakeFailure": "ssl_unknown_authority", "TLSServerName": "www.example.com", - "HTTPRequestURL": "https://www.example.com/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 200, - "HTTPResponseBodyLength": 1533, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Length": true, - "Content-Type": true, - "Date": true - }, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, "HTTPResponseLocation": null, - "HTTPResponseTitle": "Default Web Page", - "HTTPResponseIsFinal": true, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "www.example.com", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ "93.184.216.34" ], "ControlTCPConnectFailure": "", - "ControlTLSHandshakeFailure": "", + "ControlTLSHandshakeFailure": "ssl_unknown_authority", "ControlHTTPFailure": "", "ControlHTTPResponseStatusCode": 200, "ControlHTTPResponseBodyLength": 1533, @@ -319,45 +314,50 @@ }, "40002": { "TagDepth": 0, - "Type": 2, - "Failure": "ssl_unknown_authority", + "Type": 3, + "Failure": "", "TransactionID": 40002, "TagFetchBody": true, - "DNSTransactionID": 1, + "DNSTransactionID": 20001, "DNSDomain": "www.example.com", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "104.154.89.105" + "93.184.216.34" ], "IPAddressOrigin": "dns", - "IPAddress": "104.154.89.105", - "IPAddressASN": 396982, + "IPAddress": "93.184.216.34", + "IPAddressASN": 15133, "IPAddressBogon": false, "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "104.154.89.105:443", + "EndpointAddress": "93.184.216.34:443", "TCPConnectFailure": "", - "TLSHandshakeFailure": "ssl_unknown_authority", + "TLSHandshakeFailure": "", "TLSServerName": "www.example.com", - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, + "HTTPRequestURL": "https://www.example.com/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 200, + "HTTPResponseBodyLength": 1533, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Length": true, + "Content-Type": true, + "Date": true + }, "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPResponseTitle": "Default Web Page", + "HTTPResponseIsFinal": true, "ControlDNSDomain": "www.example.com", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ "93.184.216.34" ], "ControlTCPConnectFailure": "", - "ControlTLSHandshakeFailure": "ssl_unknown_authority", + "ControlTLSHandshakeFailure": "", "ControlHTTPFailure": "", "ControlHTTPResponseStatusCode": 200, "ControlHTTPResponseBodyLength": 1533, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/observations_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/observations_classic.json index d77a840bb..550c0a9ed 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/observations_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/badSSLWithUnknownAuthorityWithInconsistentDNS/observations_classic.json @@ -55,11 +55,11 @@ } ], "KnownTCPEndpoints": { - "40002": { + "40001": { "TagDepth": 0, "Type": 2, "Failure": "ssl_unknown_authority", - "TransactionID": 40002, + "TransactionID": 40001, "TagFetchBody": true, "DNSTransactionID": 1, "DNSDomain": "www.example.com", @@ -73,7 +73,7 @@ "IPAddress": "104.154.89.105", "IPAddressASN": 396982, "IPAddressBogon": false, - "EndpointTransactionID": 40002, + "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", "EndpointAddress": "104.154.89.105:443", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis.json index 5b3b9eba9..3d6aaaae1 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis.json @@ -49,7 +49,7 @@ "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, "HTTPFinalResponseSuccessTCPWithoutControl": null, - "HTTPFinalResponseSuccessTCPWithControl": 30002, + "HTTPFinalResponseSuccessTCPWithControl": 30001, "HTTPFinalResponseDiffBodyProportionFactor": 1, "HTTPFinalResponseDiffStatusCodeMatch": true, "HTTPFinalResponseDiffTitleDifferentLongWords": {}, @@ -61,7 +61,7 @@ "TagDepth": 0, "Type": 3, "Failure": "", - "TransactionID": 30002, + "TransactionID": 30001, "TagFetchBody": true, "DNSTransactionID": 1, "DNSDomain": "www.example.com", @@ -75,7 +75,7 @@ "IPAddress": "130.192.182.17", "IPAddressASN": 137, "IPAddressBogon": false, - "EndpointTransactionID": 30002, + "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "130.192.182.17:80", @@ -119,22 +119,22 @@ "Failure": "", "TransactionID": 40002, "TagFetchBody": false, - "DNSTransactionID": 1, + "DNSTransactionID": 20001, "DNSDomain": "www.example.com", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "130.192.182.17" + "93.184.216.34" ], "IPAddressOrigin": "dns", - "IPAddress": "130.192.182.17", - "IPAddressASN": 137, + "IPAddress": "93.184.216.34", + "IPAddressASN": 15133, "IPAddressBogon": false, "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "130.192.182.17:443", + "EndpointAddress": "93.184.216.34:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "www.example.com", @@ -171,22 +171,22 @@ "Failure": "", "TransactionID": 40001, "TagFetchBody": false, - "DNSTransactionID": 20001, + "DNSTransactionID": 1, "DNSDomain": "www.example.com", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "93.184.216.34" + "130.192.182.17" ], "IPAddressOrigin": "dns", - "IPAddress": "93.184.216.34", - "IPAddressASN": 15133, + "IPAddress": "130.192.182.17", + "IPAddressASN": 137, "IPAddressBogon": false, "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "93.184.216.34:443", + "EndpointAddress": "130.192.182.17:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "www.example.com", @@ -221,7 +221,7 @@ "TagDepth": 0, "Type": 1, "Failure": "", - "TransactionID": 30001, + "TransactionID": 30002, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "www.example.com", @@ -235,7 +235,7 @@ "IPAddress": "93.184.216.34", "IPAddressASN": 15133, "IPAddressBogon": false, - "EndpointTransactionID": 30001, + "EndpointTransactionID": 30002, "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "93.184.216.34:80", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis_classic.json index 108c56f4f..688d95364 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/analysis_classic.json @@ -41,7 +41,7 @@ "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, "HTTPFinalResponseSuccessTCPWithoutControl": null, - "HTTPFinalResponseSuccessTCPWithControl": 30002, + "HTTPFinalResponseSuccessTCPWithControl": 30001, "HTTPFinalResponseDiffBodyProportionFactor": 1, "HTTPFinalResponseDiffStatusCodeMatch": true, "HTTPFinalResponseDiffTitleDifferentLongWords": {}, @@ -53,7 +53,7 @@ "TagDepth": 0, "Type": 3, "Failure": "", - "TransactionID": 30002, + "TransactionID": 30001, "TagFetchBody": true, "DNSTransactionID": 1, "DNSDomain": "www.example.com", @@ -67,7 +67,7 @@ "IPAddress": "130.192.182.17", "IPAddressASN": 137, "IPAddressBogon": false, - "EndpointTransactionID": 30002, + "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "130.192.182.17:80", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/measurement.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/measurement.json index 6d55eae53..6a50026d2 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/measurement.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/measurement.json @@ -213,7 +213,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30002 + "transaction_id": 30001 } ], "tcp_connect": [ @@ -229,7 +229,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30002 + "transaction_id": 30001 }, { "ip": "130.192.182.17", @@ -243,7 +243,7 @@ "depth=0", "fetch_body=false" ], - "transaction_id": 40002 + "transaction_id": 40001 }, { "ip": "93.184.216.34", @@ -257,7 +257,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30001 + "transaction_id": 30002 }, { "ip": "93.184.216.34", @@ -271,7 +271,7 @@ "depth=0", "fetch_body=false" ], - "transaction_id": 40001 + "transaction_id": 40002 } ], "tls_handshakes": [ @@ -290,7 +290,7 @@ "fetch_body=false" ], "tls_version": "TLSv1.3", - "transaction_id": 40002 + "transaction_id": 40001 }, { "network": "tcp", @@ -307,7 +307,7 @@ "fetch_body=false" ], "tls_version": "TLSv1.3", - "transaction_id": 40001 + "transaction_id": 40002 } ], "x_control_request": { @@ -324,10 +324,10 @@ ] }, "tcp_connect": [ - "93.184.216.34:443", - "93.184.216.34:80", "130.192.182.17:443", - "130.192.182.17:80" + "130.192.182.17:80", + "93.184.216.34:443", + "93.184.216.34:80" ], "x_quic_enabled": false }, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/observations.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/observations.json index 5b1900898..7b24cafc1 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/observations.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/observations.json @@ -262,38 +262,42 @@ "KnownTCPEndpoints": { "30001": { "TagDepth": 0, - "Type": 1, + "Type": 3, "Failure": "", "TransactionID": 30001, "TagFetchBody": true, - "DNSTransactionID": 20001, + "DNSTransactionID": 1, "DNSDomain": "www.example.com", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "93.184.216.34" + "130.192.182.17" ], "IPAddressOrigin": "dns", - "IPAddress": "93.184.216.34", - "IPAddressASN": 15133, + "IPAddress": "130.192.182.17", + "IPAddressASN": 137, "IPAddressBogon": false, "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "93.184.216.34:80", + "EndpointAddress": "130.192.182.17:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, + "HTTPRequestURL": "http://www.example.com/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 200, + "HTTPResponseBodyLength": 1533, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Content-Length": true, + "Content-Type": true, + "Date": true + }, "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPResponseTitle": "Default Web Page", + "HTTPResponseIsFinal": true, "ControlDNSDomain": "www.example.com", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -314,42 +318,38 @@ }, "30002": { "TagDepth": 0, - "Type": 3, + "Type": 1, "Failure": "", "TransactionID": 30002, "TagFetchBody": true, - "DNSTransactionID": 1, + "DNSTransactionID": 20001, "DNSDomain": "www.example.com", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "130.192.182.17" + "93.184.216.34" ], "IPAddressOrigin": "dns", - "IPAddress": "130.192.182.17", - "IPAddressASN": 137, + "IPAddress": "93.184.216.34", + "IPAddressASN": 15133, "IPAddressBogon": false, "EndpointTransactionID": 30002, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "130.192.182.17:80", + "EndpointAddress": "93.184.216.34:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": "http://www.example.com/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 200, - "HTTPResponseBodyLength": 1533, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Content-Length": true, - "Content-Type": true, - "Date": true - }, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, "HTTPResponseLocation": null, - "HTTPResponseTitle": "Default Web Page", - "HTTPResponseIsFinal": true, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "www.example.com", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -374,22 +374,22 @@ "Failure": "", "TransactionID": 40001, "TagFetchBody": false, - "DNSTransactionID": 20001, + "DNSTransactionID": 1, "DNSDomain": "www.example.com", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "93.184.216.34" + "130.192.182.17" ], "IPAddressOrigin": "dns", - "IPAddress": "93.184.216.34", - "IPAddressASN": 15133, + "IPAddress": "130.192.182.17", + "IPAddressASN": 137, "IPAddressBogon": false, "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "93.184.216.34:443", + "EndpointAddress": "130.192.182.17:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "www.example.com", @@ -426,22 +426,22 @@ "Failure": "", "TransactionID": 40002, "TagFetchBody": false, - "DNSTransactionID": 1, + "DNSTransactionID": 20001, "DNSDomain": "www.example.com", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "130.192.182.17" + "93.184.216.34" ], "IPAddressOrigin": "dns", - "IPAddress": "130.192.182.17", - "IPAddressASN": 137, + "IPAddress": "93.184.216.34", + "IPAddressASN": 15133, "IPAddressBogon": false, "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "130.192.182.17:443", + "EndpointAddress": "93.184.216.34:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "www.example.com", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/observations_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/observations_classic.json index 736bed149..a8fd9014a 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/observations_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/dnsHijackingToProxyWithHTTPURL/observations_classic.json @@ -55,11 +55,11 @@ } ], "KnownTCPEndpoints": { - "30002": { + "30001": { "TagDepth": 0, "Type": 3, "Failure": "", - "TransactionID": 30002, + "TransactionID": 30001, "TagFetchBody": true, "DNSTransactionID": 1, "DNSDomain": "www.example.com", @@ -73,7 +73,7 @@ "IPAddress": "130.192.182.17", "IPAddressASN": 137, "IPAddressBogon": false, - "EndpointTransactionID": 30002, + "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "130.192.182.17:80", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/analysis.json index 22311f5a7..85d24e1b2 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/analysis.json @@ -48,7 +48,7 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPRoundTripUnexplainedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, - "HTTPFinalResponseSuccessTLSWithControl": 40012, + "HTTPFinalResponseSuccessTLSWithControl": 40010, "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, "HTTPFinalResponseDiffBodyProportionFactor": 1, @@ -63,7 +63,7 @@ "TagDepth": 2, "Type": 3, "Failure": "", - "TransactionID": 40012, + "TransactionID": 40010, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -77,13 +77,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.80", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40012, + "EndpointTransactionID": 40010, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.80:443", + "EndpointAddress": "5.255.255.88:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", @@ -126,7 +126,7 @@ "TagDepth": 2, "Type": 2, "Failure": "", - "TransactionID": 40011, + "TransactionID": 40012, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -140,13 +140,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.77", + "IPAddress": "77.88.55.80", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40011, + "EndpointTransactionID": 40012, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.77:443", + "EndpointAddress": "77.88.55.80:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", @@ -184,7 +184,7 @@ "TagDepth": 2, "Type": 2, "Failure": "", - "TransactionID": 40010, + "TransactionID": 40011, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -198,13 +198,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40010, + "EndpointTransactionID": 40011, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.88:443", + "EndpointAddress": "77.88.55.77:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", @@ -772,7 +772,7 @@ "TagDepth": 1, "Type": 3, "Failure": "", - "TransactionID": 40006, + "TransactionID": 40008, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -786,13 +786,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.80", + "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40006, + "EndpointTransactionID": 40008, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.80:443", + "EndpointAddress": "77.88.55.77:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", @@ -835,7 +835,7 @@ "TagDepth": 1, "Type": 2, "Failure": "", - "TransactionID": 40008, + "TransactionID": 40007, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -849,13 +849,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.77", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40008, + "EndpointTransactionID": 40007, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.77:443", + "EndpointAddress": "5.255.255.88:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", @@ -893,7 +893,7 @@ "TagDepth": 1, "Type": 2, "Failure": "", - "TransactionID": 40007, + "TransactionID": 40006, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -907,13 +907,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "5.255.255.80", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40007, + "EndpointTransactionID": 40006, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.88:443", + "EndpointAddress": "5.255.255.80:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", @@ -1481,7 +1481,7 @@ "TagDepth": 0, "Type": 3, "Failure": "", - "TransactionID": 30003, + "TransactionID": 30001, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -1495,13 +1495,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.77", + "IPAddress": "5.255.255.80", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 30003, + "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "77.88.55.77:80", + "EndpointAddress": "5.255.255.80:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, @@ -1834,7 +1834,7 @@ "TagDepth": 0, "Type": 1, "Failure": "", - "TransactionID": 30002, + "TransactionID": 30003, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -1848,13 +1848,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 30002, + "EndpointTransactionID": 30003, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "5.255.255.88:80", + "EndpointAddress": "77.88.55.77:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, @@ -1892,7 +1892,7 @@ "TagDepth": 0, "Type": 1, "Failure": "", - "TransactionID": 30001, + "TransactionID": 30002, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -1906,13 +1906,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.80", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 30001, + "EndpointTransactionID": 30002, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "5.255.255.80:80", + "EndpointAddress": "5.255.255.88:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/analysis_classic.json index 712c6d394..436f3c6f5 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/analysis_classic.json @@ -43,7 +43,7 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPRoundTripUnexplainedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, - "HTTPFinalResponseSuccessTLSWithControl": 40012, + "HTTPFinalResponseSuccessTLSWithControl": 40010, "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, "HTTPFinalResponseDiffBodyProportionFactor": 1, @@ -58,7 +58,7 @@ "TagDepth": 2, "Type": 3, "Failure": "", - "TransactionID": 40012, + "TransactionID": 40010, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -72,13 +72,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.80", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40012, + "EndpointTransactionID": 40010, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.80:443", + "EndpointAddress": "5.255.255.88:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", @@ -121,7 +121,7 @@ "TagDepth": 2, "Type": 2, "Failure": "", - "TransactionID": 40011, + "TransactionID": 40012, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -135,13 +135,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.77", + "IPAddress": "77.88.55.80", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40011, + "EndpointTransactionID": 40012, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.77:443", + "EndpointAddress": "77.88.55.80:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", @@ -179,7 +179,7 @@ "TagDepth": 2, "Type": 2, "Failure": "", - "TransactionID": 40010, + "TransactionID": 40011, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -193,13 +193,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40010, + "EndpointTransactionID": 40011, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.88:443", + "EndpointAddress": "77.88.55.77:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", @@ -507,7 +507,7 @@ "TagDepth": 1, "Type": 3, "Failure": "", - "TransactionID": 40006, + "TransactionID": 40008, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -521,13 +521,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.80", + "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40006, + "EndpointTransactionID": 40008, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.80:443", + "EndpointAddress": "77.88.55.77:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", @@ -570,7 +570,7 @@ "TagDepth": 1, "Type": 2, "Failure": "", - "TransactionID": 40008, + "TransactionID": 40007, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -584,13 +584,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.77", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40008, + "EndpointTransactionID": 40007, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.77:443", + "EndpointAddress": "5.255.255.88:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", @@ -628,7 +628,7 @@ "TagDepth": 1, "Type": 2, "Failure": "", - "TransactionID": 40007, + "TransactionID": 40006, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -642,13 +642,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "5.255.255.80", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40007, + "EndpointTransactionID": 40006, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.88:443", + "EndpointAddress": "5.255.255.80:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", @@ -956,7 +956,7 @@ "TagDepth": 0, "Type": 3, "Failure": "", - "TransactionID": 30003, + "TransactionID": 30001, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -970,13 +970,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.77", + "IPAddress": "5.255.255.80", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 30003, + "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "77.88.55.77:80", + "EndpointAddress": "5.255.255.80:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, @@ -1077,7 +1077,7 @@ "TagDepth": 0, "Type": 1, "Failure": "", - "TransactionID": 30002, + "TransactionID": 30003, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -1091,13 +1091,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 30002, + "EndpointTransactionID": 30003, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "5.255.255.88:80", + "EndpointAddress": "77.88.55.77:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, @@ -1135,7 +1135,7 @@ "TagDepth": 0, "Type": 1, "Failure": "", - "TransactionID": 30001, + "TransactionID": 30002, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -1149,13 +1149,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.80", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 30001, + "EndpointTransactionID": 30002, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "5.255.255.80:80", + "EndpointAddress": "5.255.255.88:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/measurement.json b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/measurement.json index f7e58a360..1f61c5a5f 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/measurement.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/measurement.json @@ -409,7 +409,7 @@ "requests": [ { "network": "tcp", - "address": "77.88.55.80:443", + "address": "5.255.255.88:443", "alpn": "http/1.1", "failure": null, "request": { @@ -488,11 +488,11 @@ "depth=2", "fetch_body=true" ], - "transaction_id": 40012 + "transaction_id": 40010 }, { "network": "tcp", - "address": "5.255.255.80:443", + "address": "77.88.55.77:443", "alpn": "http/1.1", "failure": null, "request": { @@ -570,11 +570,11 @@ "depth=1", "fetch_body=true" ], - "transaction_id": 40006 + "transaction_id": 40008 }, { "network": "tcp", - "address": "77.88.55.77:80", + "address": "5.255.255.80:80", "failure": null, "request": { "body": "", @@ -651,7 +651,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30003 + "transaction_id": 30001 } ], "tcp_connect": [ diff --git a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/observations.json b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/observations.json index a32ad616f..545af93e5 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/observations.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/observations.json @@ -1752,7 +1752,7 @@ "KnownTCPEndpoints": { "30001": { "TagDepth": 0, - "Type": 1, + "Type": 3, "Failure": "", "TransactionID": 30001, "TagFetchBody": true, @@ -1778,15 +1778,20 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, - "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPRequestURL": "http://xn--d1acpjx3f.xn--p1ai/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 308, + "HTTPResponseBodyLength": 0, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Length": true, + "Date": true, + "Location": true + }, + "HTTPResponseLocation": "https://yandex.com/", + "HTTPResponseTitle": "", + "HTTPResponseIsFinal": false, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -1868,7 +1873,7 @@ }, "30003": { "TagDepth": 0, - "Type": 3, + "Type": 1, "Failure": "", "TransactionID": 30003, "TagFetchBody": true, @@ -1894,20 +1899,15 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": "http://xn--d1acpjx3f.xn--p1ai/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 308, - "HTTPResponseBodyLength": 0, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Length": true, - "Date": true, - "Location": true - }, - "HTTPResponseLocation": "https://yandex.com/", - "HTTPResponseTitle": "", - "HTTPResponseIsFinal": false, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, + "HTTPResponseLocation": null, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -2279,7 +2279,7 @@ }, "40006": { "TagDepth": 1, - "Type": 3, + "Type": 2, "Failure": "", "TransactionID": 40006, "TagFetchBody": true, @@ -2305,20 +2305,15 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", - "HTTPRequestURL": "https://yandex.com/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 308, - "HTTPResponseBodyLength": 0, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Length": true, - "Date": true, - "Location": true - }, - "HTTPResponseLocation": "https://ya.ru/", - "HTTPResponseTitle": "", - "HTTPResponseIsFinal": false, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, + "HTTPResponseLocation": null, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -2400,7 +2395,7 @@ }, "40008": { "TagDepth": 1, - "Type": 2, + "Type": 3, "Failure": "", "TransactionID": 40008, "TagFetchBody": true, @@ -2426,15 +2421,20 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, - "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPRequestURL": "https://yandex.com/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 308, + "HTTPResponseBodyLength": 0, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Length": true, + "Date": true, + "Location": true + }, + "HTTPResponseLocation": "https://ya.ru/", + "HTTPResponseTitle": "", + "HTTPResponseIsFinal": false, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -2516,7 +2516,7 @@ }, "40010": { "TagDepth": 2, - "Type": 2, + "Type": 3, "Failure": "", "TransactionID": 40010, "TagFetchBody": true, @@ -2542,15 +2542,20 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, + "HTTPRequestURL": "https://ya.ru/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 200, + "HTTPResponseBodyLength": 1533, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Length": true, + "Content-Type": true, + "Date": true + }, "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPResponseTitle": "Default Web Page", + "HTTPResponseIsFinal": true, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -2632,7 +2637,7 @@ }, "40012": { "TagDepth": 2, - "Type": 3, + "Type": 2, "Failure": "", "TransactionID": 40012, "TagFetchBody": true, @@ -2658,20 +2663,15 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", - "HTTPRequestURL": "https://ya.ru/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 200, - "HTTPResponseBodyLength": 1533, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Length": true, - "Content-Type": true, - "Date": true - }, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, "HTTPResponseLocation": null, - "HTTPResponseTitle": "Default Web Page", - "HTTPResponseIsFinal": true, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ diff --git a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/observations_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/observations_classic.json index efb315b26..995b46665 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/observations_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipLowercase/observations_classic.json @@ -661,7 +661,7 @@ "KnownTCPEndpoints": { "30001": { "TagDepth": 0, - "Type": 1, + "Type": 3, "Failure": "", "TransactionID": 30001, "TagFetchBody": true, @@ -687,15 +687,20 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, - "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPRequestURL": "http://xn--d1acpjx3f.xn--p1ai/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 308, + "HTTPResponseBodyLength": 0, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Length": true, + "Date": true, + "Location": true + }, + "HTTPResponseLocation": "https://yandex.com/", + "HTTPResponseTitle": "", + "HTTPResponseIsFinal": false, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -777,7 +782,7 @@ }, "30003": { "TagDepth": 0, - "Type": 3, + "Type": 1, "Failure": "", "TransactionID": 30003, "TagFetchBody": true, @@ -803,20 +808,15 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": "http://xn--d1acpjx3f.xn--p1ai/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 308, - "HTTPResponseBodyLength": 0, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Length": true, - "Date": true, - "Location": true - }, - "HTTPResponseLocation": "https://yandex.com/", - "HTTPResponseTitle": "", - "HTTPResponseIsFinal": false, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, + "HTTPResponseLocation": null, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -956,7 +956,7 @@ }, "40006": { "TagDepth": 1, - "Type": 3, + "Type": 2, "Failure": "", "TransactionID": 40006, "TagFetchBody": true, @@ -982,20 +982,15 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", - "HTTPRequestURL": "https://yandex.com/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 308, - "HTTPResponseBodyLength": 0, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Length": true, - "Date": true, - "Location": true - }, - "HTTPResponseLocation": "https://ya.ru/", - "HTTPResponseTitle": "", - "HTTPResponseIsFinal": false, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, + "HTTPResponseLocation": null, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -1077,7 +1072,7 @@ }, "40008": { "TagDepth": 1, - "Type": 2, + "Type": 3, "Failure": "", "TransactionID": 40008, "TagFetchBody": true, @@ -1103,15 +1098,20 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, - "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPRequestURL": "https://yandex.com/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 308, + "HTTPResponseBodyLength": 0, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Length": true, + "Date": true, + "Location": true + }, + "HTTPResponseLocation": "https://ya.ru/", + "HTTPResponseTitle": "", + "HTTPResponseIsFinal": false, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -1193,7 +1193,7 @@ }, "40010": { "TagDepth": 2, - "Type": 2, + "Type": 3, "Failure": "", "TransactionID": 40010, "TagFetchBody": true, @@ -1219,15 +1219,20 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, + "HTTPRequestURL": "https://ya.ru/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 200, + "HTTPResponseBodyLength": 1533, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Length": true, + "Content-Type": true, + "Date": true + }, "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPResponseTitle": "Default Web Page", + "HTTPResponseIsFinal": true, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -1309,7 +1314,7 @@ }, "40012": { "TagDepth": 2, - "Type": 3, + "Type": 2, "Failure": "", "TransactionID": 40012, "TagFetchBody": true, @@ -1335,20 +1340,15 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", - "HTTPRequestURL": "https://ya.ru/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 200, - "HTTPResponseBodyLength": 1533, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Length": true, - "Content-Type": true, - "Date": true - }, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, "HTTPResponseLocation": null, - "HTTPResponseTitle": "Default Web Page", - "HTTPResponseIsFinal": true, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ diff --git a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/analysis.json index 06e024a3c..05a75dfff 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/analysis.json @@ -48,7 +48,7 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPRoundTripUnexplainedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, - "HTTPFinalResponseSuccessTLSWithControl": 40012, + "HTTPFinalResponseSuccessTLSWithControl": 40010, "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, "HTTPFinalResponseDiffBodyProportionFactor": 1, @@ -63,7 +63,7 @@ "TagDepth": 2, "Type": 3, "Failure": "", - "TransactionID": 40012, + "TransactionID": 40010, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -77,13 +77,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.80", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40012, + "EndpointTransactionID": 40010, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.80:443", + "EndpointAddress": "5.255.255.88:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", @@ -126,7 +126,7 @@ "TagDepth": 2, "Type": 2, "Failure": "", - "TransactionID": 40011, + "TransactionID": 40012, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -140,13 +140,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.77", + "IPAddress": "77.88.55.80", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40011, + "EndpointTransactionID": 40012, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.77:443", + "EndpointAddress": "77.88.55.80:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", @@ -184,7 +184,7 @@ "TagDepth": 2, "Type": 2, "Failure": "", - "TransactionID": 40010, + "TransactionID": 40011, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -198,13 +198,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40010, + "EndpointTransactionID": 40011, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.88:443", + "EndpointAddress": "77.88.55.77:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", @@ -772,7 +772,7 @@ "TagDepth": 1, "Type": 3, "Failure": "", - "TransactionID": 40005, + "TransactionID": 40007, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -786,13 +786,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.80", + "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40005, + "EndpointTransactionID": 40007, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.80:443", + "EndpointAddress": "77.88.55.77:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", @@ -893,7 +893,7 @@ "TagDepth": 1, "Type": 2, "Failure": "", - "TransactionID": 40007, + "TransactionID": 40006, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -907,13 +907,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.77", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40007, + "EndpointTransactionID": 40006, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.77:443", + "EndpointAddress": "5.255.255.88:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", @@ -951,7 +951,7 @@ "TagDepth": 1, "Type": 2, "Failure": "", - "TransactionID": 40006, + "TransactionID": 40005, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -965,13 +965,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "5.255.255.80", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40006, + "EndpointTransactionID": 40005, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.88:443", + "EndpointAddress": "5.255.255.80:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", @@ -1481,7 +1481,7 @@ "TagDepth": 0, "Type": 3, "Failure": "", - "TransactionID": 30003, + "TransactionID": 30004, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -1495,13 +1495,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "77.88.55.80", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 30003, + "EndpointTransactionID": 30004, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "5.255.255.88:80", + "EndpointAddress": "77.88.55.80:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, @@ -1558,13 +1558,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.77", + "IPAddress": "77.88.55.80", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 40004, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.77:443", + "EndpointAddress": "77.88.55.80:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "xn--d1acpjx3f.xn--p1ai", @@ -1616,13 +1616,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 40003, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.88:443", + "EndpointAddress": "77.88.55.77:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "xn--d1acpjx3f.xn--p1ai", @@ -1674,13 +1674,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.80", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.80:443", + "EndpointAddress": "5.255.255.88:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "xn--d1acpjx3f.xn--p1ai", @@ -1732,13 +1732,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.80", + "IPAddress": "5.255.255.80", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.80:443", + "EndpointAddress": "5.255.255.80:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "xn--d1acpjx3f.xn--p1ai", @@ -1776,7 +1776,7 @@ "TagDepth": 0, "Type": 1, "Failure": "", - "TransactionID": 30004, + "TransactionID": 30003, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -1793,7 +1793,7 @@ "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 30004, + "EndpointTransactionID": 30003, "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "77.88.55.77:80", @@ -1848,13 +1848,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.80", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 30002, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "5.255.255.80:80", + "EndpointAddress": "5.255.255.88:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, @@ -1906,13 +1906,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.80", + "IPAddress": "5.255.255.80", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "77.88.55.80:80", + "EndpointAddress": "5.255.255.80:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/analysis_classic.json index 9818c213d..5709af384 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/analysis_classic.json @@ -43,7 +43,7 @@ "HTTPRoundTripUnexpectedFailure": [], "HTTPRoundTripUnexplainedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, - "HTTPFinalResponseSuccessTLSWithControl": 40012, + "HTTPFinalResponseSuccessTLSWithControl": 40010, "HTTPFinalResponseSuccessTCPWithoutControl": null, "HTTPFinalResponseSuccessTCPWithControl": null, "HTTPFinalResponseDiffBodyProportionFactor": 1, @@ -58,7 +58,7 @@ "TagDepth": 2, "Type": 3, "Failure": "", - "TransactionID": 40012, + "TransactionID": 40010, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -72,13 +72,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.80", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40012, + "EndpointTransactionID": 40010, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.80:443", + "EndpointAddress": "5.255.255.88:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", @@ -121,7 +121,7 @@ "TagDepth": 2, "Type": 2, "Failure": "", - "TransactionID": 40011, + "TransactionID": 40012, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -135,13 +135,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.77", + "IPAddress": "77.88.55.80", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40011, + "EndpointTransactionID": 40012, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.77:443", + "EndpointAddress": "77.88.55.80:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", @@ -179,7 +179,7 @@ "TagDepth": 2, "Type": 2, "Failure": "", - "TransactionID": 40010, + "TransactionID": 40011, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -193,13 +193,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40010, + "EndpointTransactionID": 40011, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.88:443", + "EndpointAddress": "77.88.55.77:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", @@ -507,7 +507,7 @@ "TagDepth": 1, "Type": 3, "Failure": "", - "TransactionID": 40005, + "TransactionID": 40007, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -521,13 +521,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.80", + "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40005, + "EndpointTransactionID": 40007, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.80:443", + "EndpointAddress": "77.88.55.77:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", @@ -628,7 +628,7 @@ "TagDepth": 1, "Type": 2, "Failure": "", - "TransactionID": 40007, + "TransactionID": 40006, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -642,13 +642,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.77", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40007, + "EndpointTransactionID": 40006, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.77:443", + "EndpointAddress": "5.255.255.88:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", @@ -686,7 +686,7 @@ "TagDepth": 1, "Type": 2, "Failure": "", - "TransactionID": 40006, + "TransactionID": 40005, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -700,13 +700,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "5.255.255.80", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 40006, + "EndpointTransactionID": 40005, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.88:443", + "EndpointAddress": "5.255.255.80:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", @@ -956,7 +956,7 @@ "TagDepth": 0, "Type": 3, "Failure": "", - "TransactionID": 30003, + "TransactionID": 30004, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -970,13 +970,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "77.88.55.80", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 30003, + "EndpointTransactionID": 30004, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "5.255.255.88:80", + "EndpointAddress": "77.88.55.80:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, @@ -1019,7 +1019,7 @@ "TagDepth": 0, "Type": 1, "Failure": "", - "TransactionID": 30004, + "TransactionID": 30003, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "xn--d1acpjx3f.xn--p1ai", @@ -1036,7 +1036,7 @@ "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, - "EndpointTransactionID": 30004, + "EndpointTransactionID": 30003, "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "77.88.55.77:80", @@ -1091,13 +1091,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.80", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 30002, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "5.255.255.80:80", + "EndpointAddress": "5.255.255.88:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, @@ -1149,13 +1149,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.80", + "IPAddress": "5.255.255.80", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "77.88.55.80:80", + "EndpointAddress": "5.255.255.80:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/measurement.json b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/measurement.json index 0719e98f6..532dd90c4 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/measurement.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/measurement.json @@ -409,7 +409,7 @@ "requests": [ { "network": "tcp", - "address": "77.88.55.80:443", + "address": "5.255.255.88:443", "alpn": "http/1.1", "failure": null, "request": { @@ -488,11 +488,11 @@ "depth=2", "fetch_body=true" ], - "transaction_id": 40012 + "transaction_id": 40010 }, { "network": "tcp", - "address": "5.255.255.80:443", + "address": "77.88.55.77:443", "alpn": "http/1.1", "failure": null, "request": { @@ -570,11 +570,11 @@ "depth=1", "fetch_body=true" ], - "transaction_id": 40005 + "transaction_id": 40007 }, { "network": "tcp", - "address": "5.255.255.88:80", + "address": "77.88.55.80:80", "failure": null, "request": { "body": "", @@ -651,7 +651,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30003 + "transaction_id": 30004 } ], "tcp_connect": [ @@ -667,7 +667,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30002 + "transaction_id": 30001 }, { "ip": "5.255.255.80", @@ -681,7 +681,7 @@ "depth=0", "fetch_body=false" ], - "transaction_id": 40002 + "transaction_id": 40001 }, { "ip": "5.255.255.80", @@ -723,7 +723,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30003 + "transaction_id": 30002 }, { "ip": "5.255.255.88", @@ -737,7 +737,7 @@ "depth=0", "fetch_body=false" ], - "transaction_id": 40003 + "transaction_id": 40002 }, { "ip": "5.255.255.88", @@ -779,7 +779,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30004 + "transaction_id": 30003 }, { "ip": "77.88.55.77", @@ -793,7 +793,7 @@ "depth=0", "fetch_body=false" ], - "transaction_id": 40004 + "transaction_id": 40003 }, { "ip": "77.88.55.77", @@ -835,7 +835,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30001 + "transaction_id": 30004 }, { "ip": "77.88.55.80", @@ -849,7 +849,7 @@ "depth=0", "fetch_body=false" ], - "transaction_id": 40001 + "transaction_id": 40004 }, { "ip": "77.88.55.80", @@ -896,7 +896,7 @@ "fetch_body=false" ], "tls_version": "TLSv1.3", - "transaction_id": 40002 + "transaction_id": 40001 }, { "network": "tcp", @@ -947,7 +947,7 @@ "fetch_body=false" ], "tls_version": "TLSv1.3", - "transaction_id": 40003 + "transaction_id": 40002 }, { "network": "tcp", @@ -998,7 +998,7 @@ "fetch_body=false" ], "tls_version": "TLSv1.3", - "transaction_id": 40004 + "transaction_id": 40003 }, { "network": "tcp", @@ -1049,7 +1049,7 @@ "fetch_body=false" ], "tls_version": "TLSv1.3", - "transaction_id": 40001 + "transaction_id": 40004 }, { "network": "tcp", @@ -1100,14 +1100,14 @@ ] }, "tcp_connect": [ - "77.88.55.80:443", - "77.88.55.80:80", "5.255.255.80:443", "5.255.255.80:80", "5.255.255.88:443", "5.255.255.88:80", "77.88.55.77:443", - "77.88.55.77:80" + "77.88.55.77:80", + "77.88.55.80:443", + "77.88.55.80:80" ], "x_quic_enabled": false }, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/observations.json b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/observations.json index acf340636..485b1b6ec 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/observations.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/observations.json @@ -1768,13 +1768,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.80", + "IPAddress": "5.255.255.80", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "77.88.55.80:80", + "EndpointAddress": "5.255.255.80:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, @@ -1826,13 +1826,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.80", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 30002, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "5.255.255.80:80", + "EndpointAddress": "5.255.255.88:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, @@ -1868,7 +1868,7 @@ }, "30003": { "TagDepth": 0, - "Type": 3, + "Type": 1, "Failure": "", "TransactionID": 30003, "TagFetchBody": true, @@ -1884,30 +1884,25 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 30003, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "5.255.255.88:80", + "EndpointAddress": "77.88.55.77:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": "http://xn--d1acpjx3f.xn--p1ai/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 308, - "HTTPResponseBodyLength": 0, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Length": true, - "Date": true, - "Location": true - }, - "HTTPResponseLocation": "https://yandex.com/", - "HTTPResponseTitle": "", - "HTTPResponseIsFinal": false, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, + "HTTPResponseLocation": null, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -1931,7 +1926,7 @@ }, "30004": { "TagDepth": 0, - "Type": 1, + "Type": 3, "Failure": "", "TransactionID": 30004, "TagFetchBody": true, @@ -1947,25 +1942,30 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.77", + "IPAddress": "77.88.55.80", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 30004, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "77.88.55.77:80", + "EndpointAddress": "77.88.55.80:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, - "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPRequestURL": "http://xn--d1acpjx3f.xn--p1ai/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 308, + "HTTPResponseBodyLength": 0, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Length": true, + "Date": true, + "Location": true + }, + "HTTPResponseLocation": "https://yandex.com/", + "HTTPResponseTitle": "", + "HTTPResponseIsFinal": false, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -2005,13 +2005,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.80", + "IPAddress": "5.255.255.80", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.80:443", + "EndpointAddress": "5.255.255.80:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "xn--d1acpjx3f.xn--p1ai", @@ -2063,13 +2063,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.80", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.80:443", + "EndpointAddress": "5.255.255.88:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "xn--d1acpjx3f.xn--p1ai", @@ -2121,13 +2121,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 40003, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "5.255.255.88:443", + "EndpointAddress": "77.88.55.77:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "xn--d1acpjx3f.xn--p1ai", @@ -2179,13 +2179,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.77", + "IPAddress": "77.88.55.80", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 40004, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "77.88.55.77:443", + "EndpointAddress": "77.88.55.80:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "xn--d1acpjx3f.xn--p1ai", @@ -2221,7 +2221,7 @@ }, "40005": { "TagDepth": 1, - "Type": 3, + "Type": 2, "Failure": "", "TransactionID": 40005, "TagFetchBody": true, @@ -2247,20 +2247,15 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", - "HTTPRequestURL": "https://yandex.com/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 308, - "HTTPResponseBodyLength": 0, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Length": true, - "Date": true, - "Location": true - }, - "HTTPResponseLocation": "https://ya.ru/", - "HTTPResponseTitle": "", - "HTTPResponseIsFinal": false, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, + "HTTPResponseLocation": null, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -2342,7 +2337,7 @@ }, "40007": { "TagDepth": 1, - "Type": 2, + "Type": 3, "Failure": "", "TransactionID": 40007, "TagFetchBody": true, @@ -2368,15 +2363,20 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, - "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPRequestURL": "https://yandex.com/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 308, + "HTTPResponseBodyLength": 0, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Length": true, + "Date": true, + "Location": true + }, + "HTTPResponseLocation": "https://ya.ru/", + "HTTPResponseTitle": "", + "HTTPResponseIsFinal": false, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -2516,7 +2516,7 @@ }, "40010": { "TagDepth": 2, - "Type": 2, + "Type": 3, "Failure": "", "TransactionID": 40010, "TagFetchBody": true, @@ -2542,15 +2542,20 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, + "HTTPRequestURL": "https://ya.ru/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 200, + "HTTPResponseBodyLength": 1533, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Length": true, + "Content-Type": true, + "Date": true + }, "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPResponseTitle": "Default Web Page", + "HTTPResponseIsFinal": true, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -2632,7 +2637,7 @@ }, "40012": { "TagDepth": 2, - "Type": 3, + "Type": 2, "Failure": "", "TransactionID": 40012, "TagFetchBody": true, @@ -2658,20 +2663,15 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", - "HTTPRequestURL": "https://ya.ru/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 200, - "HTTPResponseBodyLength": 1533, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Length": true, - "Content-Type": true, - "Date": true - }, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, "HTTPResponseLocation": null, - "HTTPResponseTitle": "Default Web Page", - "HTTPResponseIsFinal": true, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ diff --git a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/observations_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/observations_classic.json index bf31c2181..ffb0b849e 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/observations_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/idnaWithoutCensorshipWithFirstLetterUppercase/observations_classic.json @@ -677,13 +677,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.80", + "IPAddress": "5.255.255.80", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "77.88.55.80:80", + "EndpointAddress": "5.255.255.80:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, @@ -735,13 +735,13 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.80", + "IPAddress": "5.255.255.88", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 30002, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "5.255.255.80:80", + "EndpointAddress": "5.255.255.88:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, @@ -777,7 +777,7 @@ }, "30003": { "TagDepth": 0, - "Type": 3, + "Type": 1, "Failure": "", "TransactionID": 30003, "TagFetchBody": true, @@ -793,30 +793,25 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "5.255.255.88", + "IPAddress": "77.88.55.77", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 30003, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "5.255.255.88:80", + "EndpointAddress": "77.88.55.77:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": "http://xn--d1acpjx3f.xn--p1ai/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 308, - "HTTPResponseBodyLength": 0, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Length": true, - "Date": true, - "Location": true - }, - "HTTPResponseLocation": "https://yandex.com/", - "HTTPResponseTitle": "", - "HTTPResponseIsFinal": false, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, + "HTTPResponseLocation": null, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -840,7 +835,7 @@ }, "30004": { "TagDepth": 0, - "Type": 1, + "Type": 3, "Failure": "", "TransactionID": 30004, "TagFetchBody": true, @@ -856,25 +851,30 @@ "77.88.55.80" ], "IPAddressOrigin": "dns", - "IPAddress": "77.88.55.77", + "IPAddress": "77.88.55.80", "IPAddressASN": 208398, "IPAddressBogon": false, "EndpointTransactionID": 30004, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "77.88.55.77:80", + "EndpointAddress": "77.88.55.80:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, - "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPRequestURL": "http://xn--d1acpjx3f.xn--p1ai/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 308, + "HTTPResponseBodyLength": 0, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Length": true, + "Date": true, + "Location": true + }, + "HTTPResponseLocation": "https://yandex.com/", + "HTTPResponseTitle": "", + "HTTPResponseIsFinal": false, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -898,7 +898,7 @@ }, "40005": { "TagDepth": 1, - "Type": 3, + "Type": 2, "Failure": "", "TransactionID": 40005, "TagFetchBody": true, @@ -924,20 +924,15 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", - "HTTPRequestURL": "https://yandex.com/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 308, - "HTTPResponseBodyLength": 0, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Length": true, - "Date": true, - "Location": true - }, - "HTTPResponseLocation": "https://ya.ru/", - "HTTPResponseTitle": "", - "HTTPResponseIsFinal": false, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, + "HTTPResponseLocation": null, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -1019,7 +1014,7 @@ }, "40007": { "TagDepth": 1, - "Type": 2, + "Type": 3, "Failure": "", "TransactionID": 40007, "TagFetchBody": true, @@ -1045,15 +1040,20 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "yandex.com", - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, - "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPRequestURL": "https://yandex.com/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 308, + "HTTPResponseBodyLength": 0, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Length": true, + "Date": true, + "Location": true + }, + "HTTPResponseLocation": "https://ya.ru/", + "HTTPResponseTitle": "", + "HTTPResponseIsFinal": false, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -1193,7 +1193,7 @@ }, "40010": { "TagDepth": 2, - "Type": 2, + "Type": 3, "Failure": "", "TransactionID": 40010, "TagFetchBody": true, @@ -1219,15 +1219,20 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, + "HTTPRequestURL": "https://ya.ru/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 200, + "HTTPResponseBodyLength": 1533, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Length": true, + "Content-Type": true, + "Date": true + }, "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPResponseTitle": "Default Web Page", + "HTTPResponseIsFinal": true, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -1309,7 +1314,7 @@ }, "40012": { "TagDepth": 2, - "Type": 3, + "Type": 2, "Failure": "", "TransactionID": 40012, "TagFetchBody": true, @@ -1335,20 +1340,15 @@ "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "ya.ru", - "HTTPRequestURL": "https://ya.ru/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 200, - "HTTPResponseBodyLength": 1533, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Length": true, - "Content-Type": true, - "Date": true - }, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, "HTTPResponseLocation": null, - "HTTPResponseTitle": "Default Web Page", - "HTTPResponseIsFinal": true, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "xn--d1acpjx3f.xn--p1ai", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ diff --git a/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/analysis.json index 04c06435f..a7b2cbeb0 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/analysis.json @@ -48,7 +48,7 @@ "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, "HTTPFinalResponseSuccessTCPWithoutControl": null, - "HTTPFinalResponseSuccessTCPWithControl": 30001, + "HTTPFinalResponseSuccessTCPWithControl": 30002, "HTTPFinalResponseDiffBodyProportionFactor": null, "HTTPFinalResponseDiffStatusCodeMatch": true, "HTTPFinalResponseDiffTitleDifferentLongWords": {}, @@ -60,7 +60,7 @@ "TagDepth": 0, "Type": 3, "Failure": "", - "TransactionID": 30001, + "TransactionID": 30002, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "largefile.com", @@ -75,7 +75,7 @@ "IPAddress": "52.35.36.75", "IPAddressASN": 16509, "IPAddressBogon": false, - "EndpointTransactionID": 30001, + "EndpointTransactionID": 30002, "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "52.35.36.75:80", @@ -129,13 +129,13 @@ "52.35.36.75" ], "IPAddressOrigin": "dns", - "IPAddress": "35.161.85.189", + "IPAddress": "52.35.36.75", "IPAddressASN": 16509, "IPAddressBogon": false, "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "35.161.85.189:443", + "EndpointAddress": "52.35.36.75:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "largefile.com", @@ -182,13 +182,13 @@ "52.35.36.75" ], "IPAddressOrigin": "dns", - "IPAddress": "52.35.36.75", + "IPAddress": "35.161.85.189", "IPAddressASN": 16509, "IPAddressBogon": false, "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "52.35.36.75:443", + "EndpointAddress": "35.161.85.189:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "largefile.com", @@ -223,7 +223,7 @@ "TagDepth": 0, "Type": 1, "Failure": "", - "TransactionID": 30002, + "TransactionID": 30001, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "largefile.com", @@ -238,7 +238,7 @@ "IPAddress": "35.161.85.189", "IPAddressASN": 16509, "IPAddressBogon": false, - "EndpointTransactionID": 30002, + "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "35.161.85.189:80", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/analysis_classic.json index df000139a..ece6c1195 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/analysis_classic.json @@ -42,7 +42,7 @@ "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, "HTTPFinalResponseSuccessTCPWithoutControl": null, - "HTTPFinalResponseSuccessTCPWithControl": 30001, + "HTTPFinalResponseSuccessTCPWithControl": 30002, "HTTPFinalResponseDiffBodyProportionFactor": null, "HTTPFinalResponseDiffStatusCodeMatch": true, "HTTPFinalResponseDiffTitleDifferentLongWords": {}, @@ -54,7 +54,7 @@ "TagDepth": 0, "Type": 3, "Failure": "", - "TransactionID": 30001, + "TransactionID": 30002, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "largefile.com", @@ -69,7 +69,7 @@ "IPAddress": "52.35.36.75", "IPAddressASN": 16509, "IPAddressBogon": false, - "EndpointTransactionID": 30001, + "EndpointTransactionID": 30002, "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "52.35.36.75:80", @@ -111,7 +111,7 @@ "TagDepth": 0, "Type": 1, "Failure": "", - "TransactionID": 30002, + "TransactionID": 30001, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "largefile.com", @@ -126,7 +126,7 @@ "IPAddress": "35.161.85.189", "IPAddressASN": 16509, "IPAddressBogon": false, - "EndpointTransactionID": 30002, + "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "35.161.85.189:80", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/measurement.json b/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/measurement.json index b1e2fe3ac..6e430911f 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/measurement.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/measurement.json @@ -234,7 +234,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30001 + "transaction_id": 30002 } ], "tcp_connect": [ @@ -250,7 +250,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30002 + "transaction_id": 30001 }, { "ip": "35.161.85.189", @@ -264,7 +264,7 @@ "depth=0", "fetch_body=false" ], - "transaction_id": 40002 + "transaction_id": 40001 }, { "ip": "52.35.36.75", @@ -278,7 +278,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30001 + "transaction_id": 30002 }, { "ip": "52.35.36.75", @@ -292,7 +292,7 @@ "depth=0", "fetch_body=false" ], - "transaction_id": 40001 + "transaction_id": 40002 } ], "tls_handshakes": [ @@ -311,7 +311,7 @@ "fetch_body=false" ], "tls_version": "TLSv1.3", - "transaction_id": 40002 + "transaction_id": 40001 }, { "network": "tcp", @@ -328,7 +328,7 @@ "fetch_body=false" ], "tls_version": "TLSv1.3", - "transaction_id": 40001 + "transaction_id": 40002 } ], "x_control_request": { @@ -345,10 +345,10 @@ ] }, "tcp_connect": [ - "52.35.36.75:443", - "52.35.36.75:80", "35.161.85.189:443", - "35.161.85.189:80" + "35.161.85.189:80", + "52.35.36.75:443", + "52.35.36.75:80" ], "x_quic_enabled": false }, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/observations.json b/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/observations.json index e88362b14..0632e17a4 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/observations.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/observations.json @@ -424,7 +424,7 @@ "KnownTCPEndpoints": { "30001": { "TagDepth": 0, - "Type": 3, + "Type": 1, "Failure": "", "TransactionID": 30001, "TagFetchBody": true, @@ -438,29 +438,25 @@ "52.35.36.75" ], "IPAddressOrigin": "dns", - "IPAddress": "52.35.36.75", + "IPAddress": "35.161.85.189", "IPAddressASN": 16509, "IPAddressBogon": false, "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "52.35.36.75:80", + "EndpointAddress": "35.161.85.189:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": "http://largefile.com/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 200, - "HTTPResponseBodyLength": 524288, - "HTTPResponseBodyIsTruncated": true, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Type": true, - "Date": true - }, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, "HTTPResponseLocation": null, - "HTTPResponseTitle": "", - "HTTPResponseIsFinal": true, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "largefile.com", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -481,7 +477,7 @@ }, "30002": { "TagDepth": 0, - "Type": 1, + "Type": 3, "Failure": "", "TransactionID": 30002, "TagFetchBody": true, @@ -495,25 +491,29 @@ "52.35.36.75" ], "IPAddressOrigin": "dns", - "IPAddress": "35.161.85.189", + "IPAddress": "52.35.36.75", "IPAddressASN": 16509, "IPAddressBogon": false, "EndpointTransactionID": 30002, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "35.161.85.189:80", + "EndpointAddress": "52.35.36.75:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, + "HTTPRequestURL": "http://largefile.com/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 200, + "HTTPResponseBodyLength": 524288, + "HTTPResponseBodyIsTruncated": true, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Type": true, + "Date": true + }, "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPResponseTitle": "", + "HTTPResponseIsFinal": true, "ControlDNSDomain": "largefile.com", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -548,13 +548,13 @@ "52.35.36.75" ], "IPAddressOrigin": "dns", - "IPAddress": "52.35.36.75", + "IPAddress": "35.161.85.189", "IPAddressASN": 16509, "IPAddressBogon": false, "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "52.35.36.75:443", + "EndpointAddress": "35.161.85.189:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "largefile.com", @@ -601,13 +601,13 @@ "52.35.36.75" ], "IPAddressOrigin": "dns", - "IPAddress": "35.161.85.189", + "IPAddress": "52.35.36.75", "IPAddressASN": 16509, "IPAddressBogon": false, "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "35.161.85.189:443", + "EndpointAddress": "52.35.36.75:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "largefile.com", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/observations_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/observations_classic.json index b33633b85..543b951af 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/observations_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/largeFileWithHTTP/observations_classic.json @@ -111,7 +111,7 @@ "KnownTCPEndpoints": { "30001": { "TagDepth": 0, - "Type": 3, + "Type": 1, "Failure": "", "TransactionID": 30001, "TagFetchBody": true, @@ -125,29 +125,25 @@ "52.35.36.75" ], "IPAddressOrigin": "dns", - "IPAddress": "52.35.36.75", + "IPAddress": "35.161.85.189", "IPAddressASN": 16509, "IPAddressBogon": false, "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "52.35.36.75:80", + "EndpointAddress": "35.161.85.189:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": "http://largefile.com/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 200, - "HTTPResponseBodyLength": 524288, - "HTTPResponseBodyIsTruncated": true, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Type": true, - "Date": true - }, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, "HTTPResponseLocation": null, - "HTTPResponseTitle": "", - "HTTPResponseIsFinal": true, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "largefile.com", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -168,7 +164,7 @@ }, "30002": { "TagDepth": 0, - "Type": 1, + "Type": 3, "Failure": "", "TransactionID": 30002, "TagFetchBody": true, @@ -182,25 +178,29 @@ "52.35.36.75" ], "IPAddressOrigin": "dns", - "IPAddress": "35.161.85.189", + "IPAddress": "52.35.36.75", "IPAddressASN": 16509, "IPAddressBogon": false, "EndpointTransactionID": 30002, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "35.161.85.189:80", + "EndpointAddress": "52.35.36.75:80", "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, + "HTTPRequestURL": "http://largefile.com/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 200, + "HTTPResponseBodyLength": 524288, + "HTTPResponseBodyIsTruncated": true, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Type": true, + "Date": true + }, "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPResponseTitle": "", + "HTTPResponseIsFinal": true, "ControlDNSDomain": "largefile.com", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis.json index 0659493d9..e4d706aa8 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis.json @@ -31,13 +31,13 @@ "DNSLookupExpectedFailure": [], "DNSLookupExpectedSuccess": [], "TCPConnectExpectedFailure": [ - 40002 + 40001 ], "TCPConnectUnexpectedFailure": [ - 30002 + 30001 ], "TCPConnectUnexpectedFailureDuringWebFetch": [ - 30002 + 30001 ], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], "TCPConnectUnexplainedFailure": [], @@ -55,7 +55,7 @@ "HTTPFinalResponseSuccessTLSWithoutControl": null, "HTTPFinalResponseSuccessTLSWithControl": null, "HTTPFinalResponseSuccessTCPWithoutControl": null, - "HTTPFinalResponseSuccessTCPWithControl": 30001, + "HTTPFinalResponseSuccessTCPWithControl": 30002, "HTTPFinalResponseDiffBodyProportionFactor": 1, "HTTPFinalResponseDiffStatusCodeMatch": true, "HTTPFinalResponseDiffTitleDifferentLongWords": {}, @@ -68,7 +68,7 @@ "TagDepth": 0, "Type": 3, "Failure": "", - "TransactionID": 30001, + "TransactionID": 30002, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "www.example.org", @@ -82,7 +82,7 @@ "IPAddress": "93.184.216.34", "IPAddressASN": 15133, "IPAddressBogon": false, - "EndpointTransactionID": 30001, + "EndpointTransactionID": 30002, "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "93.184.216.34:80", @@ -125,7 +125,7 @@ "TagDepth": 0, "Type": 2, "Failure": "", - "TransactionID": 40001, + "TransactionID": 40002, "TagFetchBody": false, "DNSTransactionID": 20001, "DNSDomain": "www.example.org", @@ -139,7 +139,7 @@ "IPAddress": "93.184.216.34", "IPAddressASN": 15133, "IPAddressBogon": false, - "EndpointTransactionID": 40001, + "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", "EndpointAddress": "93.184.216.34:443", @@ -177,7 +177,7 @@ "TagDepth": 0, "Type": 1, "Failure": "connection_refused", - "TransactionID": 40002, + "TransactionID": 40001, "TagFetchBody": false, "DNSTransactionID": 1, "DNSDomain": "www.example.org", @@ -191,7 +191,7 @@ "IPAddress": "83.224.65.41", "IPAddressASN": 30722, "IPAddressBogon": false, - "EndpointTransactionID": 40002, + "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", "EndpointAddress": "83.224.65.41:443", @@ -229,7 +229,7 @@ "TagDepth": 0, "Type": 1, "Failure": "connection_refused", - "TransactionID": 30002, + "TransactionID": 30001, "TagFetchBody": true, "DNSTransactionID": 1, "DNSDomain": "www.example.org", @@ -243,7 +243,7 @@ "IPAddress": "83.224.65.41", "IPAddressASN": 30722, "IPAddressBogon": false, - "EndpointTransactionID": 30002, + "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "83.224.65.41:80", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis_classic.json index ccc8c1d80..43df7e2e0 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/analysis_classic.json @@ -24,10 +24,10 @@ "DNSLookupExpectedSuccess": [], "TCPConnectExpectedFailure": [], "TCPConnectUnexpectedFailure": [ - 30002 + 30001 ], "TCPConnectUnexpectedFailureDuringWebFetch": [ - 30002 + 30001 ], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], "TCPConnectUnexplainedFailure": [], @@ -55,7 +55,7 @@ "TagDepth": 0, "Type": 1, "Failure": "connection_refused", - "TransactionID": 30002, + "TransactionID": 30001, "TagFetchBody": true, "DNSTransactionID": 1, "DNSDomain": "www.example.org", @@ -69,7 +69,7 @@ "IPAddress": "83.224.65.41", "IPAddressASN": 30722, "IPAddressBogon": false, - "EndpointTransactionID": 30002, + "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "83.224.65.41:80", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/measurement.json b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/measurement.json index e5ecd775f..4b7cb9020 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/measurement.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/measurement.json @@ -218,7 +218,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30001 + "transaction_id": 30002 } ], "tcp_connect": [ @@ -234,7 +234,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30002 + "transaction_id": 30001 }, { "ip": "83.224.65.41", @@ -248,7 +248,7 @@ "depth=0", "fetch_body=false" ], - "transaction_id": 40002 + "transaction_id": 40001 }, { "ip": "93.184.216.34", @@ -262,7 +262,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 30001 + "transaction_id": 30002 }, { "ip": "93.184.216.34", @@ -276,7 +276,7 @@ "depth=0", "fetch_body=false" ], - "transaction_id": 40001 + "transaction_id": 40002 } ], "tls_handshakes": [ @@ -295,7 +295,7 @@ "fetch_body=false" ], "tls_version": "TLSv1.3", - "transaction_id": 40001 + "transaction_id": 40002 } ], "x_control_request": { @@ -312,10 +312,10 @@ ] }, "tcp_connect": [ - "93.184.216.34:443", - "93.184.216.34:80", "83.224.65.41:443", - "83.224.65.41:80" + "83.224.65.41:80", + "93.184.216.34:443", + "93.184.216.34:80" ], "x_quic_enabled": false }, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/observations.json b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/observations.json index 3538dcedd..9557399bb 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/observations.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/observations.json @@ -262,43 +262,38 @@ "KnownTCPEndpoints": { "30001": { "TagDepth": 0, - "Type": 3, - "Failure": "", + "Type": 1, + "Failure": "connection_refused", "TransactionID": 30001, "TagFetchBody": true, - "DNSTransactionID": 20001, + "DNSTransactionID": 1, "DNSDomain": "www.example.org", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "93.184.216.34" + "83.224.65.41" ], "IPAddressOrigin": "dns", - "IPAddress": "93.184.216.34", - "IPAddressASN": 15133, + "IPAddress": "83.224.65.41", + "IPAddressASN": 30722, "IPAddressBogon": false, "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "93.184.216.34:80", - "TCPConnectFailure": "", + "EndpointAddress": "83.224.65.41:80", + "TCPConnectFailure": "connection_refused", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": "http://www.example.org/", - "HTTPFailure": "", - "HTTPResponseStatusCode": 200, - "HTTPResponseBodyLength": 1533, - "HTTPResponseBodyIsTruncated": false, - "HTTPResponseHeadersKeys": { - "Alt-Svc": true, - "Content-Length": true, - "Content-Type": true, - "Date": true - }, + "HTTPRequestURL": null, + "HTTPFailure": null, + "HTTPResponseStatusCode": null, + "HTTPResponseBodyLength": null, + "HTTPResponseBodyIsTruncated": null, + "HTTPResponseHeadersKeys": null, "HTTPResponseLocation": null, - "HTTPResponseTitle": "Default Web Page", - "HTTPResponseIsFinal": true, + "HTTPResponseTitle": null, + "HTTPResponseIsFinal": null, "ControlDNSDomain": "www.example.org", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -319,38 +314,43 @@ }, "30002": { "TagDepth": 0, - "Type": 1, - "Failure": "connection_refused", + "Type": 3, + "Failure": "", "TransactionID": 30002, "TagFetchBody": true, - "DNSTransactionID": 1, + "DNSTransactionID": 20001, "DNSDomain": "www.example.org", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "83.224.65.41" + "93.184.216.34" ], "IPAddressOrigin": "dns", - "IPAddress": "83.224.65.41", - "IPAddressASN": 30722, + "IPAddress": "93.184.216.34", + "IPAddressASN": 15133, "IPAddressBogon": false, "EndpointTransactionID": 30002, "EndpointProto": "tcp", "EndpointPort": "80", - "EndpointAddress": "83.224.65.41:80", - "TCPConnectFailure": "connection_refused", + "EndpointAddress": "93.184.216.34:80", + "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, - "HTTPRequestURL": null, - "HTTPFailure": null, - "HTTPResponseStatusCode": null, - "HTTPResponseBodyLength": null, - "HTTPResponseBodyIsTruncated": null, - "HTTPResponseHeadersKeys": null, + "HTTPRequestURL": "http://www.example.org/", + "HTTPFailure": "", + "HTTPResponseStatusCode": 200, + "HTTPResponseBodyLength": 1533, + "HTTPResponseBodyIsTruncated": false, + "HTTPResponseHeadersKeys": { + "Alt-Svc": true, + "Content-Length": true, + "Content-Type": true, + "Date": true + }, "HTTPResponseLocation": null, - "HTTPResponseTitle": null, - "HTTPResponseIsFinal": null, + "HTTPResponseTitle": "Default Web Page", + "HTTPResponseIsFinal": true, "ControlDNSDomain": "www.example.org", "ControlDNSLookupFailure": "", "ControlDNSResolvedAddrs": [ @@ -371,29 +371,29 @@ }, "40001": { "TagDepth": 0, - "Type": 2, - "Failure": "", + "Type": 1, + "Failure": "connection_refused", "TransactionID": 40001, "TagFetchBody": false, - "DNSTransactionID": 20001, + "DNSTransactionID": 1, "DNSDomain": "www.example.org", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "93.184.216.34" + "83.224.65.41" ], "IPAddressOrigin": "dns", - "IPAddress": "93.184.216.34", - "IPAddressASN": 15133, + "IPAddress": "83.224.65.41", + "IPAddressASN": 30722, "IPAddressBogon": false, "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "93.184.216.34:443", - "TCPConnectFailure": "", - "TLSHandshakeFailure": "", - "TLSServerName": "www.example.org", + "EndpointAddress": "83.224.65.41:443", + "TCPConnectFailure": "connection_refused", + "TLSHandshakeFailure": null, + "TLSServerName": null, "HTTPRequestURL": null, "HTTPFailure": null, "HTTPResponseStatusCode": null, @@ -408,8 +408,8 @@ "ControlDNSResolvedAddrs": [ "93.184.216.34" ], - "ControlTCPConnectFailure": "", - "ControlTLSHandshakeFailure": "", + "ControlTCPConnectFailure": "connection_refused_error", + "ControlTLSHandshakeFailure": null, "ControlHTTPFailure": "", "ControlHTTPResponseStatusCode": 200, "ControlHTTPResponseBodyLength": 1533, @@ -423,29 +423,29 @@ }, "40002": { "TagDepth": 0, - "Type": 1, - "Failure": "connection_refused", + "Type": 2, + "Failure": "", "TransactionID": 40002, "TagFetchBody": false, - "DNSTransactionID": 1, + "DNSTransactionID": 20001, "DNSDomain": "www.example.org", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "83.224.65.41" + "93.184.216.34" ], "IPAddressOrigin": "dns", - "IPAddress": "83.224.65.41", - "IPAddressASN": 30722, + "IPAddress": "93.184.216.34", + "IPAddressASN": 15133, "IPAddressBogon": false, "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "83.224.65.41:443", - "TCPConnectFailure": "connection_refused", - "TLSHandshakeFailure": null, - "TLSServerName": null, + "EndpointAddress": "93.184.216.34:443", + "TCPConnectFailure": "", + "TLSHandshakeFailure": "", + "TLSServerName": "www.example.org", "HTTPRequestURL": null, "HTTPFailure": null, "HTTPResponseStatusCode": null, @@ -460,8 +460,8 @@ "ControlDNSResolvedAddrs": [ "93.184.216.34" ], - "ControlTCPConnectFailure": "connection_refused_error", - "ControlTLSHandshakeFailure": null, + "ControlTCPConnectFailure": "", + "ControlTLSHandshakeFailure": "", "ControlHTTPFailure": "", "ControlHTTPResponseStatusCode": 200, "ControlHTTPResponseBodyLength": 1533, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/observations_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/observations_classic.json index f1ff3561e..47621486d 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/observations_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tcpBlockingConnectionRefusedWithInconsistentDNS/observations_classic.json @@ -55,11 +55,11 @@ } ], "KnownTCPEndpoints": { - "30002": { + "30001": { "TagDepth": 0, "Type": 1, "Failure": "connection_refused", - "TransactionID": 30002, + "TransactionID": 30001, "TagFetchBody": true, "DNSTransactionID": 1, "DNSDomain": "www.example.org", @@ -73,7 +73,7 @@ "IPAddress": "83.224.65.41", "IPAddressASN": 30722, "IPAddressBogon": false, - "EndpointTransactionID": 30002, + "EndpointTransactionID": 30001, "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "83.224.65.41:80", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/analysis.json index aea36df7e..da3f9b5ba 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/analysis.json @@ -30,12 +30,8 @@ "DNSLookupExpectedFailure": [], "DNSLookupExpectedSuccess": [], "TCPConnectExpectedFailure": [], - "TCPConnectUnexpectedFailure": [ - 30001 - ], - "TCPConnectUnexpectedFailureDuringWebFetch": [ - 30001 - ], + "TCPConnectUnexpectedFailure": [], + "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], "TCPConnectUnexplainedFailure": [], "TCPConnectUnexplainedFailureDuringWebFetch": [], @@ -222,7 +218,7 @@ { "TagDepth": 0, "Type": 1, - "Failure": "generic_timeout_error", + "Failure": "", "TransactionID": 30001, "TagFetchBody": true, "DNSTransactionID": 20001, @@ -242,7 +238,7 @@ "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "52.35.36.75:80", - "TCPConnectFailure": "generic_timeout_error", + "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, "HTTPRequestURL": null, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/analysis_classic.json index 24abbb8ca..5b1388740 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/analysis_classic.json @@ -24,12 +24,8 @@ "DNSLookupExpectedFailure": [], "DNSLookupExpectedSuccess": [], "TCPConnectExpectedFailure": [], - "TCPConnectUnexpectedFailure": [ - 30001 - ], - "TCPConnectUnexpectedFailureDuringWebFetch": [ - 30001 - ], + "TCPConnectUnexpectedFailure": [], + "TCPConnectUnexpectedFailureDuringWebFetch": [], "TCPConnectUnexpectedFailureDuringConnectivityCheck": [], "TCPConnectUnexplainedFailure": [], "TCPConnectUnexplainedFailureDuringWebFetch": [], @@ -110,7 +106,7 @@ { "TagDepth": 0, "Type": 1, - "Failure": "generic_timeout_error", + "Failure": "", "TransactionID": 30001, "TagFetchBody": true, "DNSTransactionID": 20001, @@ -130,7 +126,7 @@ "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "52.35.36.75:80", - "TCPConnectFailure": "generic_timeout_error", + "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, "HTTPRequestURL": null, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/measurement.json b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/measurement.json index d6169f252..041c818aa 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/measurement.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/measurement.json @@ -205,12 +205,9 @@ "url": "http://largefile.com/" }, "response": { - "body": { - "data": "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", - "format": "base64" - }, - "body_is_truncated": false, - "x_body_length": 57344, + "body": "", + "body_is_truncated": true, + "x_body_length": 188416, "code": 200, "headers_list": [ [ @@ -273,8 +270,8 @@ "ip": "52.35.36.75", "port": 80, "status": { - "failure": "generic_timeout_error", - "success": false + "failure": null, + "success": true }, "t": 0, "tags": [ @@ -424,7 +421,7 @@ "dns_experiment_failure": null, "dns_consistency": "consistent", "http_experiment_failure": "generic_timeout_error", - "x_blocking_flags": 10, + "x_blocking_flags": 8, "x_null_null_flags": 0, "body_proportion": 0, "body_length_match": null, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/observations.json b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/observations.json index 255114890..74e152b77 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/observations.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/observations.json @@ -425,7 +425,7 @@ "30001": { "TagDepth": 0, "Type": 1, - "Failure": "generic_timeout_error", + "Failure": "", "TransactionID": 30001, "TagFetchBody": true, "DNSTransactionID": 20001, @@ -445,7 +445,7 @@ "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "52.35.36.75:80", - "TCPConnectFailure": "generic_timeout_error", + "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, "HTTPRequestURL": null, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/observations_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/observations_classic.json index a1f4cee73..76cc4ca08 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/observations_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTP/observations_classic.json @@ -112,7 +112,7 @@ "30001": { "TagDepth": 0, "Type": 1, - "Failure": "generic_timeout_error", + "Failure": "", "TransactionID": 30001, "TagFetchBody": true, "DNSTransactionID": 20001, @@ -132,7 +132,7 @@ "EndpointProto": "tcp", "EndpointPort": "80", "EndpointAddress": "52.35.36.75:80", - "TCPConnectFailure": "generic_timeout_error", + "TCPConnectFailure": "", "TLSHandshakeFailure": null, "TLSServerName": null, "HTTPRequestURL": null, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/analysis.json index 434ebc48a..133b1ed7a 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/analysis.json @@ -44,7 +44,7 @@ "TLSHandshakeUnexplainedFailureDuringWebFetch": [], "TLSHandshakeUnexplainedFailureDuringConnectivityCheck": [], "HTTPRoundTripUnexpectedFailure": [ - 40001 + 40002 ], "HTTPRoundTripUnexplainedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, @@ -60,7 +60,7 @@ "TagDepth": 0, "Type": 3, "Failure": "generic_timeout_error", - "TransactionID": 40001, + "TransactionID": 40002, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "largefile.com", @@ -75,7 +75,7 @@ "IPAddress": "35.161.85.189", "IPAddressASN": 16509, "IPAddressBogon": false, - "EndpointTransactionID": 40001, + "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", "EndpointAddress": "35.161.85.189:443", @@ -113,7 +113,7 @@ "TagDepth": 0, "Type": 2, "Failure": "", - "TransactionID": 40002, + "TransactionID": 40001, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "largefile.com", @@ -128,7 +128,7 @@ "IPAddress": "52.35.36.75", "IPAddressASN": 16509, "IPAddressBogon": false, - "EndpointTransactionID": 40002, + "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", "EndpointAddress": "52.35.36.75:443", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/analysis_classic.json index ff4b4f41a..c454fe8ac 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/analysis_classic.json @@ -39,7 +39,7 @@ "TLSHandshakeUnexplainedFailureDuringWebFetch": [], "TLSHandshakeUnexplainedFailureDuringConnectivityCheck": [], "HTTPRoundTripUnexpectedFailure": [ - 40001 + 40002 ], "HTTPRoundTripUnexplainedFailure": [], "HTTPFinalResponseSuccessTLSWithoutControl": null, @@ -55,7 +55,7 @@ "TagDepth": 0, "Type": 3, "Failure": "generic_timeout_error", - "TransactionID": 40001, + "TransactionID": 40002, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "largefile.com", @@ -70,7 +70,7 @@ "IPAddress": "35.161.85.189", "IPAddressASN": 16509, "IPAddressBogon": false, - "EndpointTransactionID": 40001, + "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", "EndpointAddress": "35.161.85.189:443", @@ -108,7 +108,7 @@ "TagDepth": 0, "Type": 2, "Failure": "", - "TransactionID": 40002, + "TransactionID": 40001, "TagFetchBody": true, "DNSTransactionID": 20001, "DNSDomain": "largefile.com", @@ -123,7 +123,7 @@ "IPAddress": "52.35.36.75", "IPAddressASN": 16509, "IPAddressBogon": false, - "EndpointTransactionID": 40002, + "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", "EndpointAddress": "52.35.36.75:443", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/measurement.json b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/measurement.json index f01da1c0c..14c59234c 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/measurement.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/measurement.json @@ -206,12 +206,9 @@ "url": "https://largefile.com/" }, "response": { - "body": { - "data": "UN6y9UGZEQOo1K0QwyMJVawX0tQb7T+0AnM03Fthwv4KwyRxSl/GdPw64T8PCgeS6thfEaSgdlN8qkd/nPJKMDG/nxt6b/04lcC22MUtuKPQ0lv7ZOUyeE0se1R6Y+Guv23CfF+GEcRrtUvpxJ7+VYaQP7C2ZVOCWesIsBEjLLGdvaUzfT4aBrNpeTcV3+4n2UMRZtszw77Tw0Vz+23jwN73n3JlwoJjScFfOfL/Ny7rFndZuvphhMU8zsziyWIgyfplToy6m1T+h55ovkXLqNxrDfvRsZuStjfMp6u6TbuYHR+MCbZ4a0fMpdhhntYvFVqUyqalyV7+MDRxc/ybySa+n0CXYH8hPJQ7IjEfVCRW5uLWvJIut5BH6BwBY36nnRD3w857ZnYo/VakT14HvrBd0W63v2XzZhs3kcanM2aUw9nkWM4Ma9StHQDcCauoeOdiqqWYlJtwBuJx6TjxeqiBWKYCQbK2tjbF5WHBAB8K4DeSHWYNNGPubbJnBwoAPSN83PwCszQ0OQ57/kq0h1g49RaWK2OBnMVE3za/6NXK+VIKUtIJx9CppMzFZ/rtGWOCV9xF/WZrqwpO6K92uXTYj/Gcd7/JR5LNpibG1Tz/9UaU5YkFPF08DjJKgJhdoJE75/m2T6IrEqa6xRvxe49SPsRnuk38k0qkmzoLpOfcVt5rQORKyS+wsA1qjoLHpQMBWbCwPsFYlscF8bQKoQLOu6IsXTnXGWi1AWNu0sa6deIpCaIah2evCApLZFk1jsWAtXN7JAclSW6aDMXF90Y4I30kPVLNLLWZ852gh9z1kYLuOmJeQM3Eafr8ojTNuNNMU1I4AGSrdnnfoSv6UT8vQvWsUeSweS91hnm9VbCr1/3NJ7itLJuiwLl4CfOmyQb5bTRkAgsSp0UZx5koGVSxKtlFiUeFrd+PAFQhNXL7cd3NYIUmI3FKcQ3XcbuEsJXX1+jb0Nmu6O+UZT+GHze6RWj01dECAvJCKlfDEkUlnngPk8/79JLpKRXeHqgYvCSz5mCuAE1GPl4JI7/AYpEhgBqNRA5R068CrAlC6X7QoUxXlUWmcUE4CZYECqBX3MMNMo+8MmzCKTDmd4zZrHKnGEg5sUXBygZ6dbUo5AQ7DGvUyN9AFekMAkstxx17OkMkYfv5wjkMlcrvty+AkYZKx6mKjnlSMnL79XtQCDgmUDvU0+0lhwRuNvXCrX6Ybh6laPbS98DSUmCUThge6JjO/HFSKt+a393ZOQjBDFBbPHHZ6d5KWnJsboXqIRW/KxYCIhulVzZ9KS08vV9opf6XNRtYCKHeZfpD+aMvJMV+KGCwTn2aqQKErxSRinnCOGgDv/74hGX0bM05f+7a3Va+ToMQndSXIe6A8kWLo+FhisdrFktxQxn9WFavL+2NCcOPJgThSa0WtfRVqRro4ftXIaUFgSOvvAGG7g29igcdm1XbqRuLx9eppokEvGPdSyQKcND1yIj4Gq1GUzLJC6UFgBdvMGxDAIizdsmaa2qKfbYnXLTDkXU76SLmY6zk25i2hi09l3cW/KdWV/HURR64nLFm3as1LGyN2+ejuzHuhARmDh6h3hck3awvgzDzngnrN7EJPAKGYc6oDULbhHR2gTLaaCHBSOcsa6KX1/JVRjNd0zCum+c06Lv5xPTCLTinfV/40iTnD9dc4D2TZOy52Il6Jn/Rf4MdSY4JZuqKnucEouuhNSVbn/V/vfrKxrCU23FijntPb7qp7ac4hZLsqUPlX2Xm+8de5Fd6Y3m7iV5MY9cg454z8XZK/fvNx37UvdMm6fVgNQB23EjkBRFYBz1xdpyt8OnBSGEKW5vWBonpRhQB4d8WyHtq2NQkLoc8HJnS76OF8a3L1HXvPSLz1K6BlOktL2V39kUnAk8ISWxveXLJQLIBzQFcqouodoj8RBS2iObJAhxrAinmneALEDIjdWiOCi064pVl5q4b2od1xKWYlR/daoksMI0rvQZ4gbV8UcOmKvt9Z7Cjyl4DPGZpiL7W0vndNd9wpJ9PpClMpER6x3GKHJLkftk8Sqg3wHHz66ZPZIlxnHFEyxrx+71Zuqh9HIJ1WS8I6n1CgKv1E8Efx5yCBDIx5AkN4XVW4aRel56Alzc97KoCqNgGxxQn3YHcw7UuTQ7FKfEKoR1hHDB2sLNuENGlqfq+W6VhKfDqSBsd2JxGLkcSx/K4Gikmx6x7v4NWX7gdqrpBA5+LVC+DB0fWr4aBPGBy1VHaGz6Hng1d2JtrGMrQ7NQeJWgKUI1qowpHjmv3n+vm0QtUnYyM1xfclQoSCyKVIUX/2TAT6kFjbCHODdsVVqtaBGRdpFTm6xWSBmMT7j9JqgLmG8Y3zgm9mD+gAduDMKHprN+DZTxCt/tJ/dn0MeeqB22U6iczdHCMSAvnCCyZL1cLxxN4MVLACLTWIMDzbV0JwpNGE8nkGenUpnkuoWBUwheSUAWj3UvbmUDQB3Iby/7hTFI7TCQXHoEbjLZjNBVTr4er0gwPVXqvKRX/+e+qVjaOdDABhFCMIKVGKJbKZCtQyWc4ZdGi8i5gmkoFceicIPWlEzw7dYpCYEkHDIzSNO2W4bWrZxgHehE+89IFFcygtB8zdzFD2C6Ibjng4BFshOhbU77ehzi/j7tW0Eb/jltGsBPaOonc6sc7i8hmpPHUBYRRVI4MeAWYLZuqY3DJ34AnDRbHfsnmEqVGLX9rlMAfy0s+5RentRJx3wMBZoZDcOOGMdgFb0HYJp8P+ZdwguNpbjIBAk3qUKQ5lEG+1JNaXsWtA6Gs/icQz7mSc6iMYStk6ilp1vPrSoDNt7XPcgSXred7RdJB8NO3pWbwYovLIhAek95M6h5otMzETfQ3pcWGbTexXmWjgrWuQ628gIIqq3LUqW7yySLsjel7zyakIhNcflVkqZdFXIM5XBPtSq8zMTJyxb960cgHX76ASYIqgLF/4AdBPAL9KUl9IbgKOaV9KJ08UVRECArewjfX+89KElKHBO1MqHKG8j+I2F0eByy/EWIx4u2Qubw6GO+EklkaFJltFRxNKRLeFOKwGBMunte3yS6BetYu/cUH/L6NMg+AIp2tyxPtuZVNmQyLGPgj1TWgvlHGFFEAaz11iN1qK1lEmckvNTtb7V7i4ZSXf1dBH5sReTygYS2kfDBwFGR13EZxyTk0RkgMnPmTm0Z1TcF9fj+NwhOaySmFD8KQLZZeSKjEKh71BW/sA4v00usoQNKgCwZKnsXcZP1mkIe30DLD4ok63Nzj167jfugAza37LZzUf8ytTDNYu71amK5m9JAEBlE+XMORAu48otkw/INYbxNuUS5f0sNFrDjrKap0b82h+ZjWqEDbJiZelHjN0E0GE1pDhFOHRGesqk+SJcdYr9XhTLHZA9mEPfHr+dlQEyJahAY10BQW7gXeUJrFIY0OnkeQDu6NO7klFY/WCvgLesC0viFofHxpjgmR7Bh2+fkmBOyTJsLjJUjlL2fck1THhDnOBOYnKu93k/z9Up5qL8teQV4wW9ilvT2iNnMuogMoAZ0T+SeDtdhAaoPaXDLntWCPkdi8/wV5EXCCD06bRbFFZTguEOoDhlGsHYNKVJE35v81P8D8nbRTt/J+2R3qN9CrsxW02QXQPRMcx+mqdsf0KJhgn8LShRvuJTvbdcHkZylHOCYa1XB6YM2fhwDs6NoMS9dcavmb3z7YTwWAN53UYzyE9ePXgeqi3TTZVLH+Ye9wnO2zsuqE8zH67g0CCMZR9leT4ya8p77p0ONvQonYFft6zuM6nTRFTpMUQ/YJUV+RGtdL7N9z06agDJ6KSIaRW3PxzNizIkDEoeWyvUbmVLPB7YwTfDa9FihjPkcyk3eZWrY3e9RdXgGVE2/qK9+ZcaMa+tnk2cQPBGVRhQJckXDxfNUfqrMVcq46MN0eBdGdMWOgS900IK9PBEgNp1qNuk3Lhdpii8mFPcXpEIgRRiIXnnvTnllcKEB6GM++XpVBbwBu+UAV7GlnVRHH1vlFf2iDeEcUaUPMnH3NJI+80SZKqPkYCEUn1n24cHe6VjyP+iW/5cgPDVKb3Oh9tSEPd8p9nK2pE5GPRLmJWhaL0F1cFu+d67J7aoyoZOmNVU8ZvAM0udOn56fYpshM676vcbUmnBKx9xm7I7/yapB9njt5FGn5c0Gkp51GMT2Cyei7yZILTaLo2Pi56hzaMp5OvpP7i/hXbZY9gSYoj3HFxjuQt8gQ03zVjRtYtEWHGAnXPDn3g/MOYQ049ItXEySnjNaBlTHO4lZ2iiSfoTIVhcsqZERO/lGd6LnFva0x+dSe7+H/Djmwk8E0cHxOfs/m0980I3Pk7HN22JqE+0ObcOn5n6n/5Nr6jdZIEDCgpsYjcPWiIpMZ4MFJyLmlzasCENDaMLXPMXNSNDcCRu1UvDcJU9b5XfEkYX3Zha8y98gVnNBejDfmXBSEALR71val7asYKFIaz027tQWkCis1t+CuPT8Dpl1wXk4s0+TOgEdxjOiqQ+rroU1TNseYlvpBYUSOEoS5n4jiER+nE+l5VgoKUZ2OIz/JtloK8jlgWZego/fS/tAJ+49RTTbCVZAmsMylZAQFt0UN0a2epic6IBj7N+YQZyGNkEcJEE65qINX9t+0Fer7h8VifKyAbxFwpj4WvHVQvipz4NcI3h0NNri9EjjwSAM5q7YbmriLKcFf25eRsxKhpmTq/wRNHESKtTJ5ihCF8n3amzU+NDgX3X8qWVxI2D0YBZV9QU2QifrSGdV9NIMZHEdUJeZAA4j7v+TBOJMRX21xLs4QNEMTo+ufYgcvrnLDiZeAiw/33I2zJr95vqneaQvVoQcUAwwJe9Xj0SIo5sCGENainDTa/fNiZEDiQ6lLKrfAFZZh7yviUZIgmInodYFNJMH7JldSHrS50moVStG7tFaYC/PJJFGlXfnCrpnCV9smJnCnwF296+9uPlAKwE4QfE7mLQJtW3Srf1gKj+rycobUoNxPFAmWkDzZ8cMvoYLhdcG+yzOv20S+ZHD/b2t4lC4k0jOjl6rqwDjlT1YJ7k1lLig4lJBVehSLzPGHQljji1Vnz/dvNdGxLA+goFaE/FNs4QJsyO4ruC95c4UZU3DXzMMOG++0thOPkeGMR0DktqB0yuxnJ0vef2V7PmfaPFH1l5pm8kJDlBYzb+eLRaUJHAmmOZRio9xYHd/cgyA/lJfmdibAWeMPlSb+8ij2trW7RgE+xIcmugUVmBedI2NrzIUFEVG2VgWTOpFf+RcTGyeE/QlYXyxcRHtNtRm8aunogaWA1dgjxzTnStSiyMZ7j9O3LSAf5sH0LqyYPzCwAiJUrv4JxNQ0J0Mk3dfDGN9RpPLRXsnvUOk7Dxxzlj9UWF8sO7+1Zg6xJPefajuZ1D9dQDkgjWm/Th2E+x4DimxOLDLUBqTwsk6J753cbCyXlR3t/8QW4UIlZeDkXbQWtUAWf3wXr3SRuP23gi4Vfo75El2wiSxsWNQyOZjGGhXWZ4Tn9aM0CwsxlFabMJnzeAxy4l9LywA4Wwy8tJHNCVuf3vpalStJnY+PgVu63rVeIr0/zemxhgoD9o0CeN4EG75Q7byZYtNmDNcyoOUrZB5wdGzAGiQrn1voPcCPAUN08APOQn39+TK+NhMm5QvOey9bBTOtimWGaqH06U8nUwJdjP7mBXJxuhBBnYtKg7Am6RHg23D35tyv/nbe7SjNrUVUUr8sjCR6kMH29fHMdYotEm6XIXUDI6olTx6M1H4DRQniRLbUPBHWjdI6ZxQKnrX2vn3A0ww3qP/4tYH3CmMR7khRAzg5mnt6/q/na0NoqouQ5T4JY43JynEaCwg5i0ORxqapBnmz9fjpy1r41N8X6EdOJrH5KFmmC+JYTpppspfSlxZA3h/J4oK9TGU/SZa6/FdvHpvGAQNc90bmCAblU1Xp53ldZHPiAWCBalz5Sv++c8YTM1at1so6OOI6g5dE793AOTiHpXAl1BwraqXMLAMrYXMi0JobjTHcPaTa9cDOW2iSqYlWDTb8H5PNLPuxbhDrnI6SvZqSFRhw3T8qvrEwHzqHbhnxdSGyOk/Dd9pn9YBgY45T44ksvYdqH+3ooNn5cH6EvyxB86EItJvMFDveaIbkq2j/vERFB9UZ4lwjagF00d1eGiTEwCw6dm8Z4tMJlJwlyySiFsxpLf0FzA3MtJ/CXItqyql4dPB4rIyGYUG42wnGl1AxVrOJxvffSQNQeAWL85qFYt2gZAfjacLH6caYMydLXNzO6N/jRzxF2TZoEhXNJSHvOMyL7lTtUxP6CbX6zoBuNNE9weQREh/X7Kcjj1AmDdEFs6nqVVBkR0nk2VMnh8TKUnH2qRX385dUVTAXe00zNandkXp0N5qcIYMg0M1QIXC+qQpKjWO2Ry3T4r+v1Xf/BYH/qFPCNoChyxslAVYVxL9rDimMDtY7zv9fyOyb6Yym+/WvgCknfypoTsHyKP81ExIY+jN4KooOXe/VhmgXHItX5rhtZAmDNFTfhLUkUpqSwi4BtOhhHyVXpfi27Fzff+pULOFt8olQIAhFfSCnrRTAtUJ5FQJTC4TbKVQi8V116p0FgfIl0TuHn5QBUpWs1gAsR3THGW+kbRsqJ4yXK9XO+MBb6Q03uX/CkC/BIVRw8nSxo2meAyqj4mRZiWYTG1n0E6TCAaswSHdMCpbieH0Ed32f+XRB6QtdASIoZTfufdT8sXS8Z8Q3WyiUTelmEUeAcHdopejWnly1m030a5x6rwTvoH8fodYMvFNvBac9d4Qj+X4JQxzPPVcLpjRl8t0VDLpeq3ICeRqDZ4snVsfmdLgD0xzIB9wL2wMDR/L8ijCLnicSlwzEUVxIpRGfG+cEj3lRvY+7xtXVhPJafHO29P1buJZ9Qh/kub0/XKZShBTEqvC2MvN+5srSF0K1tz8ep6BXUmI6ywYF7wn8Gc7b/9YfzxKUPEAJWN1oXu6+7cOwqfl6mMxsq0xBG/GTd/5HPQiv1Y96hnErfiJ0Ds/7el2rE6pmB3lcGKzGi1zok47DvTLtsnzQlCArnyVCpPkR06nc5fhVg8xNYsR6XtSOIt/TdpSvE5p86ZALaoNuwM7wQ6VExphjGCj2m2qYgEmsgqcpu0ejfX/23c2oOjCAJc0v4S4O15W5evPg3yIzjk3wuAcbGFn5H0rvBpuW8S9xh4+e7gVCT39Cfk+5xyHS1giNWxVwMNqjJemnfy4Y78XQuJu0LfFzcgO4si0bmFE6m3vaB9PWjOyUcxwkQ5y03aY09j0eXmWoCVwigBrLL0TgMErQK/m9m2X+2UHI9/TehuwEPdHJass29U4mr/3r0QAkR156+k8vtGnvFoCr6hWP7SW5/n50wlLyV0Rn1r53OBdKcTPTPmHGaIZ/XqtEijd/kRLpigcmWD3PdDMsKNcDhl+5GkYOv270cJOo995F/jvoVDFXZ8tqcwpgmrAEwMNouZk3tocwrGyhvxrAcnRKMhHIUBbaYIqJsRAzjBftYhb/tAD66rLLCXyP8wLiG5tAU5d3LKhabcfG09ndwqkCjZ8+LKoVHrHSbN7U2aIA1Kp/YfiAbm1p8c5dQFMft+E2DPBvvIl9HpIRitlFanulNeOffZQ3PV/rptv5vGo+nPwtEYw8bD7h4HMYDerrjeNJmMAJeOy10T9LzxVZGSKMaVo1oB8tx70YM44zYqApCTr6+fJJFUCmHzpF6/FUlJqpHkj0pUvauJGZakUxnl8VM9alas9EQvomnGdrNxjjqdhbuxuuJgsPhEgsVFXsALOrn7+a6r9yqzfVDTs3otidnPslq76UzqjTznT6ChxP5HpbUi2xBzkFCCBCY31vHlrW84xz/KH7YedXA7Yj8xo55juu4WVSuS0d6lT49DN0lkisD3nUZgDO408AQFnAIV2Oo/8xvsHs3o4hCmpaOyGbxMspsefXNVFmHCRQDQt5wPejiofkpKHvGq49HCjAPyrs05x9eb8d6kS7q4aO8FjNLaNF61Tm3vQ7tvviC3yUEOKHWcxnDoXF9RQT0jdFXmF+f28bEJZg/noFulLMoCbF4qdB6S0lKrZu/wfM7uw3kCkp4e+kErP34H1sh+WVyuDliTnaEZ6Wj1uWJFPh1y22CExhgJI9yvJk1jmq6bd2DLjEnP2KlUp9uE5O9+xT45tIaDnORxdIe1Hxn43OSG89AeLsOHSxcAdYmKwJu1/KhnUgR3KGGZHLUfoNh/VPdGSJcZL2/ruDKmPirEDs5cEHtrVM+LEYBhqDIhuzP0AjKA6tN2XVmVOG6TZc1SLHSQqrzF3iDXzW9FZNcAq5n+vhGQF0mmMmgYpzeP+5la5i3wIomYmORzde4JKIEH4k4idCxuj1uS85JIyJf2ros6oCu6QZ/GdbbcNlimWf5+2Gkk0ZYLdGBcwBaNiJQ9y8z0VAwdj3x1XVcaWORT2poS5D6EqzVdebhHBlbEnIzsP5ZSnwAQVUwFEVkY8SSGcFtoOoMT289w3MiO3ZzNCog1ojhmkVmssdWBiBeo1JpoEk1hxp+hYcd8T+gCyfWwVE4c+nqsvK5FTjMXhUTT0Fg/erAger7L7TwN6qKkpSbvCF1/QY87AWN6/ogvhO5N1ZtrizEcVFLtzPA+UOIq6lwIv4S24TCijggYEkg/JcESql5A/C39AvBJcTkwlVneCLlbzkn26+Imt3MFyTsPPFTrxoOjpz7CPRk+7N37IhqIenYbGQHgZ6ajtGthoGvB5pHvf0AjW/fc1zLI9Gu6zSuVPv7HR5rr092iFQ2h2bTAupDIhMjhUWGZ8GX95EyV2eUBNLPfFU85RzF85QXgvLeuTyzcqwj+BYB9jG5qhQfxidXTVLjdLpAi09ldvfsw3UkG+pV9b4VDOvaPF2KKbcP4gYiliHC1cdpzDkywSonPIuo84OsI0PpURADmt+J3B54aqS3go/Kdis8kmrxAZFwD1MHauov7l8tCzl7dDY3vjJJ92zaPwhjdOHriOqeY3/QkX3EK5+iP4eVRlxD/O0XgKwZjRER2SeaddublgRIgbW+RK9kV9a2d+58xt+3oByNcPoAm0PLvYnwpzJNX0/hBxKytEKW2LKfCUkqiKpW+pbe8Bibfjl2sZkUQlWf9jQYcfzrmnhAfZ729jHemNxCd6wtJDv/MUfgVr/7Trc4bck+py63WiOWvZaagjezRForClgkaMcDsDb6cUGeDe4Pu7VYdm9mpvx/1bXsrLWXgZWBB+2JnRsZgvgbhwOs2tRMVZH+niw/8IX8EMWmQc0AIcQoLG7Yx9LQeaoY8TUiro2bLzVhIxm89XrHpuPJ8Q9cEV2uvSoHG4DIy0GS338C2/zl6c0zzMreK4w8AHINdcgGbYOUWQckEB6zdvOef2Uuw6bS/N/SkCC85hWR3cyJuMeuDXB9QFBPa0Bg5KzxNKJFcK9UkMPN5wmBi7ibbelubI2QS/sD6PB6PnA7QICmPFK4+vG6IMq653vZQ1tMpn7H3boeXQbjo9Ur4S2BIIJylazxSSY77pmy8d88WK4V9V35udMFSfjT5dxebU/jwKyvdDFVMFwijVqr0AoFFk0cpVMcy9uvy8TCb4S8yD2b6WPmVaSKSwvbLPxZxNiY5lS2Ma0IeAxSIhsE3mxPxjwJtz/7pOhh3SsMs+kbgwt6vIeUPC6lWgJu7z93WJ6s9BICpjYl/8sghOiGGfOhNVXqAyCaWJ3OGiTxEAO/zZ5HB1IBF8cOpX1CWPB3lNfyD+RdWXlD9uHIZi8JcoW02rgAZKErOMJZk2uT5lIsZdxHiHofcWWRgh/8XP8LqA14PuiVy6jjJc9CVJIBvS+CDAIV1q6I9QkuBuaemJSyhb4BEkBkVAOpyv6hturjcp6XcVXdRpFbf6SxXpzs51abkRijxdpIwkPxKrGEwWXeTWLji0HDTNTtsYcJ/mtyvQxt9HP1enbzdAhzeQcmS4z2j8dXZfjdSC1hwHHCWypGJXOo6EDQX7wLWl6iyAfjywPfxx/hH3fbrQbdPsSowgkB/uLqG9z2GPV9IkiSXeb7PZ3DI6UDdJdKqEfBpDYpPNKorxFDTccCHbQ78R0IH/jTGy5PMZttIuGsYy9k2z5MM7rCooF7w81S+K9XZ7ukMNkHr3BPlGlP/+V6RVFJ1IgdoS/4P9CxprqVI2fyMZVdRM0f+/5I0NQTx09srtVFj+4vbfNEjDrRMk8YlHcbdKH5hIq7YhXwbt/rGVUmiNDgvwtvwRQ/LwKuCS7YpxhW13pyFuuNzWUG9Nvlxk8Uv/jeJv9cLyXTtKTIG/P8Yw9nKGwG8YETMcpS2DTL9nTT9ipmpJs2qR5cesV6qMsfvMLFC1dFfoKzifQnBfZClqzp0NVMVIyzxtJpvu7iISdJbjo1hlzgUhtcAtk9Sunp4CGXuXbjby37EM6ryLG9e5lEUJgd4j4Ls7/ULJaoOMDlGHhaScSWlYhDtQ38+cfjjShf84qMcCwnQ8SaB/x/mcJURsTtRUqxT0AM5Doy9FZultw2X5dbtZGAYb+wjfCvRTh1eKPR9UEO13mLGLJAS6ldDljkSkQfAm4Kajk5jzX0JlP+yGTnW8UJRCXpkG6TJ/FFKlBVxx/uGVmVPC0/TejGAMqGN9qHq7xCumNAVQ8teHXvIYyJL/RcrYss+63QvqGMefgAf9czDsnN3/OAArR8eMpJ6lZXhH2EGVj661iB98mMFyd2AGlTUMQcLW1AkclFKkLkACKTYW5833RfmUuNRUjSw7phdi3ZVpdHXvqJXA/3KNtxdmbQaEwJ7oWBvSfcbuK0Sk2Co0dB58V9Fj5f5i7kHp9BmAJXQusC2O2o8UNvE77akmogsR5tOcn74VFKNhVmsKCt+sAJmCwVXgcac6k5HhqetxmyCF1PvYe/TM2hzoLWV5nzEhiIrWwOjW0MfGmB2Q41NQqb85bcRhNJYgXjQnQ19/daxy2ieO3BYbocRU0pAFW8Cdnp/APGFyrlqIunyRajSfxjCvep9ZQqy8VC3fUXp0hrpGLS7AMOMCXCWhlMqxoYMHueG7fiSa4yJK4mKMywDkNT8v+6p/f6Rj3KBUMfyVqDClCe8vAKqr/TyK4v19FaEeoz1jx7+Fm8Lh+UzDaS68GHS1LnG+e7XFRc8tQEobY9pDZSIJD/1lvwAQe/vZZl7jazeafG4w0OL5S+OQZi3PNJaZAztypjUDZAFoI2G6qJzhH7H/7PWHde4TwpWY3pOT2R2HKQLXHUe1Nt71jykNQyshvAwUfB2/vmwdpr+g76sLzEs/1FNGj5jKjHfyAIIoi3moB1/izK6uTh/IiZLULLn9NAwVw/RNhr8OqXaVlvsi5f67J/zNtWlPlV6eQBs/2TK4105AWayQDqDssn8eQcHkpghsaFkwQKIP2HxS2hoiV1GRw/kEMyZj14OscGbfmB7uMrIlD+tCJtbPqrNJI9NMYVGME3vL7dLKEK2sWu3UmF+/9G1z7OzBL34qXhaSGxl3gP7obwxIvhOTgQGs8kf/jT9qh7nB4lBdzkMPScLm8xPoFUzZDmdw+G/eb+ba9Ej9FjHQtHxAAO9lgMS2iBGEWEthBl/2pbEaZ78Bt1pPkz52PtIJCPDbAsSrWfKLKIP8X83cYjb5fsPBNeWiGHQEwPo7250urSkkiE6/CZqA/hcfxzjmX6e7eKIWkMX6iwSDh01z9HvreMBzGEwWjhlFIoJ7bpbbGWJvzb+ssjg7wfsDrknuDA+e1PDgXF1+hXbAvj8i0AlPhPHIbao4XA0EAfY8sPfp74/Mue7BobCAUb2x54yEyI6TwqTJXB9IqKy78XrAzQ//iJ3UnRkD4CzTC86mqvjQrM6v5jykz3MO85YMzsABm6IFu+9yiHFv1S5tKfIDl9U9RwJCu4Y89wAq/gznVcVhMjMpsQLPy35OQS854s48nfDrn+ILHHxiNHxGJVDIRL7Dw12CeOodJr2V77rBlTYz23z0DfSZ1rHACdIXU52y5C+CYMm2YOFgBTXxGXl7U4MNvmKXoPTpAl4kc9ieD8TvK5swxd/OCBqFx1v6dX14XuP0G2FMQTl7rCMigGFsBoe4noQmb8koT6JhAlDxMT7gdKL+KuowFbE7RGQcAo6l78FpDefCs0O8KTK8Oq3Ebwo3i6RtVl4xOPKBn9lysaueULcJZTURO/Pjy5ILZyWdr4igOx20IwQIvLd85if71Ry8GjBO4LpmWxMckhUxfwg1n6TR6NQ9gQirWvlHkybqSd8d3ionHzRx1Uw3DEV4FKcb6C6TSuoFpjIg4SxpbNU4gVoEoaIxZJpQYOk1Kp78MLC+tb11eUPFgt+9DPX7oNOiRYTfdOh8KgFJBBUtQ1vw9hEuJ28wedJ52a2pGGhfnRR/T6J/I5TDu+dvU5J/dCsem4ikrplGeJXxZHEtEvoGiFeDl0x4yB9sDqofAjMU2pOIyBHVwbMuIuXu3dWM4NGSl3v8tx9ilJwDdLmzR7nahaUnYeDgUw7povrGVgpVf3cY7BhkDd7C7YsBwQGHDkoGt8+lJY94VQJWhS7vfB6TYUC4jdNODJqIl3fMy94vu80qf1TQw888eIG4s9D/h+UOBacVSRXuPOIAeYqBbwTiDZFoYa3kL0Ddv/HHNdYFddLTFajhWb0jh7R6olNX1TAfZ8MDhiLqrCYE3hLHh+E5UWPFJeSY2Vv2GBR1pTCB/wrTZfuaM/6XJqz09YZhVARpikkJiomRK8h9Ivf+DWiFhoW8e9vORMsEV4nQ8rvVbqszhnzh6eSVE45Lldg9cKupM/hazZTshYKUUydAAqbU9aYpUl/g8LEjqm1kzsTaDrE+bmCR/jtb3jEIXsbyBaL2rTQT55RlQ3KnFRMUpm+Apvsk9ehWC3tT6m3+3dz1f1SKzgy+gHsoh0S6f+bPPe5VQJuqdYF4U5Ap/m3tflojApLqXU1P7TBeYsc0dqgfYlFpkEVusW8lwGR+nL4BZjcNlp2poLxj4RlSo8A/VEcznLO9NK5lrkw5LeAD2nqZ5MnA/y9aMFdgIZMlT8RLw05lZjKi1PVrkhKZMEyZ5wWa9Vl+74RpmnE1WdJg8qHQ1/H7lMSgW5gQYS45M2IcANXAJk5ChTtlt052I07XyPPY0SfvTXPIjULHgqXyaxTLR22Ih9+UY7XOXCs2lwrb51IZ3sRKInMcUTP978VlF6gCL4GuHND12zII+hla9ZdCm1QfYoh3mbsYF2H6u9t2ZN5heY+kn2Y/CE4pMRdu9X3TaPtByAp2fNAovaks/6+09iamcxINxay8m3cTd91suLRsob92iUUI6PwB/lsXox03QK90shBGPAnxRDcCpzzqjw+tfkVtVSG47he9+Zh3vROYp3PlnjelCq7DwRQKP1UyiKXWiIpnpu6D+KALbpT9WDaoCkLYJOY0WUH+cMm5uyNTM1DUyTR+qoSMkzR3A7LIr5xvX8bdvcJ/N4792n9K4VmE4n9RnoEQ9Yrvexo/Vvajep5hq/P2RQmqP+dhQfn4x54/hgbiB5TOkaiezL6lvjEA5U96syRTuerSXmwOWU0j1Qswu6GZ1bwil6sNfkMDHNQyrjY7cBDMUCvC9cGw1mdn/YiI8DmBpiq5oIvESBSH2J6x+othyRmXX6rTcmKn8MZUAnCOPBeamKvn7AomQwUMJMljVkGC3MNMXJvufons5P9FGEmutQGLzg37MkwV9y4WQiX/UXrbgXTBJkSLQCUH+K9PKegfLRIVSNKXot4tx9zcGOotot05/Oh4ISFK/5rYvs3Z8quI948T4gIFfs1qDXJpNkKGYlnZyunSz950Gl0LhgLXRbBYaOJRcUxly/57MtROydoSi0yIdMLVJS5UYvLQG71Xl566GGg+Ni5Z2NoUrUPVpPAROBlS2CAY36Iqcsm46ge71ZZS77QqKccJmJtrV5ndhPoYuKMiDr4JYoHDQhW/s55leB+whDTBmn/0rjiYq7a9t0H9swtsrgCKmmv6WFRnz6nBQ3UhoLOOL5EkhPDIU+yrEH3C9wzSctmHvjF18KFY+sKzeVWtibNLf1ipjsoAk/leDqk1BLmyeBx+Va+DoKVxIgyAknB6NuDBxqKp1q6XOYABRpXz9mZjkOm9oONaLthr+ucppRcSKkNghdDnZGgnscLwcVXtLI0LQrsZbjueDJPqqSvOUsORLgMv05pBWVtsrWPyrUywCb/mkuONBsUC65aa12KxG87/CvKwcGeuRFC0SIwWbms77008uJU4q5HKNaHgM5uzgNBjz2QIXadjI9OjX5/UY+WiL0xySCE5vIEDoNY4iQkuzzE0Y/kp2OO7WiFNT92C28ffPsIqx9mzlUzWOetETiPJiJ/QCyXQB5YM/XBUABjfzLwEbTkdG0/XUmO0L4PdxgGjbAO1aI6kjcJmeqdz5jGIk26ylabYuqGXYFJQTZyGEVKJrCaH4abod8/v+2aZJ4v5GOQDZ0Qa2ihoE8/RfkLOju79dn0m+TE6FABJhJu9dzUXLuY1JMRrahMzaXxf8g/LSlf2CqwrdqApYzfLCYY5Oyaa/QZtIACi0Ic8PRTOfPUY+SbNnlLlG3wjdJ9teCJbmEjeYfYewcPSAdaleFnqTCSkrOFFjUtKasKx3rlcOrk1r2nxRl9DZYB+YiFctJ/19nyFmXvldHMhnCIekGe85ncTs2pP1zLycH0vCyi2DVS1SIf7Rg8gCNE3u9B2caegY/3932v2k7O6ODdJ240bQrodj5DGS0qxO+NZAocWFb/6RTKiU88wcrAN6kDvoCNy3SgboJ2C3WLHASIQ2j80/7ruAtBlWVNDBjTcwFbwnnm0ylxuYbZB3v18KDTZM0q43pM3JGFxcZYmjNkEwP1AROTrQQfT7xGkXPc0UeDLz1kQ9dUr3D/b4vYhaUPcY0ILzvJoQmXK7jfUdWycEWh5JF1XrJAeHwQer7YEL0k+6giqx69Nd8lKZf1uALzL5phWCNlH8K48v99TJa3BP/xEyMjp3mVGYntV3lDlOigV3DzpJYuzwiBQ9I2qHHF0zdrmrB60Wtd8ps/TGsQLIGdKCYnCT8tsn2d7sc9VPpAIBOn3iUXYYN1tGRvRHCahfDSpSH/ZObjJwb+Kt1d02h+exXX6BqL7RTMZdBsdoSNhmKVSSIr27gvCU2+FY79RwjUZQiWCanhZwuVwy3QOyJ6Rp6KZPWrlrnse3YlzXFBky47RrdRUnyUSExDPhyGfB1DzGwJfzu/tFuIXEG7OwkwUCB+MXwwfSB1HXcK4rO7SepLEvBOGGjCU1B8cg0WjOMVdtYLjNpEuOwILgoy7rMsL+zmsHDXyU8Y9EZ6awx9wAW2FFwX11Yz/cyr5CrRYUSGT8i6Ywg7UHmfqtNyXJ32dj77R3Z9MICJrZGI7eL8Ha4iYjN6YsO+RiPRdOXjYbuB8Rq6yq/bV1A8xlTEHzKBAUav8EP0ml4PLoaqdheYBVkBx1y5d+Lhu5/vukNuVh6d5K5asLs8kHqxxpLMvs2lpmdW0mxt7LrTPMoonVK9CLDqMj9Ixuv/IZUt+0BddMNwT+uzAf5x1kg7CbBhSdTQxdGrneoXktPJerpwK3ufBVY3OGW0n/EMMHZA0FMOyTIa1bnbvJLQoJiWggbH3k4YoywN8NS/tE9HSDpAI98Z4/5Bs+ZgJHNdNt3Ok5wdrl/mWG+iqvz5eETIb6UgSzEEMBaNyox4c+WQKQ3kUM1ZPwhu7Xs7LS/vz6pnisFHGhNNTzOTB9LO0Ccnvc894UY8dZQx/K5i1KYxEJzou9gm9nWVSNFOEg0riqXND2ACIpDncxHLnDZZ61B1sUez1/VHt22qamP8A/FJRXlDeRWjnN28k71JQFVovMQzCP0jf87uWoMCLWseAcihsiAX+QD6y21TJ5aGEx1kxkuLXG/YrEceocG60M78/nU0RvUsf+F9ajbziBA2U+Ywl64XMiqBw19blTFZswZjx7J2OTq1hKVolbu1qcuL6FqGkliIa1jmiSt920UTqZ5ABCUhS+e9driu/twb4G4FmAg3oGFG4etEVC8vAIb3iOUHNSlhTAdE00uj31hhVrIkREA7RkVi3dEgPUUrp3kBD+VipGppXysmc3n+YL1DbPbVGAcVcPGIyQRMPF/MpY4HysTS0ZDY0aKUlR9j1wWcceaDhlodmHIvyNswja7P+pdH/b7ulM3HycW7OtRVFw4YJpeK4vjc8phM51xcnfNCIs7E8FDEbGTPMwhmVKc2p4QpMsbiuLI9tbYfx/APcG7pLfFaOqdIxuD5jD3zzqgWjleqnR31Ts6DATdQcRTksoTJ7Mb2tLX1BLpibdi3rWHs8LAQDPu78WgPq8tC8ETJtDxxCrh88QkW2GyBasWheSsUKLuu+f4n55icMPePUsnzRU3mCXPG5XCryxdGPa3Aapu9+xfcHXKeMbP7rnWKFKPsEe8UMkL9KrPTKjiaOLaxDgs+Ar8KE+aetTKsesr+ZL8Lgv45IwQSyxN/LALGR90eSjUTdMDrIPb4pAo7dKsyjadPYVTaqdDWSt9WjEpImq9RjJDxPzwg7MkfkDEjy+0fnlJCic4RYlyYMvi3sS5Mg0wnpmwCvKg0DS9vrY4PQFPvZ9RG5fj/4E0xuleIaWry+f3hBfD2dF5sOqzyxGjsgK2n8pz0UhJWeTdzybaR55yiVeU54XhKrR7SbKqe+Db+qIBC4wtd22mU9KjdYzvalliASXBON5CUNqk5M0iO28esecglwOhtZCe+/Qy5R6aEZjofWF9xb+IvVBgSLWmUTRiy7t/MpKpS8AYe8PDNuzmso5DAugw/xtujF/aJoq7zO7XU+/mvpzcQvdXmvjw5PC2ixj2EeoaIgsm7M0ub0fCwKc/Y6PPTeT0wZBFsDKwwk/hdqVSQI2nsuQgmNpjnoTOdrDo9kwLaHlHTbLi+MDVWsZDLM62kiHefhfoxPKabiV/14cR6gZWnpk0zXr/dGY8dJxrpI6uymq7zCLj4D7OUVTwCyMt4CD3TQwm6uFb9HoJjJST+7VEHR2QzE/QUfUcwNqR7dRG7siHAxNSSWBnciaBRi6sRiw3hABrvrYlOb3ILK1tckSCUOaPUic7NQi9vnYuTkmKom9IANXUfwZxajUONo4rjb7DDpmu2XduWq8S+1R4boBE1QMjfl408O6rLDonCJNH92At33wmuq69xqjIbdGzEc5Azmt3tFyqboywZhz9yrnMh1HCH905MkKyy4CmPESlOKf57Py6kW4hKhZxqXQ2dSms0CoJy6h/ZK7EEOqTvy6PUGlVfgoBWwzYqhYwTHBs9Jqcpv9jmyi7OA92QUT9Nb1/5W7eOF9h6LU6Kb+52VQhNvkEf41mDKxbrlAQs1MDy4TKArnpkIIfAg7JjosgbyMgFNvn8FRbgCxx82rQX3agRha3BQxFttg/lpjYzdN4bqYkyyLIVMrF9WL/RApt8Dxwm3LIeknwMGnwBbBG4U8KOGUwsPHKt1OtFmrv2conHBausEIRs9znwvlTFdwm4BdW1ugTWsGdBwvwBq+TiYc3s7FhlD7lzJ59xBBGl/oSdx8BH+hcwKdH4kiw4BXV+NwX5V7Tbaz5Hu5NsW73pHmjcx6LsjCrQEN/0x3tQVIZ6LkPNeOa5FAjOnhSgc5GSK2oZQwAweh+D7PQb82H0Yfor9E+9UmJpE36IfWUleeuelW5kdiKURdkpKL7JJS51l5dHG6hOifR+UX8KX13n1i6joxeC8jKaMcF9w0d0mOx7kjHuRzSO5foEB8YPK7OVcApHHvN4gCBRYwxWvq6I9MuUZBiwZ5KjcO2TVhi0G6XmL8buRG8XnfPZ7YYnryyj5uUFWK7OwvT3a1n+Y7lDvZyYkNsuHR20VIY1ZBUAxTLYNVnXq7RR8Ln1Xuhs4NEp5v6OJgOEf07VsYAA6cXJlvhr6n1CbxOpzn0KNwq4qH52Xx00GJkhUdU7Xnsn8b8xnNjuO2/lH7wB5gaHloFqLEbQ0jQe/di2uI17O65u1pFp0+XVEBhlk0Z0HSH86Zl/+uQX5u7NFBvjS61l1GdVKisZxn3phJBgcMpnsAN9YOO3LKRIlLt9X94WHSEE+Ja5cRmU5DC0RvCCUUNx326dRp4SiAviLiMDN1qcMC0DbYmXbGoJBHYFLWMVvLLAEuWLsfQRrHwIrAdLUqLVS00XuM1QsE4sHFNvSijpWMaLK21no0p0QmYVj0DZAqOkKr0Ky2GwBoxv9hP6VeM0Elzi0wP+t2DrlN08oeTlQvn+ZQrBK82WVhwOR/0KMMIr6PKsVSu4CQyOurUHu2Byb+sqY4/mYnCfegpAuOxpUO8wceRZq4eB+CVIxPJhF1YvhQN+RY9NClRQjgEA/DIQjbzYUXHV4ovKmaqs72yNYyNyFEAPD65OKg1r7j5APNAwaE3CX4JRix8WPIC4aNIYI2witqwfRdU7YIIYU9Xf6bOkuXb0seFwaxwkCC4qXuSSwMqAbUm+/76ohZp5PeCcebjQEFMugBjqSadoyxTkbiiFJFdKGnSMzIFWNx3Kh0Fmj6lYnwLm5O4508PlOn7k70vLWb9+XmG7D69Q7CZVcNr86u0Rel0ydEjHcvM6u6FPzCt1UR9/bRlz0FHJxQleEvpMy3HEcEG+3m+B/MESluquCp/KhRE41e4ON/DWtEQcCgOzTCkEGUSRwq8DS+w/1Tvnb/aBWpK+4qb+sWSL6wBXbFXvj7M7Hlq6amsJFDuZxyjAGWJtBpJOT+ZIttQI2e5j6cfHrHQolb4nOOmubof7RUQDywW7dXBjKF3gYCuIlZ7TEHfJUWv2w486X7jopeMppfYskdo+DabCKFMVMs8vqgcLZFdYDL+0JirkUX+rGuLbeg/RsKj5Gk0EWK8Md2ji4BiYG1EHk1IcRsce61YVHBOxS9hk8NA+i0i7OmcYNfVlmRHNdLfAM9VIeza0OZ9AyRQphH+hCgU3eZlqFB6nskZp82y+Ua/SvxNls0ccmnnIvCsLsMN4HjSarC2+eLFo4S9ZzYsETH8DxbGo3K+T6S7PHjuz5OXdqI8YgFmhfHGlxaIN1l9gvhkdNPGtceuPWxh+5WmXjkd1EoLYiGTP6xPiNXXnS0V5oVcU8BzXCm6D5TKa6Z8p3DtwtuuH4FuDF3ZnRsei2z/CiVRRdxq8mO4PBMLZrE5KtUx7YxZdnuChTM/4EjL9HoOEmwQEuKvqoEfFkFH6TgipwQZS9u4qc9nsNd0sjaoE70skiW1f0jooPPvAUE6hwi3fsbkocL16vy1E+a3332nVZ0XyHy6I1Ytg5/2A2ia+e3j2LnHK0w/VNG4G5BvlLQbZdSf/PhrbaO9KmFngkm7053V17SmFGiW+Xv5/JixTnSDPspq0LXKvhSovs4YVJw7h8wIY9K4BLiGE5HCMgoRb6GpTx9h7B/VyiXa2QxJD/NyX8IApV9d5dVdt7gO36e79gZwyNul5I4+c8s2CHJWRy8oAGQk9hUkiGNeyo6cESqbW4eRGfTh+R8Go7dkdb1qLi+g/0FF/8pFOjMKALZe3nrAeWBcnI1mC1OduBY/xO77g73THQUy/AmccUInrseg+dBjcdjLhrgHnvzWrY2IQQTxfkyhQ+reEnXzzV6wu2n5wzq14ZzxIVsqhYyVZ96+BjQJ0noY40BwU1wBJuW6Zx6ePwLfmU9vwPp1PSAEzXeKmFMyjiJ4Xp4OLqRijFim6L3P3NIpq6DiowKofoiRKlk2ZvBX5QlgTFhU3n0M/JUdMnKBREGHKB7ZDN5Y9EuTH1IoeSWxzaNnpzioJ4y+8SeZKQ+IeakNnvdfGgXqOBkTtJgGCL+QvGdLZHNAln3iO890jo+TAGjFNk1pEXYXZqzQzz4MCE49YPmWsxTX29yMC7wGTQ/k8q/IIU+nHSJQjqkuIdW+yAk1BdxzBNJD4jCSr4OLu4qgVIVJwSBP2Q2bazKUIOz8V8qi8I11UJkVUvP+gC/ZiFKj8nXjEukc9yvejjLPtkWm+jwuOXkFR3k3TndBm6ynD66uz0UA0ypLupP7Bx3cWEUwkoyY1/FN+Kyvb6hM9U/cqpIQXEwGVrF4Tejfjok9iyWOi8WJQHJCeI0CJILZ/Oadydo8RTzY+9YkzzK77csAVYHmxdF+jrkyGcqk/BYT9AnGf1H2wltIy3QX9i32NnOHgyU+uJZzr+BOCMdopscsq84GnMJKaJ/qAaoOgHIQotjDhB6uVkyv42kIDwUPSQdSlZyF0uy86tOBEVg0xgEvrsHWWKu72FVRjHdeIhRrrET3L08BkFXAjnciIIG8OYRBHFA4e6Vqi0hOS7gl5IvKxfZjtiGy5rso98zbRGJiWMcPQBPIHY3skjCklm07lw1rHSU+6rZTlI2dRgBfFxv9jSKFi4Y4tByEurq36zwcV3fVQQXV6ifzHvCPcB9B++Lz5dGB2c/ZFoCjyWlRaJVFQEATBG33Q5SMld3XXVjvzR+ZP61abBP/rEIhgX7tUJQoxmhxWb9O6TsQjcQiOF2Ei2YUh5R9973EKsuQlu+25B6ICXThHKIx3tapBALP6LTJ9Mm3au+SqkremXyXX4224/RbDfNJxDfp+jx6SLoIionSiUkaR/N/N1sAafIHUBneaCfPpRHlAxxVRlTbjnBL6zWXS8yZgoNb9P47yw78sS7ggttGiKvL2zaE/jW7FUVA/xkQD+DRrQ6E9z2s3X4Xl6KYOWuWg29FaaClCW+MTLs6FQM9Prfh0cEqwDWy7ce4GgHXHoc+oKZoWrNW9ex2J2l1CzYAMjXZxypooYjBEzjfhWFYQ0JvRgAL8f4JaBEx5IHPPIPaPMauVfLl7e/hd2b6BogVdkJg+/uqNtuqwiOlcK9+cXgHqAKR1pk1fF12kj8plet/V2Q0s3jE4UkJ0DvEfOrRrBHTgB6u6jcycdoQBgwaKT/YPPZbtLlm06staiNwRhbf9KkucBi918tYHpx1/djH/vUA2F0kf0l9aStHH2tx4L2YxnbxTZvjPpKBzz0l5AcbW/n6+oneCxLvKtoxdsFWQgRHoFIBYL/Z9CAHAMvACft1uPMV9XB44Fev0Nzh1lHNT8jpiUVIh6RJ/TcKkYFVmtyDqt76SU1RtP8psTitZb9Sbb6ZbtKhW8IQmrvBut6NTafWWm2e+QCWFNt18O1IAkPoCOn4UCCxkDtT7dO+YLRGBAFWsDK48+MTUwHOYKPeByn4BsOAsV0c1+S2H14n0kDt7VwAHvGiWmJvHcT1xvpN1uRFs+oO50J4v+xBl2bolc8r3LSw5NtFno/cvfLsybhisPzo19AavXRMwkn3BCRRt2I0DjDtuRYspX6PLpPOywCrU/7kqfD6Eektq1h0VvdbXGLHH01s+1t0uHqoAeHtYWgNLlytOt3sCJaPyRXti5Xeam9t2chiucWuGJ8xJ1VsZt2rJny2milqCIxkU2VCkiT1PB2YYJ0E1oo1WwCT3VZVJRajtcVgqODAZiswvjDlCMW03b1nhXBKzZIpohuSMxq2QAH7jnUDIs9/Mm90Oq37ExmRyvCbG+HBjHnJ5Y95oK2KoZ0mlJMpVqJjvQWT8gTxUIpwmflTnuEHMdW/70rhNFuM3vw5CL9WfThaXumVjiadLn3YIzpjSvRZAOwcpHmpb8jE5UZfzMnqEG5sYSZYs3QZVsmY9lQkxWox4KuYLNEA1fQENa3uzH3HNKjIa/S2gUumoUdH+xLiTjXBB/1AP2tM3RemRemiA1qJE03BMjEv9C1X6W5mQ0+rlb1Y46hCkMcQ+Px+oWop2MMSNHNWzJFSjSI/P9yF0YsFkvlfal2Iq14GZSUHoSwEE3KQ4GzBQzL8EVJgCxcRbX/VWYYprbP34c7Beo70hk7JyS7uMhGkgPu1ad7nBAvh01ZqNm00nqXUbSj6d9ykrjwHRr3TPTt4ChvuJYwf02KmJIWV8DoVH92Ei7N4SanbrAhnFqz54OlJqX/Yzs65GbrMZtYnsMK8akhAYn9Ow9k8MdWLC+hR68T8Ll+xhpZMKvQl+biVS7hYYt/83cG0+o2bHAeChzg4tWcCfO/2zUdtWPzzhoEURrjH3id77p946ID2PzQNCyF2UJH7KHLqQOmSPiN2htqfQBCk4dsDBLEN3YhjMujMpqEJ7JN2iCYZqcGCSOZfI1xDSZPXfurlW7zpB1Uvn5/Uwqa3aj6TihNQ+pzdEQuVj2W+yRF9fYH2n2Ak6MNd3UNDltfb84bU7UvBV3mYlm+24IZ+chocLIHxSHC2pbBBKbE7Pjzogogke6PkwG9QfVYhz+vFJoQllHa7fiN3B94T62KeFgDRDfAWtPmbARys5XPxvYBqcd8WOzhqD+lwmZrxEoEooUNAQjQPJSyWvOyCfpCpq69aOqMJZlJkPIINq1o41RDAPW3WB7rq0JhIpAH2KIJhiBTcBeKp4ViqtFmpGk8Hr5jHwUhZTnR+Y0w5/PoYEGo+rdqSiYdeQxJoDAtxpXkwb7SrKHZPIPdPu7LtTr8uW+ctzMuY/MIxiljI9yF7Q5tv6PhgYHc1SWEocxL/h6L5Mn7buIv1B3BgY2BTJm6BEHZhv1/Ng23Y7gTSJfecJeSSCbJS9OUSkLuPRECsmier7PKa+iaN12QK9KGbG7b+cn6cCA2XTmW7T1Ih0jJDkHhi6myVzOFssVQMwDboY4SyFlrfGo5+ESE7AvvJBir80gLpYyDxoAIIdUSAcEfz7PgZG4SEsJsjdpJZcucuiPyWgBA4WnsU50xZKjfKXpVj97sopRdVaRcWs+LmurJRC3i0B8Z5v6W8QXahOipZ8snIugrNA1cN0AuvW8n7Mm6DatbLiPtlZQXoQBXF5nen8SBFQfPH/nGoFwaQSElTDRKLHobySsZzT+sWqz5p9wuZdR+r56DCeLkS7hRjQfAYxUy8PZ4uQl0eCNjl5HFeAgCVO+gJWTlqV342sWhOKGKcV1iIBvuoFs2807LnjGpQUyoHtVfNSa0dfvm9Y88v8RZmJsadEVuhPdOELY+ui+9fjT+jR57HhxDlwmGWIj6xYxFyk6Po1gbVdI2nmyxMyV4t93z/LnaraZuap/nUiRYeNkvMBMbVrpYLtadJbFZIYh9UPrXBiUqCQph+OMQ7y73VHc3HXFIo6M7nq6K/A6lHgKQZzZK4/ZJTBLfE5cx1sWW4XOY/sZRl4VLw9d2YFt6npzEsAjSdUQhN0YwrZWu9p48irPxOPjzRpHJ3TXRU2CiO4dvOksGOoJLxYIxA8zxYaOiXaMUX6yYpCD/C1g/tteFmB34lkncmd2f2ConGUHPrOorHpeSM1ZJYgYp6NFI2ZfAyIFYkiTKFJSGltcdxxbK+DxmEin/TWOgOgaF2notnkx28kTlGKCWwr8eCCCTGnLG/sb2/HtoYi1UoI91rgkPgdMr9gAkxZIZ2W5OkAeutkpoxtfcioFia1ubgiP4trinfss3U5Re0ZXebyEL/MUdUyuQ3A8/+qC1LOah3EVRPLW/4sYoM32NP4nK5mTT7BrPEjVYRf5ia5Xc5Kl6IW1Yt7ThcFLQ8NZm1L5GqEfOndpNvJEkKaqb1asH/YnKyeudifyw7DT1IiMzP4fxuhf29/CbklT8OkZ7gUXJfL8ppetR5O/Moi5GtvQbhpUFqd+9PgppfOysx7PbW4CqAxyLkK7nZuqxFr25mweykSdfSZ8stlo8PaXdopL/FrTugN+pevCxGUOqY97e+urbwCiiKrt39binIVQ3Ale+RYZRA0dc1/naoKlsQhwcMtCt7TDVB1SZ7Ui0gqJclEXCQOh7GYpByo4oX6JKS9zIGkNLkr9OFrQWFuyrxQ8v9NwbguTH4Ma7JLeOXH3unpDxGCzPJ0iVyQ3jlayEc0onVcyWSUPEqIQnfzaymp3I8NYyEvT8+okc9crK/YE/KBcZ2kUDIkcjmuMBoc73fJJpM/vTmNKuA8JlSMbPW98m8raPiNFtwB9V1Q5JnA5WioUowPvLB/ljYdXXtgT8N/J66CvnbMYT3tsOls98Dv+q7cbGsglAypS9YOIIEQmwIQQMC4y+eDgF6aS+dEQ43D1j15/3AKSbCsmDwDW7+I2ZGDrpsrEPhnXm5P2jNwqcvxrK04IiboypD0EJmXdfj7PaTF0ja0RxmGDwXTXub0GEIv1X/KawpwuDOsfJ6kCb+E8vT4oJKVCvLA2OA8iT/ci72Wm9aM+UkCz+N3JnSZ2YKycIcwESs6eKW73/FNc+bUGu6LLnw4U1XK0eG8obfWDqKmnr4QqNwFlPB6ABDvStOWnT5QI2dznVutaIzaF8+2DI2o3ZlOUKu7CMHkv83B0dL+VI23vtZbbZ5WFwagm6XbZL98fxY/+niIchsSVHT73bSf3P1YIG0LszrJScK3S3VFuuaAHw8n0GzTRXxovCcnZMa1/h2HgOuJlNo7fk8hQO7QTw0t/PuZ6pQ70Tiin7PWJFpY1YmA1FWt/bCXILwUocAfOCRC9xOKsrIMShCdBR1FEqs3krwC3wgqt9MD1pGXbeX0lbenrgPvq6AtFWprSjjF45LTh8ko1aGTqZNc3ULFzfh3g+5EmW1vigeZi1W+7DwWg8dbsIiSI4XEkbxmgFyv+qusra4fbMiooo3+el0HHnb4s5LRQ5bvVS9d06RUIQtV7q7Vnr1KAXCzNyQghZjlq560MJYqu1ph+28H6D8JDDNlsgW5801SHj9nfpajT8KXd/CgnputO5oZt7EEYvUpNL5e7zGvSjQsTPc2HI1fQRyGE7sP+m8HTIcFNwC1FPgakwaYpBaY/qZZwQO7j4L3b5Rdy1e5IRSNw4nrLfrEu7sgwALBHTDsdoLIaea2HEYddnEcDxbvDY3sUrzAZZlV23dZaGV2myHdjcjRU++PRNlhSmi/88clzqOqPETiYSxS3Tn0QUoQCJpMpKDsm8UX7ec87GkcMEFEziwQH2r5StpiOehnW8/Kj/MCd/EbnL8EFgA6U7jRY+oDIcY/EFhjEFgdSw27bquCjOfUPA8xzTac0nsc0gN+ZqdDQsxT6FN7sWZGt6BDWPKaKSiJkW6/Y5DBIvhL1TL/ACssqEdmAVZNf4FICd2Zyzq/MQ2kGd4fvostS57aZ4ri4aDwj8AaFBt2wTB96FcaXtYw4dBbx9cp2cxS9aC+bxMU/bHU5TQGNReCuRInmVQEceKnKhs22EqLJ/zT2THKTmWgK3yvuOp+lEhqJ5Rr1Ax2ywW/jannY/3b9rrf4ODCq8vnsa1mrHOTY/aVKwYnhJqkMygCcJCjsNpROMJ+o/jt6HH6t5Pd8vQsKgrsX3d4s6lm+JQ+GdfsSnCMFj+/jTng4wg0InvJKq8gXIjYL+OuP35EIu5D/5/mcTQTMrtGD7m2apWveH7Ei+r6Sa/eLnEyoGePfbhSxsriFJV6bqMOIf3noW+V7FpK72M5qnfR0CKAxcUP6y4TCvMmYWt5IQF1v5YaENz4AvY91m3t+hd7LvL81Y0MR1nfD6PeEflMFk5sp3cfrr19b3hT+VPkMJRL435sR1rKxD3UOhsQPXOTD6Hk8h9x5vyKeEbtx+RorcFdaGwmg1wXROBK4TrbBszS/ptahC64F8kXFcV+0KP3aVfRRWH7BHX25y9fd8CJmao3S36/wfnfpIw4BM/KavHC1tk6ZFICTAeuHI5AXiv75t7ES0eaIqHpNMxBM137vKXh+DrHv7RyJ6x0pjpqCK7XTCpPW6ujxYstYgpJji5qGFaTTWkk4xKP0YxtCq33CvJ6STrbQAqTMscsdy+3mnrwZ78iLe4x6FXG+3LBugali0FN/tI5Fv769/oZ6mRAa0YOGNTf6AskVt6OwOE+NXbRWQBNkun8ICq7nn399yWLWJ4SzwqJsVDKJzbgAzysCUyCMjkuezsGuXVrSjDBI47vZAaKJ12U8RKLwQuY+zCw5xarzZnhLlKBLKD1rUZPpvP3OU6D4M67vVhBnIMvgoYsUBq5jYiJuOIlHnbn0/4iVytOUMjfwBhUS47MR7vjBnY9aHWAAO7pjApqNiXHTdCGXY1TKQMrAllAJP4fc6WwO/ZDDOwmmhBNvJDysRYq2QqIE2GcCL18NsrtIKSyahZegOvAHxSimhlC575CCWggCrIvdvlPi9TwF4v3BM2fkEKrAPmqyFhvTiKWWe95SunGO7nLVgGQ4pDOahD/Kq49/gpB6HIQGVetbOSRT+NoB3T2Rv6/gxZ8PZX0rqoCMCZfMkBqyRkpbyQVtNIeuYIrjwSA5M/q9Zz/77pzNpi6WXpI4rfTDmh5J+e+Adf9BSFv3f2DfI2nli2OtKwCocNedlLFd0lM3PTsxcgmiU9JlJMLKpQPeiPL/i/p2E3X3aWqZuk6NXgwGnBqh77vX8/kie1UaFjUS5DJdpJfQmJUXMFGAuQHaUnlj7jxyMbkrxxlYl0GCYffR1y1Ib9mKraoECEMQFIftsLWEL9H07YjYlFjNPqPtsAVB/3gxt3yWJxZLruS0wbwm51zhA7i1vTOw4iH+b7/DItFbxBP0hu119cmRe0Mj8NMSCueJEEr0vcPiTLF3t2RVtXa5F5gXqr1/OI/ISh6EtRIZCOghHYkDLYTVf3PEeuB9uE5Agebah6cG1svwCv1MTmssVNlbfTeQqxlc/C/t7t4HaVglLe0xcOjYgLbMreeKejAFl/Qzb3FPGKEM0uhpujbbyVtooQtGzh8a05gJt3Kr5GQTZO74uT6wluPixoGt6ojHPOtd0Hv2I9YN70PIn2Az4esCpFQbxoSJ34vPPu6mUvTWC2U4cz28rLOt3qZrkBkYM1ECt3iRtWHLfoBFPrmwxlgyfN4vCCHzItj9qCuZBn7TTNaXVT8NhFn73/IFlhdUi+J1Eopi8QyD+HRKYzf2l/httNe7AtMvQQbasfU3zE6gtOc7LfocrkJkfD3anjGO25fAn9kjGWILniNUbWMGLlFlhpfOn0KvTwMyKZhnHgapIsQys2IFJqt4wkRcFgGP7sYxdHkoyFPYjWSPy3moBNyr1xCx9t1UqE70kSe1GzFFZyi5UGjDymqYrR4v5RgKExj4dGf+/0IfRhWne/0rPJB+sOwaq1OsFLTBcxg8/TrdusIeKp0Z66bFHqCG8kj7BnyLO7OoFca4TOLqiG/P23DXvwZ6RMQfT3L9Ip0vwvNmYGU/pYlWI3OjdVCUH/KCuWQSUo7SKmLRUCGFg3i8o0brBylkaNMAtbTMRIw2qBgFVgQlGsPiRjQQ7pR8lGu4sDTbdTKxNA6tHRnSxOXJcAzBYk2UnFUhkskdqoUgInFgylDezixdjU0NBFIyyL8OtlKFMkkkn4M2bgS51W3DIrAmWSZffKX8NXOivGPdu+sDxtQWK62BdC+fU/QNFLJIjqQpTkPbpcvyk2O77zyfODfTJv7eG/ESRIPJ3ml0tfZlc77xWHF1e9TKkLXZZ9F/Ylu88ePf34cC69KHXaC3svK3M486eNHoGTRxY+r+Gc2Oygp4C2OTugNTCGTwpZ6DfGYXdfn9BKIukNb4/fr/jqTKYPzIG48jvJRZL7BZKc0d2kY4KpkzGno0n8cggTxNDO/MhrlUWybd3PxQdPXEIpoGbW1lmXIdnreAEm3U6IgSsxqNErPIPNZRmlSdwFzK5/uga8JgD2yPemoM3o8gq5onHpjiiKKybKoO/VOfmM02jvmpFuWfvsbQ3Anr1dd9ouYQ4CQYLofvn8vslFpsjusDABaQwWdxOwZQK5fP5sv8mqU3PNnov3xAw/nVBaHUGBZfvx0+f0izw9K/eSaWUswVXh8WbjCN7L3Y6cP2Zr6i5kC9n6YHpnYRqImPMEpIik2eikKOch1ddFXxIXkMra7V21m+axbQ6Igx48vFP99lmDzqLXFb7wI/qGDhO1YGQk65hN9owaLDt+trb5sQFqOF7YiVrygkpzS8INXKnclXvuEQW9ikZnXhgm5gH6FyGLAN8f8Y6mVZsAYdl/azUWgLIY25T6VZkI4V57dT/JI94Iid3EGRF/+Lg6vvcl1mNTBSbgd5ps8ivF1pyBiLmU2b453HZGnu+h1cZcHD8FoQYwKwe5AKHEj8f1sbQW/m6UMchYubxNeGyAZdOBFj7HiL4JRxdvZXrMznbNogEwrBK2aKJLIW/47LaA3uJuAcQwIP04uoHGsfiNqOwfVU9YYN/iu0NlUS1meHgjacRet3/46bUxuchJB8lfDszZvmiiEfMt8+ZJUL/3qmaVgPAbZ7kKGQXIRZ+CN7Dqwjs5CyhPuaevagefQ2H7E+7PygwXTVp669BlIYw08kolFO9KF4zBx5quxP3G1WQMxafUl0MQBC/mTOXBy+1HLrI+8QNHPcxvvaqQsATgFl93U/ErWWeGnqi3EH/y5XzJfU2nofcuFngTcL3KpdB6g+aur8pivT6y9f8+is23HB0NsHyCCpE3EtT8YAK6mpa0gbNYr96JhPi85+I2BSBCP0TCFB6GDV7v7syISje9/LA/uLB952Nxg9EXa3ZeNRYz9eotGIZNN/W792pAd0dk6w1aT921qoRluehc5W4Yjw9oLBwY7Cpk8+xZg4Of39d+tmELhigyOr21Q2DkpMiqA2703OJfiMGSgUANOkqfVxTOvIiUtNJV/y6SHk/VkyUys8eiiGJ+Y+/FhqwQLspsNwu0FcgGthFXNLSn9uZSrnn2ZuC5F0riIMS/Mz6tHEcNmC7M7anP2nCW/XZwRqdJn3gR5Finq+JfktFWWrE6TDPsNXBJT/yvO3hGpUdNsEZDgwYTrVwmQG3VVjR5xPV6cDaFkCqu1wgBmQs/9+TxOXr8TpLRvrr5b7N28YsJyApd4HR4/mt7iiqA16b2vgXsukjwzT6ooNx56fp/oNo4iFyFSWO78LTOuSA4qC8bjBbwNfDIDQjqjSWcLnbpLQXaNTVu8gKariAR/samIr37tDVg9zzAURVDZBOq6GJY0b1Sf7fxwBAflO31NWM40avcqI8O2toxhLsqNkUaxtyL4XgAlfeQTmxSVyeh6JKbAi8DgFdhEGPH+2SKScn/NL5XtODX4yRRLUf8ONZNJlLbqS5S4so5KUIIbISkhS+B/uXp2Mn4izJpZZWwUU3tvHa56QPR1PeNh6qLVD7EHiemjHnKeIvL7RSusGx3tZQvZ72IgRkz/KUGSLPyeLWRSPEEtjbxODJmYSQk2jPVLXebwiK5cSO5DAcKz0kqVvIkgdw/rM0y4us1G5eiS0cN0GUiATPB6eAlMoCwYLqqSuCbruIAJdcai1Uhv8cFNrq4bIXnpgJyh2Pt+bna6YDeOM5naMbe2jJwWlC+G9k0f3DRwWFwbQ8+X3HABqftoHEDBVkcFzWj0coPcPehz7Q6oul6+fX+LYggUCrlVwPLBJqlVO1cR6PUawckEHv78rPWGPDz5vCID/Ukl6Fi0JMW6UvmIv2j031sIORIG3Rh3U9MS1P9l8z/6ahGyaRIgJEn+/S1LPXySY8cPNEr1sjNm4FF3k8iDGYvArf1u5osa55ck5F1mv8afF97GzEvhV33xvJlVsYqMDhAtYbPLD2lIU7HCCdsKmLhdUUI6xPXLMHLXHyiXB3Qkel+0ZhMjtvKCBh/u6CSt9Vc4qFI5eF2v9YqmD5a8E5O9D50ZIxzVcJ8tbwt/B5TE8CHYfGkBs8gVW1TfH31Dyus3PqAEYMXwSWyO9DvhV7UvnzbaX5lbdKtX9CPtMfqLmtgMISEhc8q3ZlES1iuh3hGUCTEYUzMEZKhGoojOpgbeDV9jk7/QuqZZNzy8x6cVplw0djevg5JCUESIjDfMfuB35tRBgS1oK50GADnGPnzWcWFg2D8bycYG/jzg+mzRLAiupDjXLtdLWRXfoCH4T8YbkziaWLam9OIuWwXlUCXQ1vYnkrVqIgXpkpydHsF9S6sNUyZ+CobbAcFeMahuC+eeIWt1Pt3KuT5LPej4ETtFT5r0gC1GiK2Jt0Rnoa6c7Mu6G2lV8UClgUk/IjfPG7/PKj9Yc/r5IawNcDnsO/ND8gAC+waIu8Gyvr02xhpft87FGe93EFrmMohvzRodQQ9OPmV9PR0rFKITyxdmrLp8BM50c5eHc8/yXZNA/D/n/8lYM0R1RS4IohJZauL4mRN1GU8zLU5QHhdLaqLw9uuDV5rom54EvX1fH5hgWq21tFSXZVPA9xHFjkueThcsPrCwWmanB1xsnlfHS580VywrHud/MP/Ue4SpXHLBAVEk3o85hiFQz7oY0YpTKg2koGlvQQs5Y8mnNjGXVCbio6TaEodkuCtrizQQ9gC6otDUcPKQsOc1qk/nCPZlUua/yglqPab0qWT5972T+11S/mO62ByhGvyHKilSJXbPdYtZLVca2jNCQlyTx76QHuRW4KDHPG/Cp6QCT0jqXZRRB/u2t0Q75hPj9GQXKKwypBumYb85JkTWrsNFTTJy95EtA2gkQ24G0/3s0/a7UzfoxpdwCCEqIbHdW89lKeNPqlFzH1s/LAkT6DvHRmfw5+1Shq73ZeNdayMTp10tIx2hSQ4570oGPDqbwnsVP2a3popZYXD3AjHk3nrxM2hN+GQBszJyA1r6YSbMHHNDSA+145yflLts/BkvIQJ9H5kEcsdJM21ZV0GXJ5iCkIu9diXgem2ghbEViOUHlyRheizMnReAS8Hq1kU4VZvUMZt9qJMhxahyeLzYtpZssTVxsCQ1Jr9amwi3pWVAC6xhHjuwBaexqKwny8STclVch0F2+wLZp0ti1JNuRN20mNLtG0bha5aCPlgfsrH/IjcitYvGEovxg1IWf2PAV+eTQgfUk4B5/AS8zFZ3W9h1lz3ZNb9WKXHHWo37fsUml1cc3MnPGBfKBdmD5yLbdNvqhwNxUZt7e+V1jNbOPp15v27XvtxKVcVTwD9CmCCYGE0qWqs+vCHkko26pAytXvNd88yviPrsqafKQbRT7iwrcSzmDbnOPPU6NIQblldmSEjuBSeQJRQCpGDPi+R50fjjWIyGHDNUa6qv6brABav5GlgcNHriBsrverP7e+LAhl5i0fQcpDVC/G2iz+D0Ati5f+NCYnhVrzNcsxyiuGJPALbNBHwBQGRpvAoMdrJRBmHE/n/d2wVv5UaLX3eKFomOCT8Il10r1fbT/d9E0gDdYGB1HwlbdzqFOytnl5Gkrm9IllcSsZaVwPDw4a+I3/GjX8N0aAUErs6XytmPpyY3VPrPIE1ZHBO1plbiZpmZl8ABcebX4ZQuY1GmwTCngrLo/z4BkwBPoDufM6Iy0uvtNwOWJRQ8Fq9Fs6lihQy83cBp/y2GY9R+qKg40PuJXU7wkbv5Li1a6++Incte6vCnnn0cwqmu0IahPWB9jsR22DIV51MxchlRZwe9WkMFq5AaHrTGNKvyx0r3pxCZZT+3seKkj/rskJdsd11o7+C/5dZXIyhNz19O3+UHqylloTLslHjWsHr/jxq/QRo/oJ2cZK5b6fboMrh8NpfbflDSuR0sbJXc+Anb/frKJoIKuPqsFoDQTNf+F7Sc9GcsmpZl+WWZlbdXq1n1um2JuezKNw5uvXQOICMRdLqIzSwQgRUGHjU1nFqli0w760VsXqs4rmXT6xj/vCYIay9v5fr15gpz+bsU1a7OaCkyzb8rLij7vBPn+jDU3nDqZ/ImYDZRoraiUh09ZFlaQXzwVEC/cDDxkNqMUTIecgAiRa+93RVUUZOHCTensHvONVL9R6l3VeT67zSJd6Zazs0sx68j8z+y9Cpzjq9NB9VjIJMChcdGfj7ljcgtlB0+lNQEyzGl14eJQ6wRJ32cFZ5o1x/orqiEaO72Le3MdcacNiJvL3KfIbHFZ+fBBzYn+AId4ElHdfESNHfDptyyyxd1wSu7S22pg+1XZKqEXDBn3EtmCCJZd3Fwz9ouFuhdCaAXdJR+/1GSXrKzcD4dIXLJA/Zkmh/Loyhe4hMYFrM95LGI+X+wmnzBx67iPJmROlhkVoQL1s9gB1I9Qs64NbzQB+8rvCtki+mPJ5DKxqrPsNx88tmHftT9mJbNeKlFY30EobksWwsZ+DOyPH3wo+hFStiRppa25WsAGW+LQmxyWcwsaqbsz0CLHSEJP4SZXMG8M13fL3OEtR3YLfcc2yzqFORydPZ7dSC6bhNsizyxdKAt6Z+zgRJWlhJBQPZ20embnyW6F4QrSCthl2zrObOLB+VhOyZyGQGM5xswVuOmfdU83BNQlg1D+rh2o0ILOzpPZuvAc2+rRKMHyXolMLendesuX2X1T7OIyHL53T7TRPFc+uLYD04xSlv7NyQUnoTcQlace9kxzYeXdAQOW0KRAhQUqRSmbHHvTishO866oSa144D7G68yv9We+LB4RAIjeEV4uDhDkTyuEojfd0Gd2KGj4zTJrojoesdnJWICxyEPwVLzSICDhIjwijz1mak21iTvScC3N9B9mXywcjqs6/kwmhn6NzozELAU62Ps9YY3k22NgkvhblFnXnLc+AjyvJJKNFzDK0XiWG17PNmLKY8Wn0MvmVX8ReOVQq/jXveepROgple2ZhFzlZjG77t7fXs0EItgpECKxMDMCmQkYMyIxr44SmOPqVJ5EXR8mgE4/Gpv12ZzjVBd3TL4RsTIUPbjYfWWJVbKvf3RO48HwAMYqs0DNzYwlWn6nfWQsbrftmHjB8FH8J5IcQ/rzraLzsqEhtwEkFhkT27vz6DdyL3Q7oLuB9vq+KmwX0q7I1uAgZcDiGfpLBhWSaccegH2maR0DO5Ap8lvdUhEGZd028yOizgpK7nmCCY2g377HhB7p5dTb7wjXyBTkiMRmI4dyJl2AICRHYTJYw89kuHsf2iW+RZ1TjFR8Y8jjT49ngFriBI3Fl93z3OcKmHfrF1Rv6CbMKjF4c06f8Bx06UCIybrrfEbdICSpthhYx1O9frrdDGT9YqrZHuseZQpaZ9uf/TlJCKU5E3TYspeXT5CLTHQDZhbTfGjbbo6GC5ERic8ARfu/QymdWTp9vDnqMAcvPDbx5UZS+Lu8AgWOF9Iw+P4OaTN+Hp34rfzRcjzE9h2FMGLpda2MESAY3XfUi3cpHZ1dC/5aaM5dJftJwwPNrlK5R6sNUcA2I5gcqXbV5Ofci7Ax/YgggqNm7dqGusOGcWJ05UPZd+q/eWuSsvgrUzp/kETBjsBd49h5eyx2wkhPCfoGytFxpvgPqtsFRQ2+irTvKhhv7uPs4E0ip/zDJCi+TbsQjxZHlSot66qsbouQuzrUim99YXPuE7VX2MDzmDXZ2d3YK3npndmgx4Neune+w4PZSk+T3K1r/k5AlHoXuUj44WzGgiTBXnfjVrwmzub/3A+SGlFOHox7CJo9xyWWHjYA4qj4YnoqHTKAqGSh647KClymGOZXAAiMIP5eksk4vNKDKNjtgNvBa7eiv2RaZ7FpqVirpKPyjul7rkrXJ2cu9XrrpFebfstN4FWbgCQ+8wYMGHLx5T42CQyKHDmHfobHJmYKscY7Jk5wuub76Ufde8ojmlOhk2zfZK34G04NXdu7/68LUMADpGJKDSwZAjriNIbkwoMzo0SpGUS4OtB+blntP0amdimCfVYrn8s2d6mkj5UfB5DlgGXysGAzeheMbH8kxaaTfcCtmJrUQK74oEAmsdgibswo/hM/FhbSWQE7TbT8Ky+0Twa5v7iP4jsX8O9RYgOqpKtpWOj75rN1ZYwfsss4VTFQ2dRmPDJTB3KbBfKzWglut9FOagAQu/t4EYdqIlnXKUWrVmQvWRGQSiWCj0svSnYdHNAN/f1ofOp9aIBE2TCjj6LymeO+1RY1zqt4X671IhFICqkjJIHUaueYWDu5mJs9n4aGPhsy34CGHioSlYNmtzwR2LJxFQqVuTpvSsN0hzmzhMtdUY0Ih5YSpkcOtfMppPIGnmCyhcm87dqjDq3vMpwarC+QFgGjoDEIOZv2t3WVrA/qSCKrfuEyPUa1AQlsbJuAIdeCQkDVbRRviW5ociUKTAHtPczdCLXsci0kbWpB9Jku63a0IY0pJ1cP90YzhqMw45+8Ij2iXy5lLjr586DvV+or5fEEGbCxwrP4X+BY0lZVQIDj3VrS8ZNEKITiwQweGvOEhZp4KhHO57RoMjUsoOnvGtt8ctnkRx26X6cLDbiIP1Ovq6oDXUdovEoM++orBXSkl3LAmMFpa7Qy4Qb6Z//4iLXYovZ0ApVKPcHVGNEGGH2AO7FTcIGb12kBLiYXWLWllvx+SbTpZSJuwPJfj69Brfg05nTF4dFL7pH+M52Vh41oSwvbHATQSpphEiMNW8rW/tNeaaIAOvMTUhmH8b/gZ+LLT08NbrkXcARqElSqSTUXFD1PEAACarIjGuMkML3oiHnnAanBLvjGv96HBwR6D0zCW8tsayuofR6FMpat2r3vHJiL9skcD37dVveO2xpvya6vyZfCaJXpyENcD+I4V+93NtyG3AQovdXRm1+Vy3kjP9toMzKxIFJoYEQe/59pmoFkkTbM6yw/R24CZ7kjn5HxtIuef4j59x66a1kFAJLVQaYySEsDE53hsWmOmb9yzw8Dw/RCODOILDEDW7TNbCaxJUrtFOPoI7JuMiA2S4AmUBMRHm8sG1wt9cXzNuKC6JNp6gb1+EdN6IwHlCgvGtMEza5jHZ5os/2US9n8KG7/bEJwM8MLAF5z/SR+2U35nhIR0JOA086o/uCh+oyRODLXFPm9wdX7yFL659lojP1ar9SEVXCVzDhxbiVu/MH59sd7x6JvjQxwRTzUQiIONFgtS79O/UAtjJ3EtK7aApHMd7w8n3m3dp5Ahzm0Mb7gLxKI3GogB2W2IrtGx5d8nDNqtT0u4Va+lVvSA/OgF7yQ5NLbcXtfW4la5W5cKm86ReWl9XsIxW4VIjOG08jlWL7FxlXKwzGQxxR7FyT7InmtPl8npMZbuDTerMyBD4hdxNuwM2DY7m0PoMfZhqdRddTKCieD7ySSui8mx7ipJ2XIo5A/ue6BDopzV5P7pH3mjgGWiUP6SrkqzoCa3XemR+gvNzaBoL6kyuwN5ZoM0y8skiFFDTtOab17p5lOzeBAU5CA7qwmd1iy2xmGxxVi2AHJu9X3RasuJBfMp9fw4+eDaerFfVFxnXqsbF1RzLmJ+ujxcAenx5MUNqynaqpjEjfbGZSf11OPuNSj1PDeFuXjk+iHlWtEv1PvZdwOdE843R7ZkCIBFxLgsWqYmGo8sSKlNAqpHCpF3FcB8UKqEkZcQb4h+Uev/29WOEwipKciKXzvvePo1MiH8e33fEAD/US2v4EkcP1vVyfjz49WsPy7p+R6LIjwVeg67hHKfldUAo2XXhcgt+jEqBrlBYdaaEYXrB8VKaDpUwz8AqD68b1kpaI8mGdXXkZPIgi1luOeSaKmTYkUZbqGnawoDEtQ2Mz2H0LAAiMxFGufhnI+n6I+skyLuJVl6+2C0Tp+OKfOhq1chwdkv8rI36gxFOE+48MP7Shnyhc2sLiYr2uebSUrgz2b/9aFA2UMBp+rgoH0juYnT07dSvmXEwQz69Idm149bLXeYEEawY4IhvOJxqqM+erqCpqO2uAmMFuB9wwOxAeWw235qCTXyYSUUbzc+jW56FlHm2r25n2861tiIyj689FJTvzgX5Ok0jvDk5Ynx8RINieD4NiVDoYBTVwkJx3h6PSuUoWh2Li6Z1qWD16f1wlFRilhiNNAuq1DByzVNN9hK0ur3bnkpDdEnIP/B+Kt5G9v7nxxxuMSBEv+bIRvdkzew/aCM3tgZ/+RNTKUcvC8qqIwD75IsWD8KGkyK/fu16yZ5pNLiTkYVWkSGq+JWfKVyglj9CrG5QK/BrV1vFGhar/BlL9lbwcUIeLVP7bxr8ssw8++rKTyXObRSmoZgrdIXcHMe5qwoMIJaygRLP0iVVHSlRwiOS2MwXki1Gj8yb9pwGb4GgdANS4sCdPdopY2VgniBF8V9iIHOVxVEhPOxyjDU9B0yLConEanXomwIU67Qf8sqFsws8JBqLtFwtzeE96i5SICg0IqRAk8ytrpTaI/c3+F+dwCzC4wFYhraAoPzp3C6Ap3DYhvDlxML3I98qUUFbsh8L5uWYnRhxIISSBXz7ES13Uf1qdNFhWiIwmoE00SeovYrhXio4j01z5mH+Cr40cuFVqMxo+7sZhhPPbUd3XgUR8CR+dT0DPwnFj6GvW59huVjtfzWZ90dSTl+e/JM1xMJDCCW7qRXYrLMMByH1/EEQ7wm/Spo3D9JWlioEOxSneuKEw1Xg2SJay8/rODrj+B9O//p5n9wlXZZ9mrtae4VcCn6kWLdLzeOLM10jrasfLap+1sAykWwKyN+IPvFaUZzQANY0gv34ZbKcLvtH7Ex0dVagbbKi6Ha56v5IMdsm4qrFjYRArqnYRts/H6PEgjkqOuv5W7SukKi9gCQfp/iT4m/O9QFtqgmQTMwVud46GjB8jxCmapDL/tEC5XN2N8HwYge3kjBU6R5qWMPBMHtPr0hfG0OTvmf9giwp5silxL20Dl76A7a2LqPB4l53UvuFTEXQV19AjZtO5CK+1lQFgpS7FoXJYRN8V6rQfwnMT8cS3fxwYQfDK0Ni42zdE0IMXPC2a03zArsb8JqKuD5GBrTYon4s3bDie20uEoz/jondBLUjLuOb3aBrhlR4tAakyF07F4bWyrePnNKOcjqt3Lg5m3JIyXi3Y4/9vlbtmxMNWoYXwx/g1oMFI/wWBbGMA21n9JK+xogbfHusctoWro6WoGhMCNSeAnCHLGW6rf1m1KWnHx/TGzDfB4YHfvnVsdRyXmxOVg/lWQ5j4Pkb+1fv4RpYjdFO9pMaId8MaYe1hVp24cGkWryEKzqQk9brmxxYF+vvbk2FkffPurHGCaYehUvmgYl7AhOX/vh8h8rcNJWguUyQLljwLeJK0gHGt/8t87y2vADFAv+D8FXJMfup7lhUxgxOt3wZcp0H+SXcgQTPMRimkHXSYd19KD9HeKrADGuZAnLfvDNDapoMEgwMtsRwqQn0RccjWC+wA+MgT7+iW8UC6njomJG/T1/l8K9kH+Y5jk1CPzZfO0HjfGE2OXD7pg4thvTftxon3sa+kc6vNsu9L5TJ8iGwhOajFQCS5F1QgoZ+Sbdx9FHccCITlK26HX1bZMtnAWlz4W5ChCx/U4undGd9aKD2WildfNlCgSnr/8DgOIrkoyIxMWstvif2VUqU3+l2n+s0BtisZJlW4fprWpxgJwzdtBUMGLkhIovR8o9yoTyxGj5WlGlS3SwWic63+ta82NVEib/5CpVelAVgcHWa1H5YhARPJoqpynHLG4gKSc6CpIl50o/PgMBtJ3MfCEGStfORHCC4vp1ZgiYnS0oAm0Nd5B4XlubyMDX6ikjDArrQFql/2yk0OM/QMSb/nXwsedZZvNo3x8xjTWHeC1LsqXdjeyskte1y+vVrZWcm0uNDphjUxaQ5Ikn+a57xGKYxgzcux51Uj5HZd6kV70SWmwzRSvPPRSaR1XVAReTxuYSsgo0KIR+O4Ff8iRvZRxpErWDv48JpF6vNirCenaTmZnGe651T3QgFWRdaylg4V3GNsHLPjDKZ4o2AEYJUkAX3inQ6SzvFs0MCCYZBsstQ1ZbpdbJZM5nT1LXi/ClQfDRl5ZW/EeJFJe0RdwLxF0TzZTXAZQpoODe0GVfaXfm5hRhmDtY96h/nQQD/HeVM4RbwD4wjA82FHdWWiK09pt7mpDeKBjnKrwkZf8zf1qoGqXZScAGp45W7QL7Sjd+hbQo+TQob5fxgEGe/0QDmtjMrsRrjl7apyIRGg8ZlubO+wgcP5gWVBvhALtnaTzVxscVC2yqEK4+MQa+IKiYVVoqKSxG6qdmVVdas2YxxAdD5iebFp6g8NR2DVowo9OvtA2HyBUzD1IksZw4fDTFFgsuHDX4AaRABD8OWODuKNg/iEc8YZ1r+qYWAsWJ835jgyG/PXavCYxIW9Dqw9lDT3TW0vCnOFP+gTeNptKdF40TmTPQHSRbJVdpUbpB6JXiMLk/PsJwXWM+NBAS+ImBX5CAD49lHEFn3j6aN+bgvY7a6vQFRmLJ+zpKEetUN53t9A5fQWsp07wxlkUi0fnCXektfMziBmhHvFxbk64lPZ8aQGAnjuRS7DudddRH9gdGtmgZG/msuhr61irBGcoonuYjfjETref77YlQjG/IQveLkSkXDX8M77hD3WB3BeIFWNNcgcgx0Dr8pOQzIpXT+gW7rc8O7dE+Fx2IALmw1TklOmYONnSN3FHhdLD/ynzwZ2uTwco4OAM3NY2sKExvGOuezFiQUkbefaBCG+EWwLVpP13n+QH/u7CyhYVS76Q5Vfxba4RBfM9aaNMqdf0TKWwbjWA2OWQBkJydu4QC/3utcAvRbCFMTEr2852bivHbZqubL5a6CWUyExznCHP3zSPfY3PUB9s5zeEHOlmUrZlRoJV/NGMFKwuFnLCy8UPw+AOs8nJ24RcnWbhOuz4O7e2z7bgwKvslh7+GeOftIQgjmpuQcMODOXT6Pwjl+0nokY7NFXtVX0W5eul1wNAVneVZRGd8lJ0MGvgn6voAj1/31h2NbG8rm7gRpRTLmMu3U3ZHNj14kyKzdFN9Rt8RTmv3Hk8rYaV/S6xKjSjpNbYKpt1xdzVCA0nl2PuZwRzqzn7DAvfUFI/CcLwWJoJ0uKCzbnr9BwO4ObbyNOG73M8uegQyk2EjJYCU4ZluTYZVk2sZJvrHkIR/sPGSl2mk4HCEfdGV+XrB5kDquKI+DCjObLjfW2125fl43uBen0FUwB6l2bpgItJon6Z+vA+qve+glGWoXbn41cFCcTKEODJTbC0T0aQEud6nY/Mk7vFS3cYXuBqv0rvNSQZdmMfysS00i37CA+saRbiT/M3cjQ/ujHng0JGrSQdytHxKK9Yg/9A+3yqxGjuJU+eBfU/XnXSSUg9seXOEMnwOW9sylmRsyyncPCf1liOv6/uUIcrotaaDoFDnS2Z+frsuDo57hsdzD+xPjDxkElDjkoC/tZKOFgQSuvP44uBVMSdILDSoYbivm/IfhpOIm+fmkQmUaLoJCMcck5zcbt2rfJGI8MW8mtCwxuQPCnU1C57sT7DfncUMvQC/29bTHmVMjB2WG9ezJRdZONHyRvbHpMrx5HmwPyc0KNq9ihMGW0xdkDoSYokEUwGsYoNmaU2wAks2DzLc0zI61zCArdaxdmeb7mL2OvVL7gFKoCJAVphxLa8lfafHK+TsjfkiEVEKGH3mjdqSTQ4KZD5p3K2KAywXdZOm/T4FMMXlGfww6BBwPbQOs9rRpMQUbf06fXpkIkro1qL9ah8cToUOAaEbPfFljwQiEyd2o1cgOiwoeIftJNH5aVd2PwG1l6ON44f9OWP9wbZ+m83gP2ArOHX5zr4dju636Uq7yqXBJITXceIIHHcEjgA/w+IkKJggadPOjHyH1ssSw/oU5qg/qlrHCc8HKHG6xYJD5goco+qjXqQWVWeqGowN2ntrQDbjfrhvU/lwT07DTeGPPFLBKbrgoIzk2ePUIr5oGROGiJM3jwLq311+Ytxn6RbNoAmvWsZmBKKID1d0iQZZmXro9qUgWeNMAMYBh4K7lBMzfLsyLjtJy8PaQ9Bk3uCiNbrcUo3PraqoRTS+CYXOVJiRGUNYNdVfcGqnGZLd73wgHnidnptElXfzFJ5vrBkIARxYorrDSwQX1UEmyj8COgGdrKnLOMwId/45XsCUp2bQmKYcS9eEym+625Jh+nmNayZ67FmQlozbJA9K5L7FtAI3LfoVi4qxT7+5k/LFbsdLA3lgFVvMp4Uwbf531nM/QZGXpRCHLxCzPDwVauBpFRCJ1TCe6VaOQDa6Tw8R3Z1wIpgMA5Bf1DiOmGssY3IJhTofnxpKWYgKbq9kTHO3HgRVml5m4vShSOVdt++/Bg9p7UO6OpRd7/nI2TErXAyufh4+fv7IaSuUildpMIP3d7Q9wKdPLcijhomc0J0ILtusn3KtDMXaDdrvjQq+xs5sAYG3/AXz1j6exYCVXhbdRG7KZu4z49PfQxVwuz2hFn4cF6AD3u1F/6ex2W54rGwitK2Or39wxXy4/gqOALe1sN8M+OotxmGahv5wSEFqlmXN42rKdqIDaBj3vHQnhw6KSR4fksSbeLlxd8mEiDlE1AO9MO2at0/U7vvuAqQ43zO3E2qupQbM6aGwJbVItqm4RGeZnokIZ/GYXyAD5qPmvgDuOAhrmi4zXjL+T/iWLMen61O/3NdLZ5pKqkLseZYffpaoMIa0nXEV60Ab4r7gRDuRw9JAh8RW2CgAFHdDWDTWRQFBI6+YDGbH1EqGB2viwuuuqwzJYzaN2BnxHkLWW2lk3gw2wp+fxhvYdnsFgDF9WIxQEFTirM0CJYaihVMgeTN2Mzw4Sm29Y4Gcd25VCzCN8kuCMZOH42nRfVcWKJSPeYhABmtTudwtU8hDFloIM2AWQBZfgW4YCCc0UnlA4lOZQWR4haK+1w0kZyLVx36RURcMw9jIfvUZh+o32MWSl3IXHF/cibo+NHMjLWqIQtPEYA7GwuJdos/HJboZfoNouJpSGUTbwDYk9kUKXPDEfBGNhQqT6izvaBiFVn8NGzsm9dz7GhH7rqLOoQHuyCxnvVp13fcfRffmPh69Ey3cuq580k7zSlPPPrMVpsX97EKhRvRdK8+7y+DkS3u/XdgtIna3oubz4llqneW1xyRaMltmFUcFYKYL4nz2DhZI3qlYr8xhfVCjCDqsDxqhz2y8I2Jl4E3nxHue3EEOdWHyVE12l2S8mex7j39nWlvWu9WnAv3ys3YOhPHr9knXgmZ6YKYWvXwzP1WUJ8d+NnVmvm0V/bDD793+otx8d/rsWXX+uHwGKXSsi0a9g8YRnYZQtrdcxzUlfeS7Pin3AehwEMh22GC9EQfVGVco8Uqr7ugpFDCE/QzpNc4wx6xL6lpzv+Sd5ZXiIxb2EPw2OB0f5kBXg4tL4ZHamXWrXYB/YW2PrDImjoV3GZhLurjdfXebGcGH9IDffRDtA475EKH+rmlKs+W7rc1pobtIubIrHKUl/2Ras/Bo6lSyROHM2yMHW8TzACliKsTE8E2Ncz+kZcZEBrk20PW7wDXYFRi04wL3XYI4RbUw9bPXVgPIwtmejmu2IE7662ES6PKQX0bJ6nICMvM2Ds/aCzOIhzJPD8eeOtueiSouDoD9UbmPrtXRfNHCdLr4rniaqx2LfvChz55MytHJ+66BZn/GCoBuwr7AqKRitkWH6KqbPcTvQ6SAyotQFVtzY3J1YmJlZF27p9XJLcr89yD1aI0xL21TiJLsMypL/XmDoy/kARh9BRwXyXkmfmcTlCmKou9520cVzHFCU+9FjZNFDznpC8pWNFJ5o6whdBFMEwy07iJHnJsuBZIK1yKTRRE+sxzODQBngRNeS+biR50547w1bBUCH3vmIopVhwaobgpr/d8NUVHTWBQco7wNKzhqSxUoSw7tEl3gRFh2g7OlNbRKc7K+BOqMOFXMXmZ35k7cs2bGJ5BIBjeNRT+5FL1CQXv6/mru5BXMrqZ7dQBC7YcV1uO6/yJtVvfljmotDo6x0ZfSpz+wUheVWlkYz0X/LIJcjKSod0xCYkymrxnxVV/I9CA+rB8/A6Jdv12bEUy/tOX56Qm85vv33YX/v1LV1Yz8590lW3OJHRTiB+EV5hB2btFJmtvWU4kIy30uOIfZYPYVHUbJYBe6q3EKdLCmeEmqRNUYwy3GbDuQEG9xxihbjs6z6/QSHPoCFFzX2Fw++KACDPeiCdwOSsUYgGD5SZ1CbiHktR11riBt5jqAmrl4q5553z/j3bjIxUkljP672kE++ihoj8dKIFP2VJqtmEH6xlAzwJ+/Z10dr1vc4yt19n0/DShMxVhWXY4Wohhzdu8BxsD7PNtQ/1ZBaJGjLJtHm/jlFxRctzCEbhbQrWoyBp1bTbhBKKI14ujPFYTZzp1bdpukaf9fCCwVjfqd7RHhiVk29ey/hUOwfwgG+eysLaPtf56J98PK6WRb/JUIzdBtFqStBrvmQgs6TRAxome1Ts9AKprlgQ4GN0C53vnhOyXE5uAtEBFZ9lG/Ogp1m5JWMuJC+xjsLpgO6ll0C56Zrhqbed3PrfwnxmyD/X+BOD0vxCzJWo3xm1AyNzbfPcZPBI6UAOQX6ajeHF+gLt+7xUWddJR/qZTgVy8sfEtcBXcr9BViz5IE8NgFUpIpQvPN/ILTXC33jyKucKeyiFHwA3Gd9bSNDwP7b+ZT+I6ryiQyKPh5hrUzM0zJO0o0G6MJX4h6SlGNjHAehTmvI3OK8ZRUc+dec0EF4dLGafOk3gR/xoIku7x/ArtAwNTU7YtwoVBOPLXqJuwripm3JzNNmxPiu0q16ck02WdTTY6oC+O/rEUm+xUvRgSiexfGqWXbsaIhZjxgXFahSGbOgvcF44sXNnSwGJsTBY7BLbYq/2RNP35J1hvVdR1YNx/WbRTAaZ/LXjlJQwnMkl0LStNIZxA/Q/S2UlIEhELGgEv6zM/f0/2GFx+vleKlTTfDGNkij9gVo2mYlkguIP1M+/Icujw8Gy8YeXs85XVi216urZACeh7eSBExEbc4T/lBtn0xGh+H+XM1aq80oY6gVMBtKHvjGVUIgceA5KzfagVEPTaqQBphshfdnj9Mv5i6An+aFpD8dPIXmT433SeGY7qhop/xxz9WAAiPPm3eaSXp419K/pR78Fxh892/wcqij+z0Dbfywl5bAtBZWf+987K82D3jE7+hg0W61GPa53B9grfTkvfeIqI9Pfcj5jHwKieEivqPkVC9CWYb2S1iehuj3+wkmULdukJ6A5Sa3LrTSkxPk9JNxUi98kcD7BpbnfcAz19SSaEa/TvsJZagoeRGLUxGChHHk6m9kjK+ZqzxWOUd/KVL2RUpdacA8H/PNw2zy43nFTo/z5yzx68oGd7GD7K6wiRs9tv1j9nQIh8S7KMRZ7dALFvDmWykxUZcHNMleL/IZDoU0TNtILqEf+Pw6TSkwXdZKnMFJrM6QSYA+qkw9axLrem+0iOgY0uX79BNbWiBWlGdP6HFNy0O9HcfoEAaD5Ctf+brdUR/yQ7LvwWgRFjyhlt4Nbuaogg5r9kP6IuCHrUoDb+mtGPuC+1517nPY/mAywdTqSQghAHH+XtqCDGJXYqh8ZWfErN7WZ2CghJ+Ab+KJ0EB5aMs1mmKwxvOIBs5gTHKnpRXd1ZNM6jeewIokt/9c+s74hU0VIvgXUtoHoq5sCokYROJp6E4B80uHm2cFY7HrI651iSoVef5ndWK/gnhoWhwHcQLVS32YuuACzVNKVNa7FgGQQsTxHbFi3F2kdsWF4ghWOTI9AQtT12YDwzykvnjft1+0KIO0mPbbfHd6OclQeiiyo/11ee5VCkgzENksx+/CLACNXYIK8PcdJVaMe5ccMc1v2MlL5ccYb32Mep6GdVDgry+xZmXyRDY530mf7o2qnjwr9aV0qq4Cmp5WvunZ2C0R7PpViq4UfZQssf3or3Miu1zYSCvd4uh/PsgtL/4hWoWPr43Erc7X5i2l1Gk4skyWuJ+g/tzXzz4ou3zhXkzPSAH3Mlv1hfn+U8zFRqc7/hoRRjCh48nKw0mW27bn5xOGg48gCrxWeBEeJculdpqnwQ3VD+8ogrkL/e3TVDybW7X9GrSt5GPytA+9/GSnX6HQqHqWyCoQcfwKDWW4G5Gp2sONEVTNS0yVoGCDvpMmfULWsaAn+Zi0mynLzACeEDjmm+y/f88ODLkCe5R27fPJIysAGjN+vgyfBpfY/kvHCqqkVrFjA==", - "format": "base64" - }, - "body_is_truncated": false, - "x_body_length": 32768, + "body": "", + "body_is_truncated": true, + "x_body_length": 57344, "code": 200, "headers_list": [ [ @@ -238,7 +235,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 40001 + "transaction_id": 40002 } ], "tcp_connect": [ @@ -254,7 +251,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 40001 + "transaction_id": 40002 }, { "ip": "52.35.36.75", @@ -268,7 +265,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 40002 + "transaction_id": 40001 } ], "tls_handshakes": [ @@ -287,7 +284,7 @@ "fetch_body=true" ], "tls_version": "TLSv1.3", - "transaction_id": 40001 + "transaction_id": 40002 }, { "network": "tcp", @@ -304,7 +301,7 @@ "fetch_body=true" ], "tls_version": "TLSv1.3", - "transaction_id": 40002 + "transaction_id": 40001 } ], "x_control_request": { @@ -321,10 +318,10 @@ ] }, "tcp_connect": [ - "35.161.85.189:443", - "35.161.85.189:80", "52.35.36.75:443", - "52.35.36.75:80" + "52.35.36.75:80", + "35.161.85.189:443", + "35.161.85.189:80" ], "x_quic_enabled": false }, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/observations.json b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/observations.json index e91155103..ce448e1e9 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/observations.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/observations.json @@ -424,8 +424,8 @@ "KnownTCPEndpoints": { "40001": { "TagDepth": 0, - "Type": 3, - "Failure": "generic_timeout_error", + "Type": 2, + "Failure": "", "TransactionID": 40001, "TagFetchBody": true, "DNSTransactionID": 20001, @@ -438,18 +438,18 @@ "52.35.36.75" ], "IPAddressOrigin": "dns", - "IPAddress": "35.161.85.189", + "IPAddress": "52.35.36.75", "IPAddressASN": 16509, "IPAddressBogon": false, "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "35.161.85.189:443", + "EndpointAddress": "52.35.36.75:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "largefile.com", - "HTTPRequestURL": "https://largefile.com/", - "HTTPFailure": "generic_timeout_error", + "HTTPRequestURL": null, + "HTTPFailure": null, "HTTPResponseStatusCode": null, "HTTPResponseBodyLength": null, "HTTPResponseBodyIsTruncated": null, @@ -477,8 +477,8 @@ }, "40002": { "TagDepth": 0, - "Type": 2, - "Failure": "", + "Type": 3, + "Failure": "generic_timeout_error", "TransactionID": 40002, "TagFetchBody": true, "DNSTransactionID": 20001, @@ -491,18 +491,18 @@ "52.35.36.75" ], "IPAddressOrigin": "dns", - "IPAddress": "52.35.36.75", + "IPAddress": "35.161.85.189", "IPAddressASN": 16509, "IPAddressBogon": false, "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "52.35.36.75:443", + "EndpointAddress": "35.161.85.189:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "largefile.com", - "HTTPRequestURL": null, - "HTTPFailure": null, + "HTTPRequestURL": "https://largefile.com/", + "HTTPFailure": "generic_timeout_error", "HTTPResponseStatusCode": null, "HTTPResponseBodyLength": null, "HTTPResponseBodyIsTruncated": null, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/observations_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/observations_classic.json index 9f26d8655..95a8a7626 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/observations_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/throttlingWithHTTPS/observations_classic.json @@ -111,8 +111,8 @@ "KnownTCPEndpoints": { "40001": { "TagDepth": 0, - "Type": 3, - "Failure": "generic_timeout_error", + "Type": 2, + "Failure": "", "TransactionID": 40001, "TagFetchBody": true, "DNSTransactionID": 20001, @@ -125,18 +125,18 @@ "52.35.36.75" ], "IPAddressOrigin": "dns", - "IPAddress": "35.161.85.189", + "IPAddress": "52.35.36.75", "IPAddressASN": 16509, "IPAddressBogon": false, "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "35.161.85.189:443", + "EndpointAddress": "52.35.36.75:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "largefile.com", - "HTTPRequestURL": "https://largefile.com/", - "HTTPFailure": "generic_timeout_error", + "HTTPRequestURL": null, + "HTTPFailure": null, "HTTPResponseStatusCode": null, "HTTPResponseBodyLength": null, "HTTPResponseBodyIsTruncated": null, @@ -164,8 +164,8 @@ }, "40002": { "TagDepth": 0, - "Type": 2, - "Failure": "", + "Type": 3, + "Failure": "generic_timeout_error", "TransactionID": 40002, "TagFetchBody": true, "DNSTransactionID": 20001, @@ -178,18 +178,18 @@ "52.35.36.75" ], "IPAddressOrigin": "dns", - "IPAddress": "52.35.36.75", + "IPAddress": "35.161.85.189", "IPAddressASN": 16509, "IPAddressBogon": false, "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "52.35.36.75:443", + "EndpointAddress": "35.161.85.189:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "", "TLSServerName": "largefile.com", - "HTTPRequestURL": null, - "HTTPFailure": null, + "HTTPRequestURL": "https://largefile.com/", + "HTTPFailure": "generic_timeout_error", "HTTPResponseStatusCode": null, "HTTPResponseBodyLength": null, "HTTPResponseBodyIsTruncated": null, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis.json b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis.json index 2b49d0563..cca559564 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis.json @@ -67,22 +67,22 @@ "Failure": "connection_reset", "TransactionID": 40002, "TagFetchBody": true, - "DNSTransactionID": 1, + "DNSTransactionID": 20001, "DNSDomain": "www.example.com", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "130.192.182.17" + "93.184.216.34" ], "IPAddressOrigin": "dns", - "IPAddress": "130.192.182.17", - "IPAddressASN": 137, + "IPAddress": "93.184.216.34", + "IPAddressASN": 15133, "IPAddressBogon": false, "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "130.192.182.17:443", + "EndpointAddress": "93.184.216.34:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "connection_reset", "TLSServerName": "www.example.com", @@ -119,22 +119,22 @@ "Failure": "connection_reset", "TransactionID": 40001, "TagFetchBody": true, - "DNSTransactionID": 20001, + "DNSTransactionID": 1, "DNSDomain": "www.example.com", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "93.184.216.34" + "130.192.182.17" ], "IPAddressOrigin": "dns", - "IPAddress": "93.184.216.34", - "IPAddressASN": 15133, + "IPAddress": "130.192.182.17", + "IPAddressASN": 137, "IPAddressBogon": false, "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "93.184.216.34:443", + "EndpointAddress": "130.192.182.17:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "connection_reset", "TLSServerName": "www.example.com", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis_classic.json index 2250d1c12..c0b950e2a 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/analysis_classic.json @@ -31,10 +31,10 @@ "TCPConnectUnexplainedFailureDuringConnectivityCheck": [], "TLSHandshakeExpectedFailure": [], "TLSHandshakeUnexpectedFailure": [ - 40002 + 40001 ], "TLSHandshakeUnexpectedFailureDuringWebFetch": [ - 40002 + 40001 ], "TLSHandshakeUnexpectedFailureDuringConnectivityCheck": [], "TLSHandshakeUnexplainedFailure": [], @@ -55,7 +55,7 @@ "TagDepth": 0, "Type": 2, "Failure": "connection_reset", - "TransactionID": 40002, + "TransactionID": 40001, "TagFetchBody": true, "DNSTransactionID": 1, "DNSDomain": "www.example.com", @@ -69,7 +69,7 @@ "IPAddress": "130.192.182.17", "IPAddressASN": 137, "IPAddressBogon": false, - "EndpointTransactionID": 40002, + "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", "EndpointAddress": "130.192.182.17:443", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/measurement.json b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/measurement.json index 7b3624b3c..a95b0eca7 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/measurement.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/measurement.json @@ -151,7 +151,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 40002 + "transaction_id": 40001 }, { "ip": "93.184.216.34", @@ -165,7 +165,7 @@ "depth=0", "fetch_body=true" ], - "transaction_id": 40001 + "transaction_id": 40002 } ], "tls_handshakes": [ @@ -184,7 +184,7 @@ "fetch_body=true" ], "tls_version": "", - "transaction_id": 40002 + "transaction_id": 40001 }, { "network": "tcp", @@ -201,7 +201,7 @@ "fetch_body=true" ], "tls_version": "", - "transaction_id": 40001 + "transaction_id": 40002 } ], "x_control_request": { @@ -218,10 +218,10 @@ ] }, "tcp_connect": [ - "93.184.216.34:443", - "93.184.216.34:80", "130.192.182.17:443", - "130.192.182.17:80" + "130.192.182.17:80", + "93.184.216.34:443", + "93.184.216.34:80" ], "x_quic_enabled": false }, diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/observations.json b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/observations.json index cd1a1dbce..b58a53213 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/observations.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/observations.json @@ -266,22 +266,22 @@ "Failure": "connection_reset", "TransactionID": 40001, "TagFetchBody": true, - "DNSTransactionID": 20001, + "DNSTransactionID": 1, "DNSDomain": "www.example.com", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "93.184.216.34" + "130.192.182.17" ], "IPAddressOrigin": "dns", - "IPAddress": "93.184.216.34", - "IPAddressASN": 15133, + "IPAddress": "130.192.182.17", + "IPAddressASN": 137, "IPAddressBogon": false, "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "93.184.216.34:443", + "EndpointAddress": "130.192.182.17:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "connection_reset", "TLSServerName": "www.example.com", @@ -318,22 +318,22 @@ "Failure": "connection_reset", "TransactionID": 40002, "TagFetchBody": true, - "DNSTransactionID": 1, + "DNSTransactionID": 20001, "DNSDomain": "www.example.com", "DNSLookupFailure": "", "DNSQueryType": null, "DNSEngine": null, "DNSResolvedAddrs": [ - "130.192.182.17" + "93.184.216.34" ], "IPAddressOrigin": "dns", - "IPAddress": "130.192.182.17", - "IPAddressASN": 137, + "IPAddress": "93.184.216.34", + "IPAddressASN": 15133, "IPAddressBogon": false, "EndpointTransactionID": 40002, "EndpointProto": "tcp", "EndpointPort": "443", - "EndpointAddress": "130.192.182.17:443", + "EndpointAddress": "93.184.216.34:443", "TCPConnectFailure": "", "TLSHandshakeFailure": "connection_reset", "TLSServerName": "www.example.com", diff --git a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/observations_classic.json b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/observations_classic.json index 728a59ce6..4768edeaa 100644 --- a/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/observations_classic.json +++ b/internal/minipipeline/testdata/webconnectivity/generated/tlsBlockingConnectionResetWithInconsistentDNS/observations_classic.json @@ -55,11 +55,11 @@ } ], "KnownTCPEndpoints": { - "40002": { + "40001": { "TagDepth": 0, "Type": 2, "Failure": "connection_reset", - "TransactionID": 40002, + "TransactionID": 40001, "TagFetchBody": true, "DNSTransactionID": 1, "DNSDomain": "www.example.com", @@ -73,7 +73,7 @@ "IPAddress": "130.192.182.17", "IPAddressASN": 137, "IPAddressBogon": false, - "EndpointTransactionID": 40002, + "EndpointTransactionID": 40001, "EndpointProto": "tcp", "EndpointPort": "443", "EndpointAddress": "130.192.182.17:443",