diff --git a/lib/mix/tasks/mobilizon/relay/follow.ex b/lib/mix/tasks/mobilizon/relay/follow.ex
index 43c29f45..db3f17d5 100644
--- a/lib/mix/tasks/mobilizon/relay/follow.ex
+++ b/lib/mix/tasks/mobilizon/relay/follow.ex
@@ -16,9 +16,10 @@ defmodule Mix.Tasks.Mobilizon.Relay.Follow do
{:ok, _activity, _follow} ->
# put this task to sleep to allow the genserver to push out the messages
:timer.sleep(500)
+ shell_info("Requested to follow #{target}")
{:error, e} ->
- IO.puts(:stderr, "Error while following #{target}: #{inspect(e)}")
+ shell_error("Error while following #{target}: #{inspect(e)}")
end
end
diff --git a/lib/mix/tasks/mobilizon/relay/unfollow.ex b/lib/mix/tasks/mobilizon/relay/unfollow.ex
index c368c3fb..697f16fb 100644
--- a/lib/mix/tasks/mobilizon/relay/unfollow.ex
+++ b/lib/mix/tasks/mobilizon/relay/unfollow.ex
@@ -16,9 +16,10 @@ defmodule Mix.Tasks.Mobilizon.Relay.Unfollow do
{:ok, _activity, _follow} ->
# put this task to sleep to allow the genserver to push out the messages
:timer.sleep(500)
+ shell_info("Unfollowed #{target}")
{:error, e} ->
- IO.puts(:stderr, "Error while unfollowing #{target}: #{inspect(e)}")
+ shell_error("Error while unfollowing #{target}: #{inspect(e)}")
end
end
diff --git a/test/fixtures/vcr_cassettes/activity_pub/fetch_tcit@framapiaf.org.json b/test/fixtures/vcr_cassettes/activity_pub/fetch_tcit@framapiaf.org.json
index f08815a2..7280516e 100644
--- a/test/fixtures/vcr_cassettes/activity_pub/fetch_tcit@framapiaf.org.json
+++ b/test/fixtures/vcr_cassettes/activity_pub/fetch_tcit@framapiaf.org.json
@@ -3,26 +3,26 @@
"request": {
"body": "",
"headers": {
- "User-Agent": "localhost - Mobilizon 1.0.2-180-gae03f849-dirty",
- "Accept": "application/json, application/activity+json, application/jrd+json"
+ "User-Agent": "localhost - Mobilizon 1.1.0-43-g36000152-dirty",
+ "Accept": "application/xrd+xml, application/xml, text/xml"
},
"method": "get",
"options": {
"recv_timeout": 20000
},
"request_body": "",
- "url": "http://framapiaf.org/.well-known/webfinger?resource=acct:tcit@framapiaf.org"
+ "url": "http://framapiaf.org/.well-known/host-meta"
},
"response": {
"binary": false,
"body": "\r\n
301 Moved Permanently\r\n\r\n301 Moved Permanently
\r\n
nginx/1.14.2\r\n\r\n\r\n",
"headers": {
"Server": "nginx/1.14.2",
- "Date": "Tue, 15 Dec 2020 14:14:45 GMT",
+ "Date": "Mon, 12 Apr 2021 09:43:20 GMT",
"Content-Type": "text/html",
"Content-Length": "185",
"Connection": "keep-alive",
- "Location": "https://framapiaf.org/.well-known/webfinger?resource=acct:tcit@framapiaf.org"
+ "Location": "https://framapiaf.org/.well-known/host-meta"
},
"status_code": 301,
"type": "ok"
@@ -32,7 +32,45 @@
"request": {
"body": "",
"headers": {
- "User-Agent": "localhost - Mobilizon 1.0.2-180-gae03f849-dirty",
+ "User-Agent": "localhost - Mobilizon 1.1.0-43-g36000152-dirty",
+ "Accept": "application/xrd+xml, application/xml, text/xml"
+ },
+ "method": "get",
+ "options": {
+ "recv_timeout": 20000
+ },
+ "request_body": "",
+ "url": "https://framapiaf.org/.well-known/host-meta"
+ },
+ "response": {
+ "binary": false,
+ "body": "\n\n \n\n",
+ "headers": {
+ "Date": "Mon, 12 Apr 2021 09:43:20 GMT",
+ "Content-Type": "application/xrd+xml; charset=utf-8",
+ "Transfer-Encoding": "chunked",
+ "Connection": "keep-alive",
+ "Server": "Mastodon",
+ "X-Frame-Options": "DENY",
+ "X-Content-Type-Options": "nosniff",
+ "X-XSS-Protection": "1; mode=block",
+ "Vary": "Accept, Accept-Encoding, Origin",
+ "Cache-Control": "max-age=259200, public",
+ "ETag": "W/\"4a5299e847275a5957709037c73a2295\"",
+ "X-Request-Id": "82f2617c-9c56-4eda-baa1-bee62e981172",
+ "X-Runtime": "0.003007",
+ "X-Cached": "MISS",
+ "Strict-Transport-Security": "max-age=31536000; includeSubDomains; preload"
+ },
+ "status_code": 200,
+ "type": "ok"
+ }
+ },
+ {
+ "request": {
+ "body": "",
+ "headers": {
+ "User-Agent": "localhost - Mobilizon 1.1.0-43-g36000152-dirty",
"Accept": "application/json, application/activity+json, application/jrd+json"
},
"method": "get",
@@ -46,7 +84,7 @@
"binary": false,
"body": "{\"subject\":\"acct:tcit@framapiaf.org\",\"aliases\":[\"https://framapiaf.org/@tcit\",\"https://framapiaf.org/users/tcit\"],\"links\":[{\"rel\":\"http://webfinger.net/rel/profile-page\",\"type\":\"text/html\",\"href\":\"https://framapiaf.org/@tcit\"},{\"rel\":\"self\",\"type\":\"application/activity+json\",\"href\":\"https://framapiaf.org/users/tcit\"},{\"rel\":\"http://ostatus.org/schema/1.0/subscribe\",\"template\":\"https://framapiaf.org/authorize_interaction?uri={uri}\"}]}",
"headers": {
- "Date": "Tue, 15 Dec 2020 14:14:45 GMT",
+ "Date": "Mon, 12 Apr 2021 09:43:20 GMT",
"Content-Type": "application/jrd+json; charset=utf-8",
"Transfer-Encoding": "chunked",
"Connection": "keep-alive",
@@ -57,8 +95,8 @@
"Vary": "Accept, Accept-Encoding, Origin",
"Cache-Control": "max-age=259200, public",
"ETag": "W/\"faab8ee8c2b4d8858c5d58028878f99c\"",
- "X-Request-Id": "b5fb66c6-49e7-428b-a1f2-ac82459f8777",
- "X-Runtime": "0.009471",
+ "X-Request-Id": "06fdc081-d68e-4f5b-a6e2-1e9dd6cd730a",
+ "X-Runtime": "0.003687",
"X-Cached": "MISS",
"Strict-Transport-Security": "max-age=31536000; includeSubDomains; preload"
},
@@ -81,7 +119,7 @@
"binary": false,
"body": "{\"@context\":[\"https://www.w3.org/ns/activitystreams\",\"https://w3id.org/security/v1\",{\"manuallyApprovesFollowers\":\"as:manuallyApprovesFollowers\",\"toot\":\"http://joinmastodon.org/ns#\",\"featured\":{\"@id\":\"toot:featured\",\"@type\":\"@id\"},\"alsoKnownAs\":{\"@id\":\"as:alsoKnownAs\",\"@type\":\"@id\"},\"movedTo\":{\"@id\":\"as:movedTo\",\"@type\":\"@id\"},\"schema\":\"http://schema.org#\",\"PropertyValue\":\"schema:PropertyValue\",\"value\":\"schema:value\",\"IdentityProof\":\"toot:IdentityProof\",\"discoverable\":\"toot:discoverable\",\"Device\":\"toot:Device\",\"Ed25519Signature\":\"toot:Ed25519Signature\",\"Ed25519Key\":\"toot:Ed25519Key\",\"Curve25519Key\":\"toot:Curve25519Key\",\"EncryptedMessage\":\"toot:EncryptedMessage\",\"publicKeyBase64\":\"toot:publicKeyBase64\",\"deviceId\":\"toot:deviceId\",\"claim\":{\"@type\":\"@id\",\"@id\":\"toot:claim\"},\"fingerprintKey\":{\"@type\":\"@id\",\"@id\":\"toot:fingerprintKey\"},\"identityKey\":{\"@type\":\"@id\",\"@id\":\"toot:identityKey\"},\"devices\":{\"@type\":\"@id\",\"@id\":\"toot:devices\"},\"messageFranking\":\"toot:messageFranking\",\"messageType\":\"toot:messageType\",\"cipherText\":\"toot:cipherText\",\"Hashtag\":\"as:Hashtag\",\"focalPoint\":{\"@container\":\"@list\",\"@id\":\"toot:focalPoint\"}}],\"id\":\"https://framapiaf.org/users/tcit\",\"type\":\"Person\",\"following\":\"https://framapiaf.org/users/tcit/following\",\"followers\":\"https://framapiaf.org/users/tcit/followers\",\"inbox\":\"https://framapiaf.org/users/tcit/inbox\",\"outbox\":\"https://framapiaf.org/users/tcit/outbox\",\"featured\":\"https://framapiaf.org/users/tcit/collections/featured\",\"preferredUsername\":\"tcit\",\"name\":\"💼 Thomas Citharel (Work)\",\"summary\":\"\\u003cp\\u003e\\u003ca href=\\\"https://framapiaf.org/tags/Framasoft\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003eFramasoft\\u003c/span\\u003e\\u003c/a\\u003e \\u003ca href=\\\"https://framapiaf.org/tags/FreeSoftware\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003eFreeSoftware\\u003c/span\\u003e\\u003c/a\\u003e \\u003ca href=\\\"https://framapiaf.org/tags/Activism\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003eActivism\\u003c/span\\u003e\\u003c/a\\u003e \\u003ca href=\\\"https://framapiaf.org/tags/wallabag\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003ewallabag\\u003c/span\\u003e\\u003c/a\\u003e \\u003ca href=\\\"https://framapiaf.org/tags/Federation\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003eFederation\\u003c/span\\u003e\\u003c/a\\u003e \\u003ca href=\\\"https://framapiaf.org/tags/Nextcloud\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003eNextcloud\\u003c/span\\u003e\\u003c/a\\u003e \\u003ca href=\\\"https://framapiaf.org/tags/Mobilizon\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003eMobilizon\\u003c/span\\u003e\\u003c/a\\u003e \\u003ca href=\\\"https://framapiaf.org/tags/Libre\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003eLibre\\u003c/span\\u003e\\u003c/a\\u003e\\u003c/p\\u003e\",\"url\":\"https://framapiaf.org/@tcit\",\"manuallyApprovesFollowers\":false,\"discoverable\":true,\"devices\":\"https://framapiaf.org/users/tcit/collections/devices\",\"publicKey\":{\"id\":\"https://framapiaf.org/users/tcit#main-key\",\"owner\":\"https://framapiaf.org/users/tcit\",\"publicKeyPem\":\"-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApscVCt06lrIiB5jT6Kqk\\nZZwPVoPkhR7HzoTGb8rnklZuOyP4goHIuBDnurklztkmDCaM7DbsUWAPgRVtwWFE\\nWuQrOenb7BPRe/m99pJfUTkBQU3IeuRMD/5Fc3OTIhHQOltTSiB900srCUxjysfw\\nnV5JFciCz8YAXTNJZD34qyv8DbtC/pCJM7wMd9Hl3ohxSPETa6CJUaTdlNwlYJa2\\nMOMCj6/7Iv5oAg14FT9lwqS5lF7jPHk9Z7PNc2wPmNVgIYA2n9d5k7JY8TdM8iu4\\nHLnIbJuqDd1uitlYgy1qsdsxjv4U2Y7Nytc+3ZKHtGsCzUltYL5kC7uWrFpGoWo1\\n0QIDAQAB\\n-----END PUBLIC KEY-----\\n\"},\"tag\":[{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/activism\",\"name\":\"#activism\"},{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/federation\",\"name\":\"#federation\"},{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/framasoft\",\"name\":\"#framasoft\"},{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/freesoftware\",\"name\":\"#freesoftware\"},{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/libre\",\"name\":\"#libre\"},{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/mobilizon\",\"name\":\"#mobilizon\"},{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/nextcloud\",\"name\":\"#nextcloud\"},{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/wallabag\",\"name\":\"#wallabag\"}],\"attachment\":[{\"type\":\"PropertyValue\",\"name\":\"Personal account\",\"value\":\"\\u003ca href=\\\"https://social.tcit.fr/@tcit\\\" rel=\\\"me nofollow noopener noreferrer\\\" target=\\\"_blank\\\"\\u003e\\u003cspan class=\\\"invisible\\\"\\u003ehttps://\\u003c/span\\u003e\\u003cspan class=\\\"\\\"\\u003esocial.tcit.fr/@tcit\\u003c/span\\u003e\\u003cspan class=\\\"invisible\\\"\\u003e\\u003c/span\\u003e\\u003c/a\\u003e\"},{\"type\":\"PropertyValue\",\"name\":\"Location\",\"value\":\"Nantes, France\"},{\"type\":\"PropertyValue\",\"name\":\"Works at\",\"value\":\"\\u003cspan class=\\\"h-card\\\"\\u003e\\u003ca href=\\\"https://framapiaf.org/@Framasoft\\\" class=\\\"u-url mention\\\"\\u003e@\\u003cspan\\u003eFramasoft\\u003c/span\\u003e\\u003c/a\\u003e\\u003c/span\\u003e\"},{\"type\":\"PropertyValue\",\"name\":\"Website\",\"value\":\"\\u003ca href=\\\"https://tcit.fr\\\" rel=\\\"me nofollow noopener noreferrer\\\" target=\\\"_blank\\\"\\u003e\\u003cspan class=\\\"invisible\\\"\\u003ehttps://\\u003c/span\\u003e\\u003cspan class=\\\"\\\"\\u003etcit.fr\\u003c/span\\u003e\\u003cspan class=\\\"invisible\\\"\\u003e\\u003c/span\\u003e\\u003c/a\\u003e\"},{\"type\":\"IdentityProof\",\"name\":\"tcit\",\"signatureAlgorithm\":\"keybase\",\"signatureValue\":\"f66b45be42803010fe2f4d80e729b41bbe5ed056e2ff1286b7b5a5ea9c724cc70f\"}],\"endpoints\":{\"sharedInbox\":\"https://framapiaf.org/inbox\"},\"icon\":{\"type\":\"Image\",\"mediaType\":\"image/jpeg\",\"url\":\"https://framapiaf.s3.framasoft.org/framapiaf/accounts/avatars/000/000/001/original/da0cad7ffd20eb61.jpg\"},\"image\":{\"type\":\"Image\",\"mediaType\":\"image/jpeg\",\"url\":\"https://framapiaf.s3.framasoft.org/framapiaf/accounts/headers/000/000/001/original/198d058b3086d82d.jpg\"}}",
"headers": {
- "Date": "Tue, 15 Dec 2020 14:14:45 GMT",
+ "Date": "Mon, 12 Apr 2021 09:43:20 GMT",
"Content-Type": "application/activity+json; charset=utf-8",
"Transfer-Encoding": "chunked",
"Connection": "keep-alive",
@@ -92,8 +130,8 @@
"Vary": "Accept, Accept-Encoding, Origin",
"Cache-Control": "max-age=180, public",
"ETag": "W/\"5d358dbfda8db0e851d1476b22a4afa0\"",
- "X-Request-Id": "daf7c5a4-cb52-400a-9251-564ef55bce03",
- "X-Runtime": "0.039586",
+ "X-Request-Id": "21d6d06d-ec25-45a4-95a0-d2f69afe4325",
+ "X-Runtime": "0.016197",
"X-Cached": "EXPIRED",
"Strict-Transport-Security": "max-age=31536000; includeSubDomains; preload"
},
@@ -105,7 +143,7 @@
"request": {
"body": "",
"headers": {
- "User-Agent": "localhost - Mobilizon 1.0.2-180-gae03f849-dirty"
+ "User-Agent": "localhost - Mobilizon 1.1.0-43-g36000152-dirty"
},
"method": "get",
"options": {
@@ -119,7 +157,7 @@
"body": "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",
"headers": {
"Server": "nginx/1.14.2",
- "Date": "Tue, 15 Dec 2020 14:14:45 GMT",
+ "Date": "Mon, 12 Apr 2021 09:43:20 GMT",
"Content-Type": "image/jpeg",
"Content-Length": "4297",
"Connection": "keep-alive",
@@ -127,8 +165,12 @@
"x-rgw-object-type": "Normal",
"ETag": "\"0198adc7595a8c7b0730df99f9d9aa6c\"",
"x-amz-meta-s3cmd-attrs": "uid:1008/gname:mastodon/uname:mastodon/gid:1008/mode:33188/mtime:1491844231/atime:1551282313/ctime:1491844231",
- "x-amz-request-id": "tx00000000000000036d87e-005fd88d90-1b195dc-default",
+ "x-amz-request-id": "tx00000000000000117856f-0060740df3-3e40cf4-default",
"X-Cached": "HIT",
+ "Access-Control-Allow-Origin": "https://framapiaf.org",
+ "Access-Control-Allow-Credentials": "true",
+ "Access-Control-Allow-Methods": "GET, POST, HEAD, OPTIONS",
+ "Access-Control-Allow-Headers": "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,X-MM-TokenIndex",
"Accept-Ranges": "bytes"
},
"status_code": 200,
@@ -139,7 +181,7 @@
"request": {
"body": "",
"headers": {
- "User-Agent": "localhost - Mobilizon 1.0.2-180-gae03f849-dirty"
+ "User-Agent": "localhost - Mobilizon 1.1.0-43-g36000152-dirty"
},
"method": "get",
"options": {
@@ -153,7 +195,7 @@
"body": "g20AAG+S/9j/4AAQSkZJRgABAQEASABIAAD/2wBDAAYEBQYFBAYGBQYHBwYIChAKCgkJChQODwwQFxQYGBcUFhYaHSUfGhsjHBYWICwgIyYnKSopGR8tMC0oMCUoKSj/2wBDAQcHBwoIChMKChMoGhYaKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCj/wAARCAFPArwDAREAAhEBAxEB/8QAHAAAAgMBAQEBAAAAAAAAAAAAAQIAAwQFBgcI/8QARRAAAgICAAQEAwUFBgQEBgMAAAECAwQRBRIhMQZBUWETInEUMoGRoUJSYrHBBxUjM3LRQ4KS8CRjouElU4OywtIWNUT/xAAbAQADAQEBAQEAAAAAAAAAAAAAAQIDBAUGB//EADsRAAICAQMBAwsEAgIBAwUAAAABAhEDEiExBBNBUQUiMmFxgZGhsdHwFELB4SNSM/FyBhUkNENEYoL/2gAMAwEAAhEDEQA/AKqIHLJntRRsgiLLosiiQHQhG3hHOuIVOiUI5C3KlzScfiJbgnvpptJfiVB1Izyq4NH1rxD4u4dieCqePZGLPNw7Yw5q64RnyuXRqSfRae099mdjyQWPtJLb4niqOTtOzi6Z8tx+PeGOM5DfD658HzJy+V0v4Sb94PcH+jNem/R5n/hyOEvz3Fy/UYvT3R0viZeFzRz6o5FUf/8ARjp6S/jr+9H6ra9ztk82D/nja8Vx70EckZ8OmX0NTUb8O1LzjKD6fmS1HItUWbJuIb6sbKb+2V/Bvf8Axql0f+qPb8Vo4svSxlzsbQyOPos5Wbw2/Fjz6VlL7WQe1/7fRnBk6acPWbrLF87GFo5waBoYqIgGMhjoIx0FAOgoAoLGFFNrLiFGOw2Q6K0upQUWxRLAvgQyaLokiLIkgWREBdATGXIgYwDAMCCGEQEEARAFDAuqr31fYTZLZdvS0ughURbGVRAKoD1LpJAOqKLauXquxSkaRlZWMsK7iGWwEItRLAeIgL12RIEGMYZRGhgBopDFGMaC+ZA3sM5Wbr40vqdWPg0Rzr3pGyNEczJfVlo0Rhn3KLRXoCiaHYwpCGhkgGMoisY6rk+yYWO0FQa8hDTJyiKGSAaGSEUMkBSGSEUMhDQ6EUhkIpDoRSGQi0MhDGQihkBLLa0BEjfjR6oDmyM6dEOiEck2a64ENmDkaIVktmTkXxrIcjNyLFWKyNQ3w0KxaifDCw1C/DHY9R8cqj0Ops4ki6JNlFiQhDIQDJCYjbVRiZmPdRZlZHDMi1NO+puVF2+6vq7Pf7y0/XfcePzdk6+nvXDMM+NzetK3+cM8R4h8NcQ4Bkx+LQoV2r/DlGXxKL1/BPz+j6/U583TywvVHh+9P2fZ7+FkQyKez/tfnijoeHfEGVTKFONlKu2L0sXMm+Rv0hY+sH7P8z0eh8qZcfmRl/8AzLj3Pu9jObP0sXu1719j1uNxvDnk8nEab+E5zem5rkU39dcsvxX4np9v02SXnp4Z/J/wzmUckFcXqR6CG5RXNyXxfaVa6/8AT/s2dEsWXGrmrXivt/2OOaL9TE38CXNj3Jb6OD7P2aOeWj9rOlN0ZcrFx8mX3Y413pr5Jf7fy9jly9PCXKpjjJr0WcnJxLcefLZFpvt7/T1OHJ004cbmscq4lsyg5zUZDGgjKogDCAAkykFGexmkR0Z5dzRDoCQxUWRRLE0XQIYmi2JIiyIhUPEQF0GSwLosllDCGQACMACGEQiEgW1R2wbEy9+iEQRDKGQFIjEUKMYV1WmIDPZHlk0WnZqnaAgKHTEIsTExlkWIRog9xI7wGQxkSGUg6GMg7GDRQEWoxcn5C52GcXJluTZ2R2RqjnZEjRGiOdd12WmaIzyiVZaE5AsYVALGFQCxmvCwbcqxRri2KyMmVY1bPS4nAceiKeVPml+6hWefPq5y2gboY+DX0jjRf1CzLXlfLJPDwLukqOX3iKxrJljwzm53h5crniS5l+75hZ14ut3qZ562mVU3GaaaCz0oyUlaFSAtDJAUHQihkhFIZAUhkIpDokpDIRSGQFDCAZdgEy+pdQM5HRxY9hM5MjOtjw6Ils4ZyN1VZm2c8pGiEDNsyci1LRJFh0FiCkICaGBNBYHxiC6HW2c5bFE2UWJBYUWRiTYUMoisKGSCxUb8DiNuNRZi211ZeBb/AJmLfHmrl7r91+6NMeZw25T5RllwRyb8PxOVxfwZi8UrnkeG3Za4rc8C2S+PWv8Ay5drI+z6/QMnS486vF8O/wBz7/Y/czn1zwusnHj3e/wOPwXxFn8Cg8XPqXEOFJ/DlTdHbr/h1L7r/hfT09ScHXZelWjKtePin3fHj2P3E5emhmeqPmy/PifQOAcH4Tx2h5HhTi0+H2/tY01z1qXo4P7v4fhs9jBKDj2vQzcV3rlL2xfHuo87K543pzxv1/2WZdXFsPceK8OjmVx6facF/F1r1j/mR/U1fURyf/U49/8AaP8AK5+o4+bvjlXqf5QmHk4uXXJUZFd9a6ShJ6lD8fL8UilBSjeKSnH5o07besip/IusrnXU1pX4z7xku3/fqjKUGlqjuvmjdNS2Zz78CNqc8NuzXeqT+dfR+ZzTxQy7lJSh6HwOY46m49eZd4taa/A4smGUPWb480ZbPZk2ZG9EAdEbGFFU5FJBRnnI1SGV76lBQ0RMB4iYi2JIqLESIdMRI6YgLYMlgXRZLGh0xFB2AB2AEEBBAEQGij7rZLIkOAgoBoKYFIgywAAV3EMryF1THFlQKkUaDIQDbExjxkIKL6p6YmBevYSAZIZQ2kMdE0hgBxYAY825KPJF/U0xrvZUUcm5nQmaow3LZaZojLOGy9RaK3UGopA+EGooPwg1DLsTElfdGEV1bDUTOairPX42PXg0qFaXO+8hajypyeV2wPcn16jsdUaKcaU+r6IzllSIlNI0xx6o922Z9o2RrkyyEK4vptBrkS3JmHjPBq8yl20a+Kl1XqUsvidPTdW8UtMuDxd1E6ZuM000aqSfB7sJqStCaGaIiQFIKQFIZIRSGQikOhFoZCKGQDCIB4+QEsvq7oDOR1MNb0Sziys7eNDejNs8/JI6NNEmuxjKaOSWRGhY8vYz1oz7RAdMl5D1INaYmmu4yrIAyAARgfGII6WYpF0Ik2VRbGJLY6LEhWFDJBYUNoQqJoAoNc5VzjOuUoTi9xlF6afqmNNp2hOKezOjlLB8Q9OKSjicT5eWHEYw3Gxfu3R7SXudSyRy7ZNpcX/DXevb8jinglj3x7rw+x4/M4PxXw5xlPCUsTiUVzwqhLmhkQ/eql2nH+B9fqc/6fJhyaun82fh3P8A8fH1xe69Ya4ZYVk3j9Pb4e09x4d8TYHjKuGLxFrA49WtV3R2via8vVr27r3O7B1GPrlXo5F8/Z9jlljydG7XnQMnGIZOPmuritUbMiv7tsvv68nGxalr8TKWTJin53Pj3/Hk6FixZo6ocMqx822l81Fst/xa2/r01L8Vv+I6sfXyTt/n39695g+kcfQYmTxOMn1j9lu3va3yv3Xo/wA17lSyY8nnR2f58Pp6yJSyQ2kjfVnYmbCNfEfltS1HJguv/N6opSjJecJSU9p/EzZ+Hdi2L4kVKqf3Lo9pGGXp09zaOWeLaW6MU9x79vJnHLG4Pc7YTjNXEqlMEiymc9miQypyKQEQwGiSwLIsTEWIkB0xEtDpiEMmIQ8ZCAuhIljLoskY2xDJsLHQRATYgoOxBRoofyMlkSW46CxB2AE2MaDsC0TYDIhALkPohxKgUIo1GXQVgRMkY6YAW17bEOjTCWugDotjJMQUN09R2MjlFd2MCqd3ki0hpGDLh+0uxqmWkYJrZVlIolXsrUWmJ8H2DWWmT4HsGsdh+B7C1jsnwA1js6/BMdV81rXVdg1nL1Er802y25bHqMUqNOPUkuaREp9yMpvuRe5b7diTPSTY7HQUFhRdRPll7MdkyjaOHxzDhO+cdafdMjU4M9DpcrSs8zdU65uLXU6oytWetCWpWitxKs0RNBZaGSCy0FCKQyQFoKEMdCGQAHiBLNFPcRlI7HD4OckkjOTo4M8qR6nDx41wTkvmOWU3Lg8bLkcnsbE+hBhRNgIKk0FBRJRU17gnQ02jNOLi9M0Ts1TsAyiAB8brRu2ZIvhEhstIuihWVQyEBAJoICIFgQAIMDo4+Zj5OD/dnGq5ZHDXLmg4vVmNL9+t+T9jfHlTXZ5N19PYc+XBb149pfX2nD8R+GbXk1Q+NH+9J/4mDnVvkr4jFdlv9m5fqXm6btpc/wCTul/t7fCXr7zmhl0J7eb3rw/o6/hTxJT4noXh7xI/s3GqdwxsicdOUl3jJevqvPuuprhz/qV2Ofaa+f8Af1MMkH0su1xbwfKMHEcbI4bm2Y2VBwtremvX3XqvcwnieN0zuhOOWKlHgSORGUOWyKnHzTKSsGu4r+zOD+Jw+cdedFj6P6PyLSlHeO5hPp4y42OnwfjPwubGya3Ov/iY1q6peq/3XQ7MORPb5HO9WPzZLY2cRwYrHeVw+XxsNrcovrKv6+3ubSxJr1Cpw8+DOBctbcX09PM4smDTuuDtw9Qp7PkzOZnR0g5hhQyYgHj3JYFkRCHTJYDJiEMmAgqQhUMpCEWwkSxl8JkMZapCKGTEAdiAmyRk2AUXUS09PzEyZItfRiIBsYE2MQUwLQ+xFDRQMZTdLmmNGkVRXsLLJsVgFCsdDoVjo0VLS2KxjhYxkx2FEcug0OhXItALsoZNcycX5jsZhnXqTQ9RQPhC1FInwxah2TkCykTkCx2TkCxnUw48uL082FnNk3kWQjuSByol7Gn2RKZjpCirFQUVYqGQWFDR7hYqMfGl/iVy89EzN+m4aOFxOlNRsS79ysMu49Lp5ftOW4nVZ2Jk0FlomgstE0FloZICkFIRQQGFIBDRATNNK6olmUz1fAqFGr4sl9DjzTt6TxOsyW9KO3W9mR57LUBDCMRAAgACyPPD3QJ0wi6ZmNDYIxnx2ldDaRETTBdDNs0Q4gCAEAQQFQAEQAIAEGNI34GbQ8WzhvFoSu4Ve9yjF/PTPytrflJfqdOLIq0T9H6HPnwOXnw2kvn6mYPFXhXJ4xaqq5xl4ipq+Ph5VXyw4pRHtJPytj02vU6c2H9Qrb/yLh/7L7/T2Pbzo5ex5XmPlf6v7GjwrxyPj3hM+FcS1X4pwIP4UpLleVCPdP8AiXmvXr2b08OX9RHRk9Jfn/ZD/wDhz1R9B/I4NjnRbKFicZRemmtNexm4uDo9TaSsivcGnFjquBVZo+PVlRjG9fNHrGaepRfs/I0SUt+8UopqpGrA4nl8JyFZGfPW+jl2Ul6SXk/ft/I6ceRrZnHPE8T1R3R0OI8NqzMWXE+FvVS63Y6XWr1a9vby+nbdx70YTiq1R4ODZFS6w6td/c5cuH90Tr6fqb82ZUpHKdo8WICyLJYixMTAbZIDKQhB2AqJsQhlIQUPGQmBbCZLGXwmQxosU0JlDcxIE5hDJzAOgfE09gKjVVcrFrfzE1RlJUFtoZFg5hgNFgWiyO2SUC21QWl3BFxjZn5mxmtBTAdDIkZZXByfQTYcGuFMY/e6k2TZoiopLSJse4dRfdDsNwSq390aY1IpmmnplplpiMtDIkOxjRXUVgVWw+dhYxOUVjJyjsoDiFjQOULKByhYzdhvdTj6AY5FvZfUvmE2ZyLRWTQUUmJoZFWS0FDsRZWtyQxM5/FpKV+l5LRMmdPTxqJz8mPNiv2ZMHUjqxupnIcTss7kxXEdloHKOy0yaEaIKQFIKQFB0ICaGA8UAmzTjrc0iW9jGb2PZ4q5MaqK9NnnN3Js8DI9UmzbW+gHNIuTGQHYCIABAAxfXQCZmn0kzRG0eBdjGfH6OxtIiJqj2M2ajoQEACAIgBRNgKiAFE2MKAMdCTZSA6XCc2u2mPDc7Inj1q1XYmZH72Feu01/C+0l5pnZgyftfu9Rw9Xg1LXFb968Ucb+0Hg2ZY7fFfCK/sHiXhFsVxXHo7KS+7k1+sJLr7p9ezNs+Nz/AM0NpLn8/LXrR5uGaj/hnvF8fY2ZedjeMvDtfiXAhGvLg1TxPHj/AMK3XSa/hl6/+5aazw1Lk36aTwz7CXu9ngebU9PlZkvBnoPxJz6Y+ANWPl/sWaafTqaxlezJao6XDM+7hmTG3Hk3V2lDfkdOObi6Zx5MWjz4cd6OnxfAojTDiXD4pYlr+aC/4Un5fR/o+nobuNccHJONbrg4OVBbdlf/ADL+pxZ8NedE7ul6jV5kuSiMjjZ2lsZEsCxMQG/G4dm5KUqsezlfaUlyr82bYukzZfQic+TqcWP0pHRXh6+EObIyKa/Zbkztx+SMsvSaRyy8p416KbMORi1Ut6ulJLz5dbNX5JhHmfyMX5Sk+ImKU0n07Gb8m4/9mH/uE/8AVCfGS7oxl5PXdIqPlDxiPG6D89fU5p9FkjxudEOtxS52L4y6b8jklFxdSVHXGSkri7LIz9yGVRYrCaGMrBUUH4nuKhiuwVAK7B0AvxnF7TKoGrNVXEOmrFslw8DGWLwL45VEvNoWlkaJIf7VRHs2xaWUoSFlmcy1Dog0m0cdciKW+4GyQ8WIKHRNgW1xcnolsDbCKhHS7kNk8jIVgWx6oVjGQ7GMmMkNkFZHa+8ik6BSoxtaejRM1QUh2MeK6ktgV2dZMLKQugsYrQ7GTQFA0AwaGUizGnyWewEzjaN8dc212ZLMGN5iEEaYqGRSZNDIqxUWOaprc338h2So6nRx7ZOc3J+Zm2d0VSoqyumPr1HD0i8e8jmOB02dqYrgVZaYriOy0ycoWWmTkCy7GUAsdhUAsNROQLFqGjAVibNGOtWRYpcGc3aPX1Pddb/hR5/ezwpLdmqt9AMJIuUhkNDKQxUHaARAAMe4CZnte5s0XBrFbCbGUfH6H0RvIyiaoMzZqixMkYQGQAIIRAAAwIAAbKQFcmUgM9vZmkRM9LwTiV99deTRB38W4ZU4unv9vwv26WvOUV80fy82ehhy9/evz4r85Z4vW9Olv+1/J+Pv7zxnEq6v7OPGuPxbh6eV4L49V1jHrGVMusof6ob5o+3T1M51gya4+i/z+0Zwbzw0vacTT4j4b/d3EJwrsVtEkp1Wx7WVyW4SX1TRpkXej0cOTtYKX5fecpttJ+fZk3e5qDYAa8TIaajJ/Rs2hK9mQ1R6Xg2dXitxsj8TAu/w7q5PpFv+j8n5fVHZjmn5sjhy49G/c/kU8U4e+H5rgm50TXNVNr70ff3XZ/8AuU41szjdxZxsiv4VnT7r6o83Nj7OVdx7HT5u1jfeLXKdtqpx6rL7n2rri5P9DCr4NJSUeT2XAOAfZYwy+MTqjd3hQ3tQ95a7v27I6cLwYvPyPU/Bfc5s2Pqc6041pXi9jrXcTwq5uVuTOyX8KS/3OqfliVVjgkYQ8kQXpz+CObk8V4fb99XWdfObX8jnl5T6iSq69x0x8n9NHub95gtu4RY+uPb+FsjB9bnf7i/0nTf6/NlEqeE2fdeTW/XnT/mhfrcy/d8iX0PTvua95RPhVNi3jZsW/wB22Ov1Rcevn+5WYz8mQfoS+JhysLJxk5W1Nw/fh80fzX9TePWY5bPb2nJk6HNj3q16haJyaSi+nfp5mzSmqe6OaLlB3F0bWuSpTsem+yOLN0Kq8fwPQw9c1tk+IOY8+WOUdmj0YzhJWmHmIotE5hFUBzCgFcgGK5DQUK5FDoikwCiyMhBRfXMljNMJkMZfGWyGMtiyWBsxI95ehnJkyNHcmxBFYFkH5AOx0FisZDAeD0yiWUZMNWdPMuLNIPYrQ7NB/ux9xWBSwKBoBkGUgaAZGhjBoBi6GM0Y93L0l2Bmc4XwblqS3FkGPGzJoBjRTZSZLC5wrW29v0KsWlyMWRdK2XsS2bwgolUY7YrLZny5c8tLsjTGq3NsSpWZeQ1s3TA4DTKTFcCrLTB8MLLTGVYWPUOqhWGob4QWLUT4YWGoKrCxah4Q0xNkuR6Hh9nPjpecTkmqkeXmjUrN0GSc7RapARQVIBUHmGKhuYYUHn5YthyKrdGSU9tmhsog5xjo+QUvodMkc0TTCRm0aJlqkQ0VYyZIw7AYdgANgBNgIDYwFZSADQ7AScehSY2DEuuwcynKxZuF9MlOEvRo1hNxdoxyQU4uMuGeuzOEYfibgmTwLUasLi6nm8Lk+2JmR620+yb3JL0lP0O11kjp7nx7fz+TwZKWDJq71s/Wu5/nqPAeE77c/wAPZHBOJRcOJ8Dk4RjL7zx3LTj/APTn+k/YwwZLi4S5j9P6PQx1HJtxL6/2voUypcJuEvoNSp0zrKpQaKTATWirEdDBvfZ9emmv3l6HVjnqXrMpx7nweh+3Y+RwWdGRY/tFCc8Zd5T/AIEvNvt9eU65Zo9ncuUedPDJvSjHjcOnKEcjj0vs1XeGJW92P/XJdn7I8vL1Xad2x6PTdC8XnZHXqNM+OV4lTp4Vj14tetPkXWX1fn+Ji7lydWqMPQRzLs6++W7LJP6smkQ5N8lXPJ92IQUyWwoZCGEVhQyk12YrCjRRm3Uv5ZMNQbrg10ZGNbapWVRUt/Mu0ZfVf1WmbYs0sfoP3dxjlw48vprfx7zZZi1ZjrhLG5OVfLbjty5v9Sb6/VaPQxdZjkqns/kckvJ8k9t14r+ULPw/S47qz5qWttW4zX8m/I2XUQ7mviYy6Ca/6ZnlwDIaboysaxLttyrb/wCqKNFJSMX084mXK4ZnYPJPLqUKpS5Od2Jx39UxdlCXMV8BOWXHvb+J0eHcGu4hiRyMfEvnCTaUoZFXk/SWmRLpOn74lrrnHZyf57jU/Cuc+2Hnr6Qrn/KZm+g6d97RtHyl/wDt8iqzwrxBdsbOX+rDk/8A7WzN+T8L9Gf0NV5Sj3tfMx38BzKfvxcX/wCZVZD+cSX5Mf7Zo2j5RxvmviZv7sy9/JCM/aFkX+mzKXk3qFwrN49Xjl3lVuPfj/59NlfvKLSOPJhyY/Ti0bxnGXoskHoxZZohIhgaISIYF8JEMZ0sX/Jb9zJ8mcnuWokBgAZABZGSfcAH0NMB0OwEylvl9SosrGUrUe5VmgrexDFYykBgMg0UQBkGMDQDBoYE0Ayyqbj59CWJxs0qyWujJsz0oDnN+bHY1FFbTfcLHVEUPULCyu2elqJUV4lxj4mZx2ao3TF5R2OycpVlJg5AsqxlWFj1DqsVhqG5AsLByjsLBygOyaABooBNm3DtdU0/IzmrRz5YakdiuSlHcWc72OGSrZliYEUHYCoPMOwoZPzfYViaM99+3pdkaRVGkIUU85ZppJzgGk+R0y6HZJHnxNEWZtFosUiaKTHUyWh2Nzk0VZOcKCw8wUFg2FBYUMBktisYyiFlIDQ0wZVJFpmbO54aundVfwyFirvslHJwbH2ryq+sH9JJOL9mdOCTfmfD2nn9ZitLJ4bP2M4nj+VfD/EnBfG+BU4YfE0686j921Lkurfu1v8AGOyM8tE451w9n+fnBh096XifK3X8fnrBxXFjC3cJKcH2mu0l3T/FaY5uj0k73Xec+yrfXRSkIzyr0WpALFOE1KPdGkZ6XaJas5vCvEWYuPqePS1Bf4cquVNQWnubl5PstfUjLLtX6jHBllCdr2ew7eRk25E3KyTbYbI6XJvkSKEItSJYDxRLAdIhjGSFYw6FYyaFYEJsAoVhRpx8y6j/AC5tfQbkNWuDTHi+Wv8AiN/Umy1OS7yxcZvf3+WX1imA+0kZOIZVubPG5a6FGtzc+nWSlCUdL6OW/wADSGXRJO9jn6jF20dKSXuOnwjMrx+HYuJncI4JxJU1qDtvjPHunrzc0ppv8jsx9W6SU79u33POn0M07r4fiOgqvDmQm7/DXGcX+PhuRHKivwUnL/0nTHqcvg37Kf03+RzS6fTy69uxknieEpWcmN4uzeF3+VfEKZ1NP6tR/mUuvSdSde3b6mb6aVWlfsN1fhzxO6nb4d8TUcTqXVfZuISTf6tfqdEeojLfZ/nvMXjS5Ry8/jHjPgqf970cQdce87caGRD80maqa/1+G/03+RGmL4f8HR8NeK8bjMbKbY4crEnv7PBVzX+qt9GvwRthcM9xUr9T/vdDl2mPdNnzfF8QTyPF+TwpUQ+CouyE4vrDpvTXmuqPkZyTm64tn02PI9SxvwPTRIbOgugyGBogyWB08CW4SiZSM5GhECGQWMKABgAeMmMCyM3sYFOXa+fS8iomkEUJ77lFjoQyBZQBjIMpAGAQKIAA0AwpAMZIQDxTQhD7kg2FSFc2vIdDUSuTb7lJFJJCuIygOI7HYriVZSYOUdjCohY7HUBWFjcoWOwOI7HYGh2OxWgGTQwIhCLYdBEs2Y90odmZtWc84Jm+GRFr5kZuJzvG1wWKyv1FTI0yA74Lstj0sOzbKbL3P2RajRpGCRVsouibAKJsAo+R0S2jvkjyomqL2jNo0QyYqGNskdk5hDsPMKgCmAx4ksEXQiQ2UWJCspBCyhZFIllci0ZthpnOm6FtUuWyElKL9GntFKTTtENJqmdzi2PXxnhnGuDQgtcSofF+Hr9zJrS+LBf6l/8AkdGRLJGUPHde38/k86cXilHJ7n+fnceT8LZa4j4brhJ7txf8F778veD/AC6fgcmHJqjR6MV5vsNDgaKQimyo1UhGedZomBXyJb0ktvbKsQyiADxWhDHSJYFiIYx4okY6RLYwiGTRNgDQgJoQUHQWOiCsBq4OTE5UNINGbiVcUnj50p04dOM8i7Igud19UkuXp3b1+JeGMMknrdJK2/Axz5ZYktKtvhG2XHfBta+TJ4pmP0qpa/8Ax/qdUV0K4k37E/6OR5usf7UveReI+B73ieGuOZDXaTjNfyaNoy6dejjm/d/Zm59S/SyRR0J+Oc67H+B//DuLZFKWlHITmtf8zZ1R6mUdo4J+/wD6OR9Mm7eWK9lHleMY74i/i4vgLiPD8pPmV+Db8Cf6IynJz/8AxmvWnX8GixxS3zJ+3/sowPEP9pXCrYwwcXjeRjLo6eIxWSmvTm0pfqJLqou4Qdevf7GM4dPLaUkeuxvEviDLxo3Z/wDZxgK1LTyL7o1Lfs2tr8zocurnvKHHi0jCOPDF1Gd+rdnkq+DQr8U5PFli4uFK6rkePi5MsiCk9balJLXRdltHiZ0lPza9259B0uOda8nPr5O1ExbOsugSwZdAlgbMWzkmn5ES3Jas6fRpSXZmRmQBhQAMMYyAB9qEXJjDkxTlzSbLRskGIFFiAAgUgDKAMaIMYdAAdBYwpBYxox2KwstjBLuS2TYwhB2AUBxjLuh20FtFU6+XquxalZalZXoqyyaCwA0Oxg5R2UMogFjaGFh0BVitAMGhjFaHY7BoAsmgCxoiEy2DEyGi+EhGbRYpCIoPMAUTYAQBEGMmwCj47j2dj05RPGizbCXQxaNUWpklDbEBBAFEjHiJjL60ZtjL4ohstD6EMVjQxJMpENiFmbJoYjTbmX4vC687F39q4Tesuv3h2nH6ab/McsjhFSjyhOCnFpnA4R8PD8a8Tw6emLmKVlK8tP8AxI6/BtHMppZW48MvHHQ3jZ15w1No6LJYkoFpiM9kDSLEUSjo0TELoYxkhANFCYx0iWMsiSxodEMZNEtjIKwJpi3ABNjIAEXcBmmK5IozT3tlVtsLweGDwTIyeJ5uJPiF03yc07XycjX7daWn16eiXl0O3pXj6dvK03fr/g8/qcWTLtqpez+T0VfjvIjGpYvDOG0V/df+G3yv0NX5Yn+2NL2/9ER8jw/dJsss8Z8WknyvFh1/ZoX9TOXlHO+HRtHyX067rM8vFnGZdstR8vlqgv6Gb67O/wBxqvJ/TL9hWvE3Gd//ANjf3301/sQ+pyv9zLXRdP8A6Il/ifjiinHimQvo1/sEeoycOQPosH+iOLl5eTnWqzOyLsixLSlbNy0vbfYJzlL0nZcMUMfoJIETNllsSRFkSWIvgSwLoMlgbca9w6S6oholxs2xcZrcWvoQRwNyv0ABlFjsZJShWtt9fQfI0mzLba5v2LSNFGhEMoeLAZYmIYwDRBlAKGiAMZIBhSFYxtBYFsVpCbJbsIhESALG5QsVh5QsLJr8hWFlFkOWXsaJ2aRdijLA0UBNAMZIY7DoBg0MCaAYNDHYHELCwNBY7BodjCkArCkwoTY6bQqJG5xUKhoyb7AJotjGb8mK0Q2kFxku6YWJNMRz0MtIR2Doek+MUW60evKJ8/Fm+m0wlE2izTCZk0aIsTJoYyYgoZEjLa0QxnQwsS/KnyY9U7JekVsIYcmZ1jVilOMfSZ63F8C506Y2ZOZhYya3yym5NfXRv+gyd7RzvrEnSi2Jm+DrMelzq4liXyX7EYyTf8y15OnL9yHHq7e8WcDK4blY6bnU5RXdw66McnR5caurXq3NVniznswQ2waKsmw6Cws38FjCzN+z2/5eRXOmSfntdP1SKW+3iNOmmeGyJS4fxLg+TN/PjTeLZ/8ATnr/AOySPPvS0y35sovw2+B7LNr5MiaXbZ2p7CyKpFDXQuzMpsiXFgZZxNUwK9FWAUgGMkIYyJYx0iWMdEMYyWxU3wB1OH8Czc2PPXWq6tbdlr5YpevqdeLosk1qql6zkzdbixOm7fgjw3iLN4jwXxDbz2VZOFtQg6bFKua1vo12l7Pr+B5/URnhyO3a9XH/AGaYsyyLUlXqZ6nheNLi/DPt3C3HKqX+ZCt7spfpOPdfXWn6m8cDyQ143aH+pgpaJbP195S9p6kjN2tpI39ga9OaSa36eZMltsUi6T6mKLJHlnCdU0pQmmmn577o3wz30vhmWSPea+O8Gr4bn48KHL7Fm48L6JTe9bXZv1T6fiLqcCx5KXEvr+fUjo8znBqXMXRji9xT9jFO0ddBGAUADNbrkhXuBmiuprZBZETEWIkCyLExF0WSwLoMkRdFiAthJrsxBRdHImvNioNKC75vu2FAooXmb7sooKYDImMaGTGMsixDLExAEZSIMZAGFAMdCAaK3JCBljESFIYMYRJAAKAAiAW2PND3RSdFRdMz6NDUIxk0Aw6GBAGg6Adk0FisnKFhZOULCwOIWOycpSYWDRVjAFgEYDRjzd+wMlujXU4QXyrqYST7zGSb5LPjMmiNCCrn59QoWgSyuu1dFyyGm0VGUonOtqnCbWjZSTR1xkmrPh9Vp7zifMJm6m73MZRNYs21W+5hKJqpGmE9+Zk0WmWxZDRVlse5DA9L4V4DLilnxr9ww4PrJd5v0X+50YOnUl2mT0fqRKfdHk9+nTgUwowaoVw8tL+ZWfrHFKGNUh48Ce8jLdbN/NOTb35s4W5veTOlKC2MlmS4P5ZPp7gpTT2Ym4eAsc2SmpPT116rodeDqckXuzDJGDWyNPFPDuB4gwbM3gkFj8RrW7MZP5Z/T0fv+ZtmwxzLXHZ/n5Z5yyywS0z3ifPZQlCcozi4yi9NNaafoea006Z2p3uiKIrGW0TdN1dsfvQkpL8HsadOwe55nx/VCriOVraV1kcmteWpQal+sUcWbabo0zHqMnbhRJ95VQb/AOlHVDgeXmylo0syK7F0LTGZLF1NUIqaKGQYwpCGOkSMZEsoshFykku76BGDm6QnJRVs9h4R4Xj2280cW3Ov38k3qNKfs31lr11+Xc9XpsMILUlfr7v7PI6zNkfm6tK8O/8Ar4nZ4/i+GL6Z0eIsqrLm+9MJyl8P2Sh0X49Q6rL0uR1k3r1s58HT9Ut8ar4HzrJ4P4axs2VPCsPN+yXpQs57VKmW+zlGXzLlfZrqjkwy6GGVR0vTLZ+Hz325tHc8PVuFyatceP23PL3cC4/4c4hZxHw08uePDosjG+flXflml3/LT7mOfo8/RZXLpnqj3Nb7etDWXFmjozqn4M62B/aRjZuqvFnCo2z7PMw/8O1f6o9n/wB9Ah5Qx5duohv4r7fnsJ/TZcO+Ce3g+DkeII8LzvEuNbwziWXfgfDjY500OU6IJ/OpRXVNd99uqObPixSmtEri/Du8fWb482Vq5xp+0+o38JwMuNd2HKv4Fq/wrKLVOMl5evX18z6VeTOh6rGp4nXrR50ev6nC9M9/aczK4Bk1v/BlCxeW3ys87N5Czwd4mpfJnfj8q4Zqpqvmek8W4Su8A8KuendgW/AlJeafR/qomflbpnihFPlV80ZeTM+vPLwd/c8Mui0eMtke2FDGFAIs7QkLvAzGhAyEA6AQ8WIRbCQmgL4MloC2LEBamIBkwGMmAB2Aw7GOgpjGMmMY6YhlkWIdDoQwooCAMZCGMhAPX94TBjruBI+hEh5WFhYdMAIMCAMj+6wBclE112WmaoVFFDABBjDoLAKQAMkKxWHQNismhWFk0NMLA0Ox2I0Ox2K0UmVZIR2x2DZa+nRCRAsZakU1aG1ZcmYkB2AqJzAFFimmuq2TRLj4H50hJn1TR4BqqmzJopM2VWMylEtSNdVjMZRLUzVXYYuJambsCuWXl0Y9f37ZqC9tsUMbnJRXeN5KVn1vFVODiwxqVqEFyxXojbqcqXmR4WxtixPTbBfZDlW+/qn2OJJPkqU3EwZFsfKT6+5ooIwlmZgtsSXns0WOJk8rZnndpdC0kjNyY/DOJ24ObC6mbg0+6/77FY50yXUlUhfGCjk564hXXGv7Qv8AEUe3OvP8SevxJacke8eDzVpODynnWdAdBY7OB/aTH/H4dL1xmv1RyZnuaZ+72Ho71qnGXpTWv/SjoxvYrLyUmpmV2dikBlsRqgKSxgAYyAYyJY0MhVY+D1XCeCY+Jhx4l4gbqxt/4dGtysfprzft2Xn6HfHFDDHXm9y+55uTPPNLs+n978PYZ+MeI8rPi6MZLDwuypqfWS/il5/TovY4+o6zJm24XgdXT9Fjw78vxZxEuhyHWTQgNGFnZWBNzwsidMn35X0f1XZmuLPPC7g6M8uCGZVNWDiV3CeNtw8RcGrnkNfLl4bVVj/o/wATrn1eDOv/AJEN/Fc/nxOD9Hlwv/DPbwfB4qzDxuBcRfFPDnEciduBOMrcXLodVkYyetNr5ZRe9HNojgf6jp5PzadNb/HhledlXZZo1fg/xnf49wanivLm0uzEd6jfC+mD+Famukml2kuqb77TPTy4MHWQ7RJ4++0m4v21wzLHOeLzVUvU+V90ZMS/xjw5KOJlriFC6JSkrV+vVfmGOHlTArwTWSPqaf13Q5Y+lyP/ACR0v4f0d/gHi3jXG4W8E4hj4leMp/FucYSU00+iXXS6nl9T5Tz9VPsssUmuee73nf0nk3Hhl2sW2NZTyTlFvqno49R36BHBoLJcWiJDJJa9QS82EeQZSWSFCAIxBTAC2MhUIugyWBdGQgotixUFDpiHQyYUFDbGkOgpjGFMBhTGMZMBjxkKhlikIY6YwCmAx0xDG2IBoP5kDE+DQlogzsIAFAIYAA1sAFGUCfRDQ4lcvulI0QiLKCABQAMkIBkgEEVgQAIAgjAADFaCx2K0VYxoLSYWJsDLQCSNIlFsHuJhJUyGNsQE2AEAR+e6q2z6lnzhtppbM2ws342JOxpRi2zGUqCzuYvA7Gk7GoL3OeWRD1G6HB6YrrN7+hi5lKR0vDvDo0caxroyTUJb6/l/U06fLplqfcUvOaR7bKqlCW32MssbZ6qmtJx8vJnCUtHO3pObK7MDzHvsVGZySYkr3OR0KdmLY2lKJukmiHIpnF82l3Mmt6Q9RttjPI4cq2uaUekV+pWXVOGk2g0o2cfkPKs1TA49B2VZwv7SIbyeGx8/gNfqjjzPc2z9x6LPjy2xh+7FR/JI6sfA8vpGWSNUZors7FRGZbDZDKWUABjChDGRJR6vgHDcfhmBHjfG4twfXFx+0rZeT+nv5Lr6HbjjHBDtZ89yPOzZJdRPsMXHe/4ORxbieTxXMeRlyTeuWEI9I1x/divJHn5cssstUjvw4Y4Y6YIyJGRqMSMgARgMqur563H8V9S4SS2fBE46kcLxDhPNwpyVHxcitLmgnqVkIyUtJ+vTt2f5Eu8F98X8u8ylHtf/ACR1Hw+PBpQp4TxHIniNfFqu51JWRktptdt9dNaR6UsmboVF9NNpPf1fDg5sEYdQn2sd0b+H58Y2uXEaoWNLcLaIKMt/xJvT/P8AA26fyvFZFkz4k5LvWz/svJ0ktOnFKl4M6ng6mr+7eJW2KP23In8Wz+HT+WK9tb/El4cefpcvUf8A3G7fs7l7K+Y45Z4uqx4/21SKuIw5clv95bPClyevLkzIkRJpJb8xp9xLRjlJyl1NkjJhQCCICbKETYANFgBdCRNAXQkIC2MhUMsTEA6YDoZMBjIYBQDChjCmAxkwGOpBQxlMKHQymFDoeMxNDodSFQUX1LS2SyJeBdB7+pDM3sNoBDIQEGBAAj7bAaKZPbLRqkK+w0NCosoOwAKEBYhAEBEACABAAgCIAyDAVgMZfdHYnyLIpDRXI1iUi2v7qMp8kvkLJEQAIAHxHGxd66H0kpHzDZ2MHh7tnGKXVmEpk2eswuH14la+VOzzZyynYrL3BvuZNjsHwkQ2OzocBxpXcTrrg0ptPlTetv0Nunj2jcVzQdssTU5cHqcyu3Hjy3QlD2kjJ64Omeq8kJrVB2ed4jXt7STXsZt2znnM5c6/YfBzSkLzKMNOEd+rYa67jNj48bbpKFMJ2SflCLk/0NYTnLZEtpcnf4b4U4tlzjKVH2eH71z5f07nVjxyu2ZvIj1NnAsXgXAs2+c/jZHwpL4klpLa18q8jZpQTm/Bk9pKTUe6z5jydD59M9KwOBVjs4v9okFLxJgUx7KMV+c9f0OXqKWSkbZXbidria/8ZZ/qZ0w4KyvzmY5GqJKLC4jM1jNkMqZRQAAKEykdzwrw2jLvvzeI7XDMFKd3T/Ml+zWvVt/99TfBBXqlwjl6rLJJQx+k/wAsXj3Fr+McQlff8sI/LXUvu1x9F/VmHUZXknbNumwRwQUYnPSOdnSOkSwDokdB0AA0IYGhgXY+HHPXwqflzV1q/wDN/g+vmn+Hob45alo/H6vsYZY6Xq7vp6zn21RcHyR5Jx+9DWv0M3HStuPp6n/DLuzOm0KhmnDzLMe1OuTjv5Za80/L9DWE5Rg1F87P2C0xck5Ljc73FZRbrmuz3/uckkd0jnufoiaIsCk99R0BTdHUtrsy4szkhUUSQBAYADfUoBosYFsGTQUXQYmMtixAWxYgodMQDpgMZMYxkAwgMIxk2A0ibHRROYdFJDKYUOh4zFQ6LYS2yWFG7tFIyMOWGL09gDRepb7kMzoIATQwJtAMG9jHRS11KNAS9CkUhBjCgGOgYh0IAgIgAQAIAEACABAGBjAMQEwSKQIra29GqdKyy2PYxbsgjEgIMAoQj5xTwi+tLmrl+R7L6iD7z5Zne4Ph/BhKycevZGU53wQbGtvZkxk0Qxk0Qxl2LbLHyK7q+k65KSHiyvFNTXcTOOuLiz6vwvNp4niRcXGTcU3FnuySpTj6LPNSkm496KM7B4elzX4dMlvrqC2KPTxyPhC7fJHvZzbMLgCi39lp36crNF0N/tRD6qf+xk3w6pSVHDsZSXZ/DUup0w8n413IzfUZH3s7HCvt9sPkqoor9o6/kRljhx7IqCyS3R11G6uC5rHOb9jmuLeyNXrj37nkv7Q+JcmJVw+Mk52Pms15Jf8Av/I87r8qhDQuZfQ7ulg29T7jwDR4x6BIx3OK90NDTOB41fP43xl+7Kpf+ts5MzvKbZX/AJEvYdriK/8AF2f6mdcGVkfnMxWGyEmZbWaxKM031NUUitjKIu4DQZPSBK2Nuj1nFP8A4dwbF4TDp8FK/J1+1fNdn/pi0vrs7mtGNy8PqcmJa56/H6f2edSPKZ6A6RDGNokAgMOhADQDA0ABhtS2tprs0DY0jpcVq/vbBlxKhaz6Evtaj3muyt/pL36+Z0N9pHWue/7nLXZS09z4+32PNWal83RPzX+xgnWzNuSvszREnosqXNhYz89L+RgztfooxCICAyXda0wjyKXBnTNDIOwEK2UgAMApgMsiwAuixDLYsVAXRZIDpgMsTFQDJjGNsQw7GMOwGgNjKQHIqikheYdFJE5x0XQ0ZiodF9M/mRMkS1sdSXZP2Oc5kRAMeL0JiaHESEBkGAUgBlcnplItCFFg0AEGMdCEMhAMMCAIgAQAIAyAIDAYGCACemUOrGb2ug0TwBR11YSl3DbGIEQYBS2wsQ7lCHSUlsW7JqT3RxoWS6bezZxR8xZ0FGE6IqSS36FK48EmLIx3B7XWJpGdgZ9AxkSIYxkiGB1eDcSu4dfGdcny+h2dH13Yf48m8H8vWjDNh1+dHk9nDjWPnUR+JXufm12Z72KCkteKVo4Mj7pLcyXYFltqdELOSXt2OuOZRXnM53B3sdbC4DVXGMr3zWLzizkydZJ7R4OiPTeJ2Ix5IqMdJLocjduzdRcVRw/EXH8fhFTjzKzKkvlrT6/V+iMM/UQwrfnwLx4XNny/MybczJsvyJc1k3ts8LJkllk5y5PRjFRVIpILGh0nF+6/mA1yeX8Yz5fGXxH2jKp/yZw5X/ksvM6y/A9JxNay7P8AUzugaZPSZzbjeIkY7X3NolozyLRYoykFIVlI18LjW+IUzuW6a5Kcl6pddfjrX4m+FV53gZ5LapHT4tKcoqV0ua22bsm/WT6v9WdfXrssMcfj+fUWBJttdxzkjxmzrGRIBQhhEAUhWBNAMDAYYgxo0cPy7MHLhfVptbUovtOL6OL9muhWObxytE5ILJHSzN4iwK8XIhdibeDkx+JS2+qXnB+8X0/J+Zrkgk9uHwYY5N7S5Rx2uxKLO7N/+Cxl/DswOv8AaigBE2AAveqkEeRS4MxqZB2AAGgAUAUAFkQGWRYgLYsBlsWS0BbFioB4sBjpgAyYhh2FFJE2UkUK5DKSElMpItIrcyqLSBz+46KSGUwodF1dnVENA0drHmrKE13RyyVM4pLTIddxDGAQybExDpiEMAEfYAK+XZRdk5R2OwOI7HYNDsdjJCsLCIAjAmwAgwJsQE2AA2AA2MKA2MYG0Ox0IrXB7QPcemzRDIqn958rJ0tGbxyXA6jB9px/MW5NtcoD+HH71kfzHuC1PhFF+dCC1Utv1Kjjb5NYYHLeRzLLZTk5N9WbqNHXGCSoaKEfCnRre6I+wATo1yvsS9txmC+vkm15GilaGVolgPFEMC6KM2IuqnKEk4ScX7FY808LvG6JlFS2aOnieJc7C+SDhOteUkd68pzf/JFP5GXYJeizdLxzkqPTEpb/ANTG/KMe6Hz/AKKWF+JyuIeLuKZUXGFkMeL7/CXX82YZOuyS2jsaxwRXJ56c5Tm5Tk5Sb23J7bOJtt2zdE2ICAMm9ANHl/H1euLZFq76qf5xf/6nBlXnF9SvPb9h6LLsV1dF67W1Rmn9Ujux8GuR20/E593Y6YkoxWGqNEUyKLQNAWh4oCjocJx/iZMNrovnf/f1aO/pYaskI+u/gZTlSbNfGf8APrX8O/1K8rv/ACRXqH03oswaPHZ0h0SMZIQDJEgTQABgMDGMiAYWSM3YaWbh28Ns1ux/Ex5P9m1Lt9JLp9dHRheuLxv3HPmjpayL3+z+jzXK1PTWmvIhukM6kp80uRdq4xj+Otv+ZzxdnW+5ALERdWIZTkS29LyLgiJMqRZAdAAdDQE0MQdDGFIALIgMtiAFkRAWRYqGWRYUMZMQDbCikTmChpAch0WkJKRSRaRVKZaRaRW5lUWkDnHRaQVMKHRbCZLQUdHAyvhy0/uswyQswy49SOutSSlHqjm42ZyXWzGSCwHSFYWMkKybGURWFkY0xomh2OyaGFgaGNMHKFjsPKFjsVoLHYBjAMZNjCibEFAbAKBsBgbAADGKwGJMtFIzzZaNUVucl2ZVFUhXJvuxpFJIXZQyABfok+CNeJPacGIZY1piY0U5a3CMhQ5oDIi2BZBGbAuijNiH+7Ftk0IzSe2yqGVWdEFFGaTHRaF5hUMPOGkZOYVAByHQzl+MKXduXK93cP8AiQ93VPb/APS2cueFM2yecr9X0DwLIWX4Yw5b3Khyol+D2v0ZthdxQRerGn4EsOmI0ZbO5qjRFTQy0RIC0WJdBLdldx1ODr/4hy76KHVfn/set0CvqkvBMxyf8TfrLeOJLKhr9xfzZHlrbOl6v5Y+l9BmBI8VnUMiQCABEMghk0FgDQ7GBoLGTfqDGmNXOVVsLIfehJSW/VPYRk4u0Djapl/HMSuzjkrsaOsfLSvgvRT6tfg9r8B9VNJuS4e5h08W1pfK2OdjvnhKxdpzlJfTfT9EjHH6KOuXJZrZdgLZPkWl3GlYm6M+ts0MxlELAdRFYUMojsA8gWInJ7FWBOQdgMkMY6QAOgGWRAYyEAyYDDsCkLsdFIVyHRaK5SKSLSKpSLRokI5DSNEheYZSQVIKKoshIlhRpqkZyIaOph5M6/dHPOKZz5MakdSq+E11Wmc7i0crg0Xx5H5k7mbsdNLsIVMPcY+AqKCwsPQYA0mAWBx9B2UmKMoIgA0OxiSRSKTEZSKFYDJsABsBg2MAABAAUY0JNlItGabNEaoqZRYGMYNgMgAaRHwIYtxltCGbIWKxdX8whi5K1T+Io8gYkupbAtgjNgy9JJbZmIpsnzP2ChCDAqs7AikY7H1LotC1V2X2clMJTl6JFwxym6ih3R6PD8I5NtEbcvNxMVSW1GUuaS+qR0Lo3+5pCcpf6sx53Arca3lpyqcla3zQUo/zG+ibW0kCk+9HKvqtonyXQlCXfT8zlyYpY3U1RaaYMnrVw3JsjzV0ZX2ee/8A5dseV/q0c+WOykdONqo+p/JnnPCqngcV4rwS/o9uUPeUP94vf4GWHZuBGJaZSxs6dq02daKRls7mqNEVtDNEGKEWi2tbaHD0inwbcG6OLlXW2RbS0kvXcXr8NnZi6n9NneVq9v4JePtMelFM7JXWynY9zk9s4MmSWWTnN22bKKikkHsjICCAKEAyWxDD2EAQGhQKJ9QAWcenQdgV8zQ6Gmb8F2ZlNtanGP2Wmy6Ll5R7vXr10/xInhlmWlPgXaRxPU1ycuuUKqYQiukYpDUS9SI7W+3QpRByK9bKJHSEMICoZAMdDEMgEMogAeQpMROUoCJDGMkMB0AxkIYQKAx0NCtjotCSZSRaKpMqjRFUmUjRCNjNELsZSQUxFIsiyWFGqnyMpEM6FCMJMxkdClGEmc8jbWjNsxZfCO2TZm2WPp0QEgKGHyBDIMAgMWS80FjTAhlA0AAa2NMaZXKD9CkykyuSaKRaYrYDBsYAACABAGB9hoaKbGUi0USZojVFbKRSFYxgEMmwA1jPgiMQBjvfQhjBm5bq5Yd/UrHG9wZRHMi+8C3ECyOVv7qSM3EB+dy7shokggIAFVo0UirGxp5mVGmvo31cv3V5s1xw1ujRJt0j2GFRVhUwqx4JJ95ftN+rZpPM9oY9kejDDGK9Zfc41w3LTki440lfeNySOTdlqL7InzlwTLLHwNGJxHBzKHw7jFcZY0/8u5L5qZeqfodEZ646MnBwZo3LVDk83xDh88W7iHB7pqTtilXYuzkvmrmjizYtFwZphevbx/PqeT8Wu2i/hHifHhpy5YXxXlNb2n9dSj+BxSVJZF3cmmeTU45l3/VcnUzeSTjdS+am2Ksg/VNbR0rxRrJb2jBI0Q0VjNENERaLq/vIeP0hvgfW7MqK78sZpfTZWZW5e5lYnsCv7xgy2WkiIIApCGMhAEQEEMD7DGQBkAZRbHTKTEU7a3ptbWunoUAjQAMkIY2gGQAJsACh0A8WMRZEQiyIAWJAIjiUgA0UgAihjIBhQxhAYGBaFaKKQkkNFoqkikaIqkhmiEaGaIRjLChFUW1kMGbaI9jCTMpHRoXY55Mwkb6UYyZhM2QXQzswZpgtR2KzN8hGgAyhkQDCMZBgRCAR9x2WMo+orJbC+iABZMaGhG/JoooqsrT6xKTLUvEofR9SjQAAQAIMBZMaKRTMtGiKZFotFbHZaFGMDYDF2MDfoD4AiWxMY05Rorc59/JEJObpDONda7bHJ+Z1qOlUKyRJYzRUZyQGuDMmhFpIgMQyi16KRSOl4YS58ub+9yqK+m+v9Dohtjfizq6WNzvwN2Vkyx4vlfVnPC4s9DK9jkZHFJz+Xm6I64Ts86c2ZZZDl5nTptGDmZpWvm6ijDxIlIfKnKdVVu3zwfKn7eRj1EHW/cbwlaUkXxwKuK4edwuxqFWfW7qZPtXY3qX/AE2cr+kzl7NPZ8Pb89j+p0T/AMkZQXPpL+UeO8LZNs8LK4Rmxdebw+clyS7qO9NfhL+ZliTVwlyhYJrJCvD6GmT1LTNkaoAzRDRJLRdDugi6ZXcXJ8mZXJ/dnFxf8/8Ac3yekmKHgUcrrnKD7wev9v0OWq28DYvXVbJERAA0USwGEBBDCIAPsAwIYyCGJatxGgMrLERAAUIZGMYGMAbGMKYwHiAi2ICLoiEWIBDDQAa6FIBGUMiKGOgGFIQw8oygcgDTFcCi0yuUGM0TKpwGmaplMolGiZW11A1QEhMouqXUzkxM6GOuxzzZjI6FJhJmEjdQjGTMJmyBnZgzV+yhWZ94rKQyFWUAAIABGMiCwJrrsVhZAsZAASXYpFCPuVZSE31GOhLodOZDiyovuKSzQYQgNDAWSHZSKpRKTKTKpQKstMrlEpMtMrkikykytjKQNjKOo1WvvWx/MXnPhH5/QHdXFf4S5n6sNDfJSjZjuXxZbsk37GsfN4L0orVFT7bByY9KI8f917J1+JLgLFOL00D3J4NNbM2iS5MigBJ9AoDLdIpItHT4BXa6brq03CMtScf2fqaZccuyjkj3Nnb0GSCnLHLlk4lkOUZbXVehEZWrOnNtsecvm1JvqbRVHmTZW8lRacU167ZvHJRi0dDhfD8/i9vLg4tlq31klqK+sn0R0xbluZtpcnpPEPBIcB8NRWRZGzOybYr5e0Irq0v06kdTUcb9dF4puUku5Hn+G3uVTpjFzupk8imK7z6asrX+qO9fxRRxY6nFwf54nZbg1OPKOD/abiWcJ4pw3xjw5K7GyOWnL5O05cvST9rIaf1RGaDVZfc/v70QprHluHD3Xv5XudleS67YV5GNLnouipwl6p9gaO51yuGVRe0IpDxJZaLoklIusXNVGS7xe/8Av9TpfnQTJWzJlR2oXR6prkn9fJ/0/IwyK6kbrwFrfkZiY4gGj3EwGZIyABBDAwGQQEAYtn+WNCMr7lgTQDCAwMAFYxgKSAZDEWRARZEALoCEWRAQ4DAykAjLQESGMsjHYBZdGtsAssVQrDUP8D2Cw1EdHsFlKRXOj2HZopmeyn2Ks1jIy2Va8h2bxkZ5x0OzaLE0JstFtXczkDOjj9kc02YSN1RjIxkbqDGRhM2QMzBmmPWCEZvkDKsZCkxgHYyBYECxhS6gBJCBAHYwbABZMopFUmUi0KUMZdYtCsXDM+upZrY2hWSTQWBNBYWK4jsdiygPUUpFU6ylItSM9kDRSNVIzziWmaplT7lllODBzXPNvR25HWyPgYw72bXLfRdjCi7AABRLQDJktAWNKa0+5HANWVL5JaZVWZNUWqfQhoBZzCgMtkiki0jqeFeNf3PxFznt0WLlsX8md3RZVGXZzdJ/JnP1OJzjqjyj6Fl8N4RxDG+1xxqboSW+aHyv8dHf+mjq0yjucU+pzRVwk6PM34XhyKlzYFysX7LnLX8zsj5LT7lRzy67K+/6DcK4fj5ORGPDuFYdbXedsOfS/E0n0fT9OrkZrPmyurPcV0yxaH8XI2oryShGKXsjhc4ye0aOns5LbVbPk/jbjq4xxNfAk3iULkrb/a9ZfieV1OXtJVHhHr9Pi0R35PNRyZ0XQtqm42QkpRkvJrsYRuLtHUkez4NTh8f4bkcEyoJ4PFKp/Div+G09ziv4q5tTj/DP+E7oxUlXc/z5HJl81OL7t1/K9/19p8n4FHL4FxnN8I8bXLlY85PGk+0130vaS+ZfijiUHBvFLlcetHZ0uZTVdz+p1JbhPXoQ0dRZF71ollIuiyS0aaHvcWbYX3EyXeXwhCFjps26bYp++v8AdNP8kOUVGTi+GXCWpetGS6ueLkSqs05wfddpJraa9mupzuLTplp6lZYuq35EgNHuJjGJAghhEAGAyABBAW42LPMuVcWoxS3KT7JGuOGq29khd9Lk72Hg8Nox5V2YMMuyX/FssnHX05WkdGOeKW0YX7wn003vrr3I4mZwuVSlOmSmltuK7pf1Np9NHIm8ap+H2MtbxupO14nNZwHQK0OgA0UANDAZIYFkUAiyKARbFCAsQAMgALQwF5S0A8IbCxWaa6hWTZphUKxWXRrFYrHUEAWH4YWOxZVL0HZSZTZQh2axmY76PYpM3hM591WirOqEjNKOmBsmNX3M5DZvx+yOaRlI3VdzBmMjbQzKRzzNsOxkYsvqlp6fYCJIdoaYkwaKGAdjJodgTQrCyN6QD5A+4AgMEMDKGJJ9CkUkVNllk2AFla7ksmRmf3maGqGQhBAAABBAAAFaHY0ymyBakaJmW6BrGRvFmSa6miZsmZ67VGMYLyO6rdnxUo1saITTE0ZtFikmRQgiAZMloBlLRLQxMmS5VIIruFKPeZvtC9S9BFCSyN+YtI6Edmw0lULzCoZu4fxbKwU41Wy+G+jjvR6PS+UJ4UozWqK8e72HLm6WOTdbM9NwzxFweycLeLVZDvj/AAKcX9fM7peU4uNY3pRxroGnb3O7f4+4NRVrGqvtaWlGNfIv1OGXUR5uzpj0z8DxXiXxfmcYi6UljYnnVB7cv9T8/oc+TPKapbI6ceCMN+88pbcYKJ0pGSy7qWolpHS8N8Tli5cancqOayNlN0u1Ny+7N/wtNxkvOMmb4nTpkZ8XaRPQ/wBrfht+M/DNHiPgdMqvEHC21ZTB/wCJ8j+ev3lF/NH1Xb7yNM+LtY6o+kjysOTsZ6ZcM8HwTitfiDhMcyHLHKr1DJrXTln+8v4Zd16Pa8jidTWpfjPfxz7Rb8r8s0wlp6ZkaI0RZLRSL65aaYovS7KqzZe+bFi0usJcyfs+6/RP8DryLXC13GcHpkNdD7dhc0OuTjxb15zr7tfVdZL25vY55efHUuUavzJepmHHs38r+qMSi8QDJ7JGEQEACCGQQWHshBZ0+BRco3J6Sck9+qOrReJLx3Hhfnt+BOI5U6Xyweo77IvDHRsGabObLOe982pR8j1cTS3POm2yi6iVNsqrIuMovTi1po8bNHRklE74SUopor5SCrJyDHYOQYDKIxDqIAPGIgLIoAHSEA6QANoaAMYbZVis0VVhZDZrrhoVktlqQhDoAGSCwDoBk0BQHELKTKba0x2aRkc/Ip9ikzphI5t1emOzriyqK0yWamyh9Ec8zORtrZgzGRtoZlIwmjdX1MWYMuSFZFlsZeTGS14Dcu+w0xWDlHYWHlHY7A9IY0VtbY7KTC102IBX2AYrZSKKpstFIrZZoNFbFZLLfu1tk8sjlmbzLs2IAiBYEEAUm+wWFlkaZP2J1ohzQ3wH6oWsXaFdlEkuxSmi45EY7oGsZG8ZGKcPmNkzoTPMwyfm7ns6T5aUTZVk+5DiYuBqhkJ+ZDiQ4lqvXqTpFpG+OvUWkNIjyF6i0laSu/IX2efXsKMfOKcdjjyy+vc6dBjQFl+4nAdFsMnfmQ4BRbHIXqS4BQ/xl6k6QoDvXqGkdFc716j0Doz2ZHuUoFUZLL9+ZagUkUSs2PSWgKWyWi0fR/7P/ErxpTtvl0rhGGZHu51R6RvS83BajL1hp/sG+PJfP56zzOs6f9yPLf2s+FrvBfiFeLfD9Cs4NmPlzseH3YuT6/SMn1T8pfUy6iHZvtYrZ8r8/LI6PO09De64+xjjKjLxac3Bs+Li3LmhLz9015ST6NHJONbrhntxkprUhq5eT7GRaNESWUmbcSW/lf4HTgn3ETQtM54eUnCTTg1KLXfXkZzXZTtcFQanHSxuK40Fy5mLFRx7XqUY9qrO+v8AS+6/FeRE4pbrh/n/AEOLa818lVUuePv5mRY+mIB0JgQQEEARBYGAHpPB+fg02Tw+K1xePa9wsfT4b8+vdJnp9FkhOPYZPd9jz+qjmxy7bA9+87uf4X4Vky5saOdkxfXVM4vXp3W9Hqw8n41vN17TzJeU+pls0vgLjcH4V4Zx3xHMxYRvX+RVbL4lkpeXfovy6E5/0/TLzd/X9hYpdT1ctN0jwuXZZlZV2Rc92Wzc5P3b2fPSk5Scn3n0cEoRUVwirkEVZPhhYWT4Y7CyfDHY7CoBYWFRAB1EAGSEA6QAOogBbXAdktmquIWQXJaFYhgAKAYyAAgMKGARDFaHZaZmvr2h2awkcvKr7lWdmORhktMTOpF1LMZCkjdUznkYyNtD6oykYSOhT1RhI5pGmKJszbH5QsmxkikxNh6jAVjKFaHYwNDsYY+jBgxZx0CY0ymT6FotFU2WjRIRdyii6uP5ENmcmJfZv5V2Q4oqEa3ZUiiwiETYANCLm9ITdCbo1RioLp3M27MW2yNsAomwAibAKK7qo2Rel1KjJoqE3E5dtTU2mjpjK0dsZ7Hz2U3GbPolujwpLctrva8xNEOJfDJfqS4kuBasp+otItA32p+otIaAPJfqLSCiV5eTyYknvuEIXMclUTi/aG33OvQc1DRvfqS4Dotjke5LgFFscj3I0CoZZPuLQOiPJfqGgKK5ZHuPQOimV3uPSOiuVmw0lINSnbZGFcZTnLooxTbf0SJoq65NmRw/OwlF5mHlY6l2dtMob+m0S4uroIzi3syzh+Tdh5VWTjTcLqpKUJd9P+q9jHU4u0aOKkqZ9e8HcUwuJcI/uzMrrs4bkp0QpmtqltdceW/2WtuD818veK3145qSr89h4XVdO8UrR8l8S8ByP7MfEM6pRuyfCnEJ81c0uaVMv/2S/wCqPuunHlxrA9/Qfyf58UdvSdS57r0lz61+fA3WUpKFlU4202RU67IPcZxfZp+hzTjpZ6kZKS1RDBeTMrLL69xaaBS0uw5NWXW7sdXVrc4d0vNeaOuVZIWjLeLtDcNyIwTjZFW4t0eWcG2lOL8vbye/JpM5YTS82XBtJKatG7+6I41Tak513fNTY110vJ/xLz/PzO/D0ieNqXL4/PqcOTqZLIvVyYJw5JOMlpo82cZQk4y5O6MlJWhdEWUBoQWQLAggCkIQyQCNeJnZeI28XKvpbWnyTa6HRHqMsY6VJ0ZSw45O5RRVfbbkWuy+ydtj7ynJyb/FmcpOTuTs0ilFUkV6AsKQAFRAA8oCDyBY7ByDsdk5QsZEgAZILGMkADxQCNNUQIZfFaAkdAAyCwCkFjCgAIWMIWMIDIAxJraGWmc7Lh0Y0zqxs5VsdMbO2LBW9MzkUzbS96OeRlJHQo8jCRzyOjQYyOWZsgZMxZYkOybGaGmIVoqxisdlE0Oxg0FjsDRSGhJz1Hr2KqxpWUSnCXaWikmaKMkVSUf3o/mWmWr8AfEqh3lt+wU2PTJizyHPpHoh6a5GsdcioCghYiCAgwNdUeSHuzJu2YSdsICIAEACABGAyudcZvbQ1KilJrY+R1WLIojZHvrqfXOOiVM4E9cbImFCoZTChUOrBUFDfEFQUNBuTJew0jDxbKTarg+kTbBj72Y5pdyOcrDoo5x1YTQx1Z7i0gOrSdIDfFDSAPii0jA7BaRg59hQ0jZwrDs4hmworfKn1lLW+WK7sl0lbNccHkkorvPofAK4cKvf91p0TS5ZXb+eS+pwrqcmSWiGyPXfQYYwuasbiWdPJsTzMm7IcX0+JNyS+hssuWPDOaWDpobKJmzOHcN4rwu67CjHF4riwdllafyZMF3a9JJeS7lZIvKtVbnnSbhkpbxfy/o4nCcuzAvc4LnqnHktrb0rI+ns/NPumk0cccmh2XkxrJGmfWcG7hvivgT4RxdLLpyK2oTsWpW6771922Pd67/eXR9O+E45I6XumeBmxTwT1Lavz4Hx7ifCs3+zri0uG8TVuV4dyJuWPkxjuVTfmvf96Pn3XU83NjfTPTLeD4fg/wA+J6nS9R2q1R9LvXj+eJ0546jGuyucLaLI89dtb3GcfVP/AL15nPki4noQmpq0SKMrKNmJL4cuv3X3NsWTS/UTJWZ7qVjcQhVJqONkS+SXlGT7r6Py9yp4k5pdzM1k7NM9diXVqp418ebHlpa3prXZp+TXr/Q+gVOOh93B5st9zm8X4fKma6qcZJuuxLSmvT2a81/Q4Or6ftP/ACXzNunz9m6fByHE8R2nTPUTvdA0IANAAAAspqndbGutbnLokVGLk6QHar4PjxwrJW33Sy0m4V1Qi4t+ScmzeGPE9nJ36kRKOblJV7Tirak4WQlXZH70JLTROTC4b8oiGXU3FqmhtGZqTQxh0AwpDAaKEA6QgDygAHELGLyjsZNAMKAY8F1GJmqtdBGbLkgEOkKwCgsAisYR2MKCwCFjCMCBZSFkBSMmTHoxo3xs4+RHTZR3QZQu5DNjXj90YTMpHVxl2OaRyzOhUYs5pGmDIZm0Wwe2IzaLBiAFgK0VYwaHY7JoYxWUhlVy+SRpE0jycjIbTfU3id0EY5zlvubJG6ig1ybYmKSNlZizCRaiSGHYhB2ABr6yQmxPg2S76M0YIAwIFgQLAgrGBhYCjGfCMDLljz9Yvuj73LjU0eNjyaWdytwvjzVNb9Didw2Z2JqStEcGn1TC0KgKL9AAsjU31fRe5LY1EzZmbCmDhU9y82aY8TluzOeRRVI40puUm2+rOxRo5HuRMKAKkKgGUxUA3OKhhU2Khh52KgCpCaGPEhjR6fwR0yctvzgop+nXZz9Q/MrxPR8nQubl4HV4pnWY8moPS7I5sUNJv1WVo5scyVi6t/U74RTR5E8jstxZTeRBR223rS899NFOOxnGXnpluRjSxsq2iyPLOubjJejXkeNmWmbR1xakrR0OD51mBa2uaVM2ueClyva7Si/2ZLyf9G0TDK4P1EZsKyxpn07Hu4d4p4RLh3FYV5VNy5YylHl+I0vT9mxd2vxW129OGSOWNS3T+Z8/lxT6eeqO1HyjjfA+I/2eZk4Srs4j4ZvnzJ/tVN+af7Mv0l5+3l58Euk3S1Y38V+ePD7z0+m6lZt06n8n+fFGmtU5OLDLwLlkYk3pTS04v92S/Zl7fltHPKCrXB3Hx/h+DPQhkUtns/D85Qy6IyLLJ1wzMWeNct7Xys6sU1NaJGU495ZwPOnY5YOW95dS+WT/AOLH1+vqel0uVy/xy5+q+/icE46Wd6jKSrnRkRU6J9JRf6Pfk15M7NSktMjNqzBxPhjqg76JO3H7ueusP9aX810+nY8/qum1b9/j9zow5nj2fBynHT6nkSi4OpHoRkpK0K0SUDQAdHgkG77HvXy62bxg3jbXsHja7RGrNzZUPkjpR2bYI6Nic+RnNtnLMe605utObaW+WK779jszRjLE69pwxl/kTZXo8s7UTQDJoZQ8Y+omxWWJImwHSXoSIbk32CwsWUdDsaYjQygMYxRjLa+4yWa4IlshlqQrEOkKxB0KwsZIVjDodjJoLGTQWMmirKRAGRjKMuQvlY7NoHIyV1Y7O7GzMl1JbNjXjrqjCbMps6+NHojlkzkmzbAzZgy1MkloshLqKiGi3Y6IoOxUFE2MADoYGykhispFFV3StmiLhycjIXc2gzugYLO5ujpQan1FIUkba30MJHPIuRBDCAggIap6mhPgUuDZLuZowQBjIAEEBAADABCij4EoH6EfPl9Mp1vcW0RKKfJSm1wdCriF0VqWpfVGEsEWarqJLktfEZ66Qin9Cf06K/Usy35V1vRyaXojSOKMTOWaUjHKLfc2IsVxAYNABBDJsQw7AApiAZCYx4kMZdBGbKR7X+zpYF+ddhcRu+zSvS+Df5Rl+6/VMNCzw7PvW6/kh9Xl6KfbQVxezX0Z6Lj3gDiMLdfbcHkb1F2WOvf5r+pGPpHP0TDN5bxTdSi0zj0eCMj7TGm7ieM5NpKGOpXSf0XRfqdMfJ2WtT2XrOKXlTG/Ri2fQsDgHCfBnDpcTya535kF/hzyJLfP5KMV0T/N+5z5HHHFu9hQyZepmoVR82nKV91ltj3ZZJzk/Vt7Z4k5OTbZ78VpVIshEybGdDhuZZhWNw+auWuettpS09p7XVNeTXVDx5Xjdozy4o5VTPonCOO4vE8SWNxHktpmuRztitPfTlsXZN+T+7L2fQ9jB1EZr8+f5T+R4HU9LPFK4/ns/L+p4bxN4C4h4ezbeK+DG5481/j4E/mTj6JP70fbuvJnFn6CeNvJ0vvj3P2fb4HT0/XRyJQz7NcP8/PE5HC+JYfGZ/CpTw+JJ6lhWv7z/wDLk+/+l/N9ThjozPTHaX+r/j7Pc9RZHBefuvH7/fj2F8oyrm4yi4zi9NNaaZm04vc3u0Z+I1O2McipyhkU/OpRXzdPNerXfXn1XmduHIp7N0/Hv9q/N913nJnx0tSO9w7Kq4niucuWnJr0rYp7j17ST/dl5P8AA9pSjkVT2kufB+DXqfd8DgTa44NMJ5GFNSjtx9uzIlGePndGsZJleTi42dFzxeWi/u630hL6fu/h09jly4YZVsa424PzWca6qyi34d8JVz8lLs/o/M8jLhljZ2wyqWz2YmjI1Or4f4nHhmTP41EL8a1KNkJLyXmvc7Okzxxyccnovn7nN1GKU0pY3Ulweini+HeJxlbjPGr6fNHJvnW4v6eZ7OOPR1qbv2f3weVkn1rdP6HO4zxDAxuHPhnBowcJtO+6EOVT115V5te7OHrOqxyXZ4VsdXSdNkUu0zPc86jzT0goYDJCHYyEAyEMePYkQ8RANrYAVTWmUikyplFC+ZQF9S6iZLNdaIbIZckTZNjJE2AyQWAUhWMOgsdh0FjsGh2MmhplAaKsoDHZSM2R90LNoHKvW2OztgZ1HqS2a2bcaPVGE2YzZ1aF0RzSZySZpiQZjIBDJgKi+L5o+4zNqggBB0BNjoADGRLY0BRky30RVmuNd5zchdGaRZ1wZzLujOhHZEWuXUbHJG2mXQwkc8kaYszMmEBBAQU9MAo2xfPBMy4ZztUwDAgATYAQAA2CGLtLuyh0fEa8dvyPv3I+dbNNeI35EuRLkXxwn6E6ydQ32J+gtYahZYbXkGsamUTxWvIrUWpGadDRVlJlEoaHZSZW1oZQAGRCAZEjGihMaLoLqQxmmqJlJjRtph2a7mDk07RVXsz1vDvEuZCEKeISnmYyXK4zl82vZvZ24vKksa86KvxWz9/iefm8l48juLo9Xj+OsDCoUeGcChValpTnNfq0ts5c3lCeTeTbFDyWlyzzPGeMZ3G8lXZ9vNy/chFajD6L+p5uXLLJyejhwwxKooyQRzs2LoIzYFqRDGXY9tlFqsqlyy7eqafdNdmvZlRm4O4kSipqpHr/AA/4mdfJRdHmguircuq/0Sfdfwy/Bvsep0/WJ+a/z2fZnkdV5PfpQ/Pb9y7xX4N4N4woeVjtUZq6faK1p7XlOPr9eptn6TD1a8/nxXK+/sfyOTB1WXpXp7vA+e574/4Zl8Dj+N/e3DofLHIjL/FrXtPv+Etr3R52fp+p6ZXmj2kPFcr+fja9Z6mDNjyf8T0vw7vz2Gnh9+FxTllwfNhdb3WPZqu+P/K+kv8AlbMMcY5HqwSt+HD/AL9x0vNp2yqvmvj9wRpng5cJKLo3JwhzxaUJPq6ZL92XdL8uqR7XR5I5UsOXZ8J+DfMX6nyvh3I8/qMbg9UN1z/ftXedlXTppVtbaoclGSl1UJP9mX18n5/XoaZo5eklUuH8BY5xy7d43PRb/mJ0z9V1X+5OvHP0lTNKkuDTqfwXC2MMrHfr1HLDqXiilkrZmKzhtFr3iXfDl/8AKt/o+/8AM8/J0Kk/N2OmGajBl41mLe6rklNJS6PaafZp+aPOyY5YpaZcnRCamrRToQwlAFDGMurAB9CEFAMdIlhYyRIx0IQyEDFuXTY4jizOzQsCQwL6kS2SzXWQ2Qy2JBIwAMhDGEMgDGQWBAsZNBY0K0UmWhJFWWjJkPox2bwRzLerHZ2REiupDZbNuMuqMJsxmdOpdDnZySLkIgYACADRk4sZLVl0ZKX1GQ00NoYgaAqya9RhZXZYktRCy4x72ZpBZqjJkdmaxZvjOTe+p0xO2BRGXUtmjRsomYyRhOJshIyZg0WbJJDsBBAC2mzlfXsKSsznGzT3W12M7MgDAgAQAEnJQjuRS32RSV7I5l+S5WN7OmMNjshjpHg8fD9j7BzPinI3VYiXkZOZm5GmOKl5E6hahvsy9BahahJYq9B6ilIzW4a9ClMpTMGRh630NFI1UjmX4+vI0UjRSMVlei0zRMolEZaAkAwokCyCJYzRXEzYzZTDsYyZSN9MDCTLRsriYSYzTCJkykXwRmxlsEZsC+CM2BYkSARATQUM6fDuLZGJOMlOe0uVSjLUtenXpJe0k/bR04uqnj53/Pzk5c3SQynpcTjONmVyhlRjtrrKMW1/zQ6tfVbX0Pb6bygp/n8Hj5uini3XByOM/wBn3A+M1u/D/wDDWS6q3HknBv6diM/k3peq85Kn4rb5cBi67Nh817+08pxbhPirhGFbh3uHG+FyXK4Wbc4pPa5Xvmi0+q039Dgy9B1uGLjF9rDw7/v8Gzsx5+nyO/Qfy+xm8KeJpRyfsHE48l7TrX2iO1dF/wDDsT1t+/n7M7vJ3lSPUL9F1yqXCb+j9fr7yOp6Vw/y4ePV/B2+LU2cMrebhwtyeFL/ADam+a7Efo3+3D0fdeZHWdHl6N2lqh819/qhYOoWTzZbP6kxOIVXVK7DuUovzi/5nKuqjFaoM6nC9mXyzZ3VyhbGEm1pS1pol9VPJFqRLxqLtHjvFPE8qvOw1iTStVygtrfNHpHlftt7PIzZnLLXcjtinGET0XmbI1CMAjENEAHEAUADohgOiQGQgGQgBZ9xlLkFyZX3NEahihMGaK1olshmiDIZLLUIkYQxkIYRAFAMZCAKFYwhYxWNMpFNr6FpmsTBkS7lJnTjRgn3CzqiSC6ktjZsx+6MZGMzpVdjBnLIuRBAyGBBgEAJ1QxDKyS8x2GlB+LILFpQspN92FlpJCMChWMaMeS+jNYG+M5GS+p1QO/GZebqaG1F9NmmiJIylE302bMJI55RNEZEMxaHJEQYg7ACyu1w7MTjZEoJl6vi/vIjSzN433BdtfuFMNEiqzJjFfKilBlLE3yc/JyHLuzeEKOrHjSOfOz5joSOpR2OfVSkux9E2fnLZojBImxDKIhB5QAjiAxJVphY0zNdQmuxaZaZy8vF79DWMjWMjj5VGm+htFm8Wc6yGmWmaIq0MsKRIy2CIYzTVEzkxo30RMJMpG+mJzyZSNdcTGTKL4ozYy2KIYy2K6mbAugQwLUiQIIZAAIgGTaaabTXVNeQAbcbiWRj2c8Zy5vOSlyyf1fn+KZ04usyY34/n5zZzZekx5FxR16+Pxur+HlafutQl/8Aq/zier0/leEX5/z/ACvoebl8mzjvD8/n6lOVw/hvFIqGRGi1v7sbo8k/w33/AOVs9aWbpesillSft/h/Y5Es2B7Wi/H4fdh6hXKyWlpK17evRt919Tux6Yw03a+PzMZS1bnlfEnhO+qyfEPDyePkL5rMRPSl6uH+3Y+e8oeR7by9Nz4ePs9fqO7p+srzcnHiczhPFbp0r+8Kvg3dddNb16ry6ngrJLG6mqPS0alaOI4/bPFOLW+safnf4Lf82jymtTrxO1+l7D2B6QgooQQAaIwGQgGQhDIhjLCQGRIBQDBa9QGuQXJm8zQ0HgiWJl0RWSy2LJYi2LJJLEIAoQxkIAoBhQhjkgFBYCz7AmWjJfLWzRM3gjnXyKR1wRlkBsgx7iY2a6H1RlIykjo0vaMGc0jXCDaM3IxbRYqvcWonWB1sakPUK013KTHYBjIAB0FgTQWMDQ7CyuY0WjDlPozaB040cfIfVnVE7oGRs1RugwnpiaE0a6bexlKJjKBtrt2ZNHPKJfGZFGTRYpCJoOxATYwA2AUJKZSRSiZ7LdGiiaxiY7rTaMTeMTLKfU1SNki2MT3D8xsbQCIICAMIgBoBiyiMZlvq2iky0zj5tHfobRkbxZw8mvTZumbxZklEZogJCZSLa0QxmulGUijoUR7HPIpG+qPQwkyjTBGTGXRRDKLIkMCyJLGXQM2ItRAEAZAAggI5JdyJTUeRlM7/AN04svVVtEtRKpSb6yf4HJLI3vJlpBhlWVRcaZOMX3XdP6rsyY9Zkxf8ToUsUZ+krN2Hx7LxkoqT5P3Yv5f+l7X5JHp9N/6g6jFtNX8v6+Rx5fJmKe62Os/FLnhXxhTTHLlXKNdjbhyya6Nr5l+qPbx/+o8WSNN6X6/urPPl5JnGSa3X57DxU+HZsKee7IwrNvoo3qc379P6nNk6/DBapyT9jtnbHFKTpJobhXDYY+fZk825yr5dLsup5UckM2bVjVJbnUoOC3e52TtEQYgjGFAIsXUkAoGIdEMY5IDIkYyEBTdLb9i4oqKKl1ZRZbElkssRIhkIRbFiEy+EWQ5EtliivUVisblXkxWFkcWh2UmARQyZIEbENCTl0BGkUYciRojogjn2vqWdUUUsDZBiIGaaHuS0ZyM5HXxYqKTfc5Zuzjm74NkZbM6MKGAQdgIPSS0x8BwVSjp+xadlp2DQWMKQWIPKKwsjiFjspsRaZpE52Uu5tBnVjOVkR6nVFnbBmKaNkzoTE3oZQ8J6E0S4miu7RDiZSgaq7zJxMXAujcvUlxM3AsVyFpJ0E+Mg0hoElcvUpRKUCmy73LUTRQM1lu/M1UTWMTPOWzRI1SKm3sss3aPZPywggJoBkAAiGQAIAFc4gUjn5lW0zSLNYs89m1abOiLOmDOZZHTNDZCJAykW1ozZRspXYxkUjoUIwkUjdUjCQzTHoZNlDKa2YSyIqh4zRPaIKLoFXYF0CGItRIwiAgMCuc9GE8iQ0jPZNs87NkbNUipyOOU/AtIV9TFtsZAGTQ0gCkNIRdXTKXV9EdeHpJT3eyJckjVCEYLUUetixRxKomLbYdmpIUUIIAQBhi9MGgaLY6fYhk8FiRLAZIhjGXRdSRiWT6aRSRSRnkyzRIke4Ay6BDJY6ESNHqxMGaYRUV17mTdmbdlikIVDpiAZMVgOn6iY6BNaW0CZSK+YZdAciSkiucugGkUYr2aI6IIxTLR0xK2BoiREM3YUevM/IxyPuMMj7jfXPqY0c7RqrkQ0ZSRcmSZtDAIKAQ2trQXQroTl6lWXYUhWIIrGCQxoz2voUjSJhvWzaLOmDMF1ZvGR0wkYba9G8ZHTGRlnHRqmbJlfYooKloVCaLY2aFRLiWRuZOkhwHVwtJOgnxh6Q0Cu1saiPQK5tlUVpEb2MdCtNlIdg5X6Dsdm49k/LiABBDIAEACABAGRroIEZsiO0y0y4nn+IQ6s3gzpgzi3R6myOiJVoGaIsrIY0baTCRSOhQuxhIpG6swZQbJa6I480+4tIsx63LqzHHDVuxtmr4S0bPEKwxXKCVAy6IMC2JDEMS3QyuyejnyZKKSM8pHFOdmiQijKb0kczhLI6RVpF0MOT6yejaHk+UvSZPaFqxa499s3XQ448k62VzUI9oozyRxQ4RStlag5votIwWOWR7Iq6NFdKj5bZ3YumjDchybLDrSIA3pDASO5S0Zp2wLnDSNtLRIqGBAAgDGT0ICyM2vMhoVIf4jJ0j0iym/NiopIrlIdFpCNjKGiyWJl8GQyGWE2IuoXm/IibIky7ZFkEQrGOmFgMmTYDJiYxovfQlgZ7Plk0WnZtHdC8wF0JN9ALijHc+pojogimFM7XqMWyzXWo8mmHC7pLrpfVjoh9VFcBlwq1dmn+ImgXVR7x40zqr5ZJ7OaXIa1J2hoS0SwaNFcyWjKUTTCZDRk4l0ZEmbQ6YiWPERIJdGNFIXYxgbAqiucikikjPZItI1ijPYy0aozzjstM1TMttZrGRtGRiur0bRkdEZGSa0zZM3TK33KKJsAoKkAqGUgFQybAVDJbEIdRYtRLY6qYaiXIb4PsLULWT4PsPUGstPePzQggIAyaACAMgAQQyABTcuhSKRwuIrubwOiBwr11NkdMTOM0RZWQykbaTCQzoUGEikba+xhIoaUNs48kbZaLqZcvQUXpBmqM00bakxUTfUhsoaIhFqZLAEp9DmySoaRTJ7fQ4ZttmiHrq5u5cMLlyJyNMIxgux2QxqBLdhcmU2IqnLyRz5JdyKSEjXzPbMI4XJ2yrLoxSR1xgo8EthZoIDABWx0AI/K9hFUwLviJxNrtE0V7IoCbGBNiGMhAHYhk5iWikgOQqKSEcgopIXYDGiyWBogzNkMuTIINVS1UZSe5lLkZEgEAGQmwChDGQhjIlgVZXSZUHsa4+CjZRqJN9ARcUHHxnbLml0gaJDnk0qkbk41LlrSXuaGNOW7Ec2/NjKSIpP1EOh1Lf3ltHNL0h14FF9Gvmh2EzWE+5lEZaJaNGi+EyWjNxNFcyGjKUS+MiaMmiyMiSaBOfUaRSQjmVRVCSmOilEqlIpI0SKZMpFpFUijRFb6jKK5rZSZaZkugaxZtCRguhps6Is6YsyyNUbIUooiAB4iJLYR2S2Q2aa69kORjKRorp9jNzMnMvjT7E6jNzHVSDUTrJ8Jegag1mPR9Ofn5AAghkAZBAQBkACMAKLuzKRSOHxF9zeB0wOFf3ZsjpiZwNEWVksaNdJjIo6FDMJFI3VGEhlxy5C0KzmlIuiyEmJTYUXw6msbYixGhJHLSMZsYnNtnHO2Wi6qHqOGITZoXRdDpSokLBgK+pm9xgURKA7GRokIjY6AVyCgFcikhiOQ6AWUxNDoVWAgoKsLFQymOhUMpiodB5woKJziopIHOTRSQOYVFA2IYNiGPFksRdXIholo0RZmyGjbQ91fQwlyYS5HJEFCGFCGFCAZCGGImMpy38+vQqHBriWxnbLNUgVp22KK8yki29Ks6NmoRUI9kapHOt3bKWM0IMoiEAyMMip2MeL8n2IE0ZMmHw7OnZiN8crQkGJlNGitkMykjRBkMyaLVLS2Iiilz2y0jRRA5DKSFcgKSEbKKSK2MpCMZQgFCyHY0U2R2i4s0izn5ETogzpgzFNdTdM6UVMsskV1CxMvrjshszkzXTWZykYSkba69GTkYSkXxhoizJssURWTYdABNDsDln1h8IEQEACCGQQwAAQADAZmyJaTLRcUcDiE+rN4o6YI4tz6myOhFIFoeBDGa6n1MpFI3UyOeRRuqkYSGaY9TCaspDchzSgXY8YCUAsuj0RrFUhBb0EmBXJ7OWe5SHriEYA2aIvRslRIykJoAqRNAFDURkbHQAbCgFch0AjkOhiOQ0gEciqGJKQNDK3LqQMaMikgG5i0hUFSCh0HmFQ6JzCaAikTRQVIVDDshoZOYQUMmSMeEiWhNGiuZm0Q0bsSxb0+zMMiMMke81NaMrM0RIQwiAKEMZIBjrUU5Psiedg52MFs+abZvFUjpiqRROZVGsUaeF/NZKXoi0ic+yo0ze5MujNIQCyAMKEAxLVoYUc7WkBMxbriwKxbOjJElm7NFZDMpGiHYhmTBOe+i7DSHGImyiibAYGxlIVsYxJMZSK2BQBjFYDEmuhSKRhyUbwZ0Y2c+3udETriVaLssaCBsls10w2ZSZhORvphowbOaUjTGJFmTY4rJCMCDAgAcxH1p8KHQgIAE0ICaAZNCGAAEm9IaGc/Ls0maRRrFHn82e2zoijpijmWPbLNkIDKQ0SGUX1yMZspHW4fiW5DShr8zkyToLo7tPCJRS55pHK8oai9cOa+7NMnWPUVWY8qn1DktMVBQxhMBZMykyiJdTNIZbFaNUhDAAUxAMhpAHY6AHMKgA2FAI5DoYjkOgEcikhlbkOgFkwaGV76mdFFsexokBGOgDsAJsBk2IZNksYUyWhh5iGh0HYqGTmJoBlMTQUWwsIaE0aardGUokOJ08a9WJRl3OacaOacNO5e00Z2RZAGMhDHS0tvsTYrMeVkb+WPRI1hCt2dGPHW7MU7NGyR0RiZ7LSlE3jE6HBJ8zsXsWkYdSqpmuXcdGaIiRhAZBAFAASWrGLmyVdEW1vbMZY/ArEtUjFC2D8mZuLOhxZortj5IhxZk4ssdjl9BVROmgbGAdgOiDGABgbGNCMCkIxjQGMoVgAshopGPI7G0DfGc23uzpidcSrzLLLKltktkSZ0ceHYwkzlmzbBaRk2c7ZaiSCABBgEYEGB/9k=",
"headers": {
"Server": "nginx/1.14.2",
- "Date": "Tue, 15 Dec 2020 14:14:45 GMT",
+ "Date": "Mon, 12 Apr 2021 09:43:20 GMT",
"Content-Type": "image/jpeg",
"Content-Length": "28562",
"Connection": "keep-alive",
@@ -161,12 +203,16 @@
"x-rgw-object-type": "Normal",
"ETag": "\"f889f2485f455bd55bd4851944a90284\"",
"x-amz-meta-s3cmd-attrs": "uid:1008/gname:mastodon/uname:mastodon/gid:1008/mode:33188/mtime:1491844231/atime:1551273716/ctime:1491844231",
- "x-amz-request-id": "tx00000000000000036d87f-005fd88d90-1b195dc-default",
+ "x-amz-request-id": "tx000000000000001178570-0060740df3-3e40cf4-default",
"X-Cached": "HIT",
+ "Access-Control-Allow-Origin": "https://framapiaf.org",
+ "Access-Control-Allow-Credentials": "true",
+ "Access-Control-Allow-Methods": "GET, POST, HEAD, OPTIONS",
+ "Access-Control-Allow-Headers": "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,X-MM-TokenIndex",
"Accept-Ranges": "bytes"
},
"status_code": 200,
"type": "ok"
}
}
-]
\ No newline at end of file
+]
diff --git a/test/fixtures/vcr_cassettes/activity_pub/fetch_tcit@framapiaf.org_not_discoverable.json b/test/fixtures/vcr_cassettes/activity_pub/fetch_tcit@framapiaf.org_not_discoverable.json
index f9f89278..238794f8 100644
--- a/test/fixtures/vcr_cassettes/activity_pub/fetch_tcit@framapiaf.org_not_discoverable.json
+++ b/test/fixtures/vcr_cassettes/activity_pub/fetch_tcit@framapiaf.org_not_discoverable.json
@@ -3,26 +3,26 @@
"request": {
"body": "",
"headers": {
- "User-Agent": "localhost - Mobilizon 1.0.2-180-gae03f849-dirty",
- "Accept": "application/json, application/activity+json, application/jrd+json"
+ "User-Agent": "localhost - Mobilizon 1.1.0-43-g36000152-dirty",
+ "Accept": "application/xrd+xml, application/xml, text/xml"
},
"method": "get",
"options": {
"recv_timeout": 20000
},
"request_body": "",
- "url": "http://framapiaf.org/.well-known/webfinger?resource=acct:tcit@framapiaf.org"
+ "url": "http://framapiaf.org/.well-known/host-meta"
},
"response": {
"binary": false,
"body": "\r\n301 Moved Permanently\r\n\r\n301 Moved Permanently
\r\n
nginx/1.14.2\r\n\r\n\r\n",
"headers": {
"Server": "nginx/1.14.2",
- "Date": "Tue, 15 Dec 2020 15:17:25 GMT",
+ "Date": "Mon, 12 Apr 2021 09:43:51 GMT",
"Content-Type": "text/html",
"Content-Length": "185",
"Connection": "keep-alive",
- "Location": "https://framapiaf.org/.well-known/webfinger?resource=acct:tcit@framapiaf.org"
+ "Location": "https://framapiaf.org/.well-known/host-meta"
},
"status_code": 301,
"type": "ok"
@@ -32,7 +32,45 @@
"request": {
"body": "",
"headers": {
- "User-Agent": "localhost - Mobilizon 1.0.2-180-gae03f849-dirty",
+ "User-Agent": "localhost - Mobilizon 1.1.0-43-g36000152-dirty",
+ "Accept": "application/xrd+xml, application/xml, text/xml"
+ },
+ "method": "get",
+ "options": {
+ "recv_timeout": 20000
+ },
+ "request_body": "",
+ "url": "https://framapiaf.org/.well-known/host-meta"
+ },
+ "response": {
+ "binary": false,
+ "body": "\n\n \n\n",
+ "headers": {
+ "Date": "Mon, 12 Apr 2021 09:43:51 GMT",
+ "Content-Type": "application/xrd+xml; charset=utf-8",
+ "Transfer-Encoding": "chunked",
+ "Connection": "keep-alive",
+ "Server": "Mastodon",
+ "X-Frame-Options": "DENY",
+ "X-Content-Type-Options": "nosniff",
+ "X-XSS-Protection": "1; mode=block",
+ "Vary": "Accept, Accept-Encoding, Origin",
+ "Cache-Control": "max-age=259200, public",
+ "ETag": "W/\"4a5299e847275a5957709037c73a2295\"",
+ "X-Request-Id": "82f2617c-9c56-4eda-baa1-bee62e981172",
+ "X-Runtime": "0.003007",
+ "X-Cached": "HIT",
+ "Strict-Transport-Security": "max-age=31536000; includeSubDomains; preload"
+ },
+ "status_code": 200,
+ "type": "ok"
+ }
+ },
+ {
+ "request": {
+ "body": "",
+ "headers": {
+ "User-Agent": "localhost - Mobilizon 1.1.0-43-g36000152-dirty",
"Accept": "application/json, application/activity+json, application/jrd+json"
},
"method": "get",
@@ -46,7 +84,7 @@
"binary": false,
"body": "{\"subject\":\"acct:tcit@framapiaf.org\",\"aliases\":[\"https://framapiaf.org/@tcit\",\"https://framapiaf.org/users/tcit\"],\"links\":[{\"rel\":\"http://webfinger.net/rel/profile-page\",\"type\":\"text/html\",\"href\":\"https://framapiaf.org/@tcit\"},{\"rel\":\"self\",\"type\":\"application/activity+json\",\"href\":\"https://framapiaf.org/users/tcit\"},{\"rel\":\"http://ostatus.org/schema/1.0/subscribe\",\"template\":\"https://framapiaf.org/authorize_interaction?uri={uri}\"}]}",
"headers": {
- "Date": "Tue, 15 Dec 2020 15:17:25 GMT",
+ "Date": "Mon, 12 Apr 2021 09:43:51 GMT",
"Content-Type": "application/jrd+json; charset=utf-8",
"Transfer-Encoding": "chunked",
"Connection": "keep-alive",
@@ -57,8 +95,8 @@
"Vary": "Accept, Accept-Encoding, Origin",
"Cache-Control": "max-age=259200, public",
"ETag": "W/\"faab8ee8c2b4d8858c5d58028878f99c\"",
- "X-Request-Id": "b5fb66c6-49e7-428b-a1f2-ac82459f8777",
- "X-Runtime": "0.009471",
+ "X-Request-Id": "06fdc081-d68e-4f5b-a6e2-1e9dd6cd730a",
+ "X-Runtime": "0.003687",
"X-Cached": "HIT",
"Strict-Transport-Security": "max-age=31536000; includeSubDomains; preload"
},
@@ -81,7 +119,7 @@
"binary": false,
"body": "{\"@context\":[\"https://www.w3.org/ns/activitystreams\",\"https://w3id.org/security/v1\",{\"manuallyApprovesFollowers\":\"as:manuallyApprovesFollowers\",\"toot\":\"http://joinmastodon.org/ns#\",\"featured\":{\"@id\":\"toot:featured\",\"@type\":\"@id\"},\"alsoKnownAs\":{\"@id\":\"as:alsoKnownAs\",\"@type\":\"@id\"},\"movedTo\":{\"@id\":\"as:movedTo\",\"@type\":\"@id\"},\"schema\":\"http://schema.org#\",\"PropertyValue\":\"schema:PropertyValue\",\"value\":\"schema:value\",\"IdentityProof\":\"toot:IdentityProof\",\"discoverable\":\"toot:discoverable\",\"Device\":\"toot:Device\",\"Ed25519Signature\":\"toot:Ed25519Signature\",\"Ed25519Key\":\"toot:Ed25519Key\",\"Curve25519Key\":\"toot:Curve25519Key\",\"EncryptedMessage\":\"toot:EncryptedMessage\",\"publicKeyBase64\":\"toot:publicKeyBase64\",\"deviceId\":\"toot:deviceId\",\"claim\":{\"@type\":\"@id\",\"@id\":\"toot:claim\"},\"fingerprintKey\":{\"@type\":\"@id\",\"@id\":\"toot:fingerprintKey\"},\"identityKey\":{\"@type\":\"@id\",\"@id\":\"toot:identityKey\"},\"devices\":{\"@type\":\"@id\",\"@id\":\"toot:devices\"},\"messageFranking\":\"toot:messageFranking\",\"messageType\":\"toot:messageType\",\"cipherText\":\"toot:cipherText\",\"Hashtag\":\"as:Hashtag\",\"focalPoint\":{\"@container\":\"@list\",\"@id\":\"toot:focalPoint\"}}],\"id\":\"https://framapiaf.org/users/tcit\",\"type\":\"Person\",\"following\":\"https://framapiaf.org/users/tcit/following\",\"followers\":\"https://framapiaf.org/users/tcit/followers\",\"inbox\":\"https://framapiaf.org/users/tcit/inbox\",\"outbox\":\"https://framapiaf.org/users/tcit/outbox\",\"featured\":\"https://framapiaf.org/users/tcit/collections/featured\",\"preferredUsername\":\"tcit\",\"name\":\"💼 Thomas Citharel (Work)\",\"summary\":\"\\u003cp\\u003e\\u003ca href=\\\"https://framapiaf.org/tags/Framasoft\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003eFramasoft\\u003c/span\\u003e\\u003c/a\\u003e \\u003ca href=\\\"https://framapiaf.org/tags/FreeSoftware\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003eFreeSoftware\\u003c/span\\u003e\\u003c/a\\u003e \\u003ca href=\\\"https://framapiaf.org/tags/Activism\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003eActivism\\u003c/span\\u003e\\u003c/a\\u003e \\u003ca href=\\\"https://framapiaf.org/tags/wallabag\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003ewallabag\\u003c/span\\u003e\\u003c/a\\u003e \\u003ca href=\\\"https://framapiaf.org/tags/Federation\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003eFederation\\u003c/span\\u003e\\u003c/a\\u003e \\u003ca href=\\\"https://framapiaf.org/tags/Nextcloud\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003eNextcloud\\u003c/span\\u003e\\u003c/a\\u003e \\u003ca href=\\\"https://framapiaf.org/tags/Mobilizon\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003eMobilizon\\u003c/span\\u003e\\u003c/a\\u003e \\u003ca href=\\\"https://framapiaf.org/tags/Libre\\\" class=\\\"mention hashtag\\\" rel=\\\"tag\\\"\\u003e#\\u003cspan\\u003eLibre\\u003c/span\\u003e\\u003c/a\\u003e\\u003c/p\\u003e\",\"url\":\"https://framapiaf.org/@tcit\",\"manuallyApprovesFollowers\":false,\"discoverable\":false,\"devices\":\"https://framapiaf.org/users/tcit/collections/devices\",\"publicKey\":{\"id\":\"https://framapiaf.org/users/tcit#main-key\",\"owner\":\"https://framapiaf.org/users/tcit\",\"publicKeyPem\":\"-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApscVCt06lrIiB5jT6Kqk\\nZZwPVoPkhR7HzoTGb8rnklZuOyP4goHIuBDnurklztkmDCaM7DbsUWAPgRVtwWFE\\nWuQrOenb7BPRe/m99pJfUTkBQU3IeuRMD/5Fc3OTIhHQOltTSiB900srCUxjysfw\\nnV5JFciCz8YAXTNJZD34qyv8DbtC/pCJM7wMd9Hl3ohxSPETa6CJUaTdlNwlYJa2\\nMOMCj6/7Iv5oAg14FT9lwqS5lF7jPHk9Z7PNc2wPmNVgIYA2n9d5k7JY8TdM8iu4\\nHLnIbJuqDd1uitlYgy1qsdsxjv4U2Y7Nytc+3ZKHtGsCzUltYL5kC7uWrFpGoWo1\\n0QIDAQAB\\n-----END PUBLIC KEY-----\\n\"},\"tag\":[{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/activism\",\"name\":\"#activism\"},{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/federation\",\"name\":\"#federation\"},{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/framasoft\",\"name\":\"#framasoft\"},{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/freesoftware\",\"name\":\"#freesoftware\"},{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/libre\",\"name\":\"#libre\"},{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/mobilizon\",\"name\":\"#mobilizon\"},{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/nextcloud\",\"name\":\"#nextcloud\"},{\"type\":\"Hashtag\",\"href\":\"https://framapiaf.org/explore/wallabag\",\"name\":\"#wallabag\"}],\"attachment\":[{\"type\":\"PropertyValue\",\"name\":\"Personal account\",\"value\":\"\\u003ca href=\\\"https://social.tcit.fr/@tcit\\\" rel=\\\"me nofollow noopener noreferrer\\\" target=\\\"_blank\\\"\\u003e\\u003cspan class=\\\"invisible\\\"\\u003ehttps://\\u003c/span\\u003e\\u003cspan class=\\\"\\\"\\u003esocial.tcit.fr/@tcit\\u003c/span\\u003e\\u003cspan class=\\\"invisible\\\"\\u003e\\u003c/span\\u003e\\u003c/a\\u003e\"},{\"type\":\"PropertyValue\",\"name\":\"Location\",\"value\":\"Nantes, France\"},{\"type\":\"PropertyValue\",\"name\":\"Works at\",\"value\":\"\\u003cspan class=\\\"h-card\\\"\\u003e\\u003ca href=\\\"https://framapiaf.org/@Framasoft\\\" class=\\\"u-url mention\\\"\\u003e@\\u003cspan\\u003eFramasoft\\u003c/span\\u003e\\u003c/a\\u003e\\u003c/span\\u003e\"},{\"type\":\"PropertyValue\",\"name\":\"Website\",\"value\":\"\\u003ca href=\\\"https://tcit.fr\\\" rel=\\\"me nofollow noopener noreferrer\\\" target=\\\"_blank\\\"\\u003e\\u003cspan class=\\\"invisible\\\"\\u003ehttps://\\u003c/span\\u003e\\u003cspan class=\\\"\\\"\\u003etcit.fr\\u003c/span\\u003e\\u003cspan class=\\\"invisible\\\"\\u003e\\u003c/span\\u003e\\u003c/a\\u003e\"},{\"type\":\"IdentityProof\",\"name\":\"tcit\",\"signatureAlgorithm\":\"keybase\",\"signatureValue\":\"f66b45be42803010fe2f4d80e729b41bbe5ed056e2ff1286b7b5a5ea9c724cc70f\"}],\"endpoints\":{\"sharedInbox\":\"https://framapiaf.org/inbox\"},\"icon\":{\"type\":\"Image\",\"mediaType\":\"image/jpeg\",\"url\":\"https://framapiaf.s3.framasoft.org/framapiaf/accounts/avatars/000/000/001/original/da0cad7ffd20eb61.jpg\"},\"image\":{\"type\":\"Image\",\"mediaType\":\"image/jpeg\",\"url\":\"https://framapiaf.s3.framasoft.org/framapiaf/accounts/headers/000/000/001/original/198d058b3086d82d.jpg\"}}",
"headers": {
- "Date": "Tue, 15 Dec 2020 15:17:26 GMT",
+ "Date": "Mon, 12 Apr 2021 09:43:51 GMT",
"Content-Type": "application/activity+json; charset=utf-8",
"Transfer-Encoding": "chunked",
"Connection": "keep-alive",
@@ -92,9 +130,9 @@
"Vary": "Accept, Accept-Encoding, Origin",
"Cache-Control": "max-age=180, public",
"ETag": "W/\"5d358dbfda8db0e851d1476b22a4afa0\"",
- "X-Request-Id": "24570eeb-c2e9-4d2d-acef-9cd38edaeda0",
- "X-Runtime": "0.013956",
- "X-Cached": "EXPIRED",
+ "X-Request-Id": "21d6d06d-ec25-45a4-95a0-d2f69afe4325",
+ "X-Runtime": "0.016197",
+ "X-Cached": "HIT",
"Strict-Transport-Security": "max-age=31536000; includeSubDomains; preload"
},
"status_code": 200,
@@ -105,7 +143,7 @@
"request": {
"body": "",
"headers": {
- "User-Agent": "localhost - Mobilizon 1.0.2-180-gae03f849-dirty"
+ "User-Agent": "localhost - Mobilizon 1.1.0-43-g36000152-dirty"
},
"method": "get",
"options": {
@@ -119,7 +157,7 @@
"body": "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",
"headers": {
"Server": "nginx/1.14.2",
- "Date": "Tue, 15 Dec 2020 15:17:26 GMT",
+ "Date": "Mon, 12 Apr 2021 09:43:51 GMT",
"Content-Type": "image/jpeg",
"Content-Length": "4297",
"Connection": "keep-alive",
@@ -127,8 +165,12 @@
"x-rgw-object-type": "Normal",
"ETag": "\"0198adc7595a8c7b0730df99f9d9aa6c\"",
"x-amz-meta-s3cmd-attrs": "uid:1008/gname:mastodon/uname:mastodon/gid:1008/mode:33188/mtime:1491844231/atime:1551282313/ctime:1491844231",
- "x-amz-request-id": "tx00000000000000036d87e-005fd88d90-1b195dc-default",
+ "x-amz-request-id": "tx00000000000000117856f-0060740df3-3e40cf4-default",
"X-Cached": "HIT",
+ "Access-Control-Allow-Origin": "https://framapiaf.org",
+ "Access-Control-Allow-Credentials": "true",
+ "Access-Control-Allow-Methods": "GET, POST, HEAD, OPTIONS",
+ "Access-Control-Allow-Headers": "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,X-MM-TokenIndex",
"Accept-Ranges": "bytes"
},
"status_code": 200,
@@ -139,7 +181,7 @@
"request": {
"body": "",
"headers": {
- "User-Agent": "localhost - Mobilizon 1.0.2-180-gae03f849-dirty"
+ "User-Agent": "localhost - Mobilizon 1.1.0-43-g36000152-dirty"
},
"method": "get",
"options": {
@@ -153,7 +195,7 @@
"body": "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",
"headers": {
"Server": "nginx/1.14.2",
- "Date": "Tue, 15 Dec 2020 15:17:26 GMT",
+ "Date": "Mon, 12 Apr 2021 09:43:51 GMT",
"Content-Type": "image/jpeg",
"Content-Length": "28562",
"Connection": "keep-alive",
@@ -161,8 +203,12 @@
"x-rgw-object-type": "Normal",
"ETag": "\"f889f2485f455bd55bd4851944a90284\"",
"x-amz-meta-s3cmd-attrs": "uid:1008/gname:mastodon/uname:mastodon/gid:1008/mode:33188/mtime:1491844231/atime:1551273716/ctime:1491844231",
- "x-amz-request-id": "tx00000000000000036d87f-005fd88d90-1b195dc-default",
+ "x-amz-request-id": "tx000000000000001178570-0060740df3-3e40cf4-default",
"X-Cached": "HIT",
+ "Access-Control-Allow-Origin": "https://framapiaf.org",
+ "Access-Control-Allow-Credentials": "true",
+ "Access-Control-Allow-Methods": "GET, POST, HEAD, OPTIONS",
+ "Access-Control-Allow-Headers": "DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,X-MM-TokenIndex",
"Accept-Ranges": "bytes"
},
"status_code": 200,
diff --git a/test/fixtures/vcr_cassettes/relay/fetch_relay_follow.json b/test/fixtures/vcr_cassettes/relay/fetch_relay_follow.json
deleted file mode 100644
index 7d402794..00000000
--- a/test/fixtures/vcr_cassettes/relay/fetch_relay_follow.json
+++ /dev/null
@@ -1,101 +0,0 @@
-[
- {
- "request": {
- "body": "",
- "headers": {
- "Accept": "application/json, application/activity+json, application/jrd+json"
- },
- "method": "get",
- "options": {
- "follow_redirect": "true"
- },
- "request_body": "",
- "url": "http://mobilizon1.com/.well-known/webfinger?resource=acct:relay@mobilizon1.com"
- },
- "response": {
- "binary": false,
- "body": "{\"aliases\":[\"http://mobilizon1.com/relay\"],\"links\":[{\"href\":\"http://mobilizon1.com/relay\",\"rel\":\"self\",\"type\":\"application/activity+json\"},{\"href\":\"http://mobilizon1.com/relay\",\"rel\":\"https://webfinger.net/rel/profile-page/\",\"type\":\"text/html\"}],\"subject\":\"acct:relay@mobilizon1.com\"}",
- "headers": {
- "Server": "nginx/1.16.1",
- "Date": "Fri, 13 Dec 2019 09:41:40 GMT",
- "Content-Type": "application/json; charset=utf-8",
- "Content-Length": "284",
- "Connection": "keep-alive",
- "access-control-allow-credentials": "true",
- "access-control-allow-origin": "*",
- "access-control-expose-headers": "",
- "cache-control": "max-age=0, private, must-revalidate",
- "x-request-id": "Fd_k7OtPJ28p8-MAAAOh"
- },
- "status_code": 200,
- "type": "ok"
- }
- },
- {
- "request": {
- "body": "",
- "headers": {
- "Accept": "application/activity+json"
- },
- "method": "get",
- "options": {
- "follow_redirect": "true"
- },
- "request_body": "",
- "url": "http://mobilizon1.com/relay"
- },
- "response": {
- "binary": false,
- "body": "{\"@context\":[\"https://www.w3.org/ns/activitystreams\",\"https://litepub.social/litepub/context.jsonld\",{\"Hashtag\":\"as:Hashtag\",\"category\":\"sc:category\",\"ical\":\"http://www.w3.org/2002/12/cal/ical#\",\"joinMode\":{\"@id\":\"mz:joinMode\",\"@type\":\"mz:joinModeType\"},\"joinModeType\":{\"@id\":\"mz:joinModeType\",\"@type\":\"rdfs:Class\"},\"maximumAttendeeCapacity\":\"sc:maximumAttendeeCapacity\",\"mz\":\"https://joinmobilizon.org/ns#\",\"repliesModerationOption\":{\"@id\":\"mz:repliesModerationOption\",\"@type\":\"mz:repliesModerationOptionType\"},\"repliesModerationOptionType\":{\"@id\":\"mz:repliesModerationOptionType\",\"@type\":\"rdfs:Class\"},\"sc\":\"http://schema.org#\",\"uuid\":\"sc:identifier\"}],\"endpoints\":{\"sharedInbox\":\"http://mobilizon1.com/inbox\"},\"followers\":\"http://mobilizon1.com/relay/followers\",\"following\":\"http://mobilizon1.com/relay/following\",\"id\":\"http://mobilizon1.com/relay\",\"inbox\":\"http://mobilizon1.com/inbox\",\"manuallyApprovesFollowers\":false,\"name\":\"Mobilizon\",\"outbox\":null,\"preferredUsername\":\"relay\",\"publicKey\":{\"id\":\"http://mobilizon1.com/relay#main-key\",\"owner\":\"http://mobilizon1.com/relay\",\"publicKeyPem\":\"-----BEGIN RSA PUBLIC KEY-----\\nMIIBCgKCAQEAqBbeHMV5UVw0AIVch7fWDp2it5rqbGZX6yXPYnnT8LHhdvfv3DFk\\npk74BN66MzNqsthvSVznu2BEil0sEKD5rQoE9Yirhzz/LN9SlnU+u6262nBA18E3\\nkQ10RgL2jpZ9e8Om6qYqarhN7draupJXYRKEaUoEFPT09ABbwQv+4K1YadU8klJi\\nHJ6D+IIHiXNizfsxVLDKpbUKStMYeEzyfqCkWw0EQEuzc3O7Aci5lwCMkCts2993\\nsTbNyzsYAVWJNcy/An1F1P+K4iZhWEtZInQz67MBtjMWtQUhyWib0e671HdBiWM6\\nkZq74U8c6RR6eMzBLuY7YAUCG6nWg90zxwIDAQAB\\n-----END RSA PUBLIC KEY-----\\n\\n\"},\"summary\":\"Change this to a proper description of your instance\",\"type\":\"Application\",\"url\":\"http://mobilizon1.com/relay\"}",
- "headers": {
- "Server": "nginx/1.16.1",
- "Date": "Fri, 13 Dec 2019 09:41:41 GMT",
- "Content-Type": "application/activity+json",
- "Content-Length": "1657",
- "Connection": "keep-alive",
- "access-control-allow-credentials": "true",
- "access-control-allow-origin": "*",
- "access-control-expose-headers": "",
- "cache-control": "max-age=0, private, must-revalidate",
- "x-request-id": "Fd_k7PjOAWuySL0AAAPB"
- },
- "status_code": 200,
- "type": "ok"
- }
- },
- {
- "request": {
- "body": "{\"@context\":[\"https://www.w3.org/ns/activitystreams\",\"https://litepub.social/litepub/context.jsonld\",{\"Hashtag\":\"as:Hashtag\",\"category\":\"sc:category\",\"ical\":\"http://www.w3.org/2002/12/cal/ical#\",\"joinMode\":{\"@id\":\"mz:joinMode\",\"@type\":\"mz:joinModeType\"},\"joinModeType\":{\"@id\":\"mz:joinModeType\",\"@type\":\"rdfs:Class\"},\"maximumAttendeeCapacity\":\"sc:maximumAttendeeCapacity\",\"mz\":\"https://joinmobilizon.org/ns#\",\"repliesModerationOption\":{\"@id\":\"mz:repliesModerationOption\",\"@type\":\"mz:repliesModerationOptionType\"},\"repliesModerationOptionType\":{\"@id\":\"mz:repliesModerationOptionType\",\"@type\":\"rdfs:Class\"},\"sc\":\"http://schema.org#\",\"uuid\":\"sc:identifier\"}],\"actor\":\"http://mobilizon.test/relay\",\"cc\":[\"https://www.w3.org/ns/activitystreams#Public\"],\"id\":\"http://mobilizon.test/follow/b7791977-2a75-4715-815b-6e7125065b71\",\"object\":\"http://mobilizon1.com/relay\",\"to\":[\"http://mobilizon1.com/relay\"],\"type\":\"Follow\"}",
- "headers": {
- "Content-Type": "application/activity+json",
- "signature": "keyId=\"http://mobilizon.test/relay#main-key\",algorithm=\"rsa-sha256\",headers=\"(request-target) content-length date digest host\",signature=\"WbyGHT/WdvdRpWek8uCGHrFSblLpg+Iq802R5S2cjNj035OKpxRmu1r8u9Qr5KGIKgZn6LHt9YmB+PNlwsubPtTSkJpE8AAUDMHLKgCrH7A5Q6x6GlARl5bHNo4QtOxkXvnEbn31xfNDNp70QqZb/emw95TnELYUlMLZds0qYutT8U4WdDhSWcVytQmKJWNZXxEj+KlMDUaxag3lGscJ/HY0F+yGNov7FHthid1Y4LTGFsp/tismnMTlba12NH/kXPHtduNsX8uxFslM2ODwqAaospTGEpXmr9CPgbNy7626qgYaR2RdB/fYlCayLI4JJIlH8gOdocGHPrWNtVEHaQ==\"",
- "digest": "SHA-256=ibNFcsnBeCCjWZo9We60tKfbRN3el0WCMVdOxtuC1cg=",
- "date": "Fri, 13 Dec 2019 09:41:41 GMT"
- },
- "method": "post",
- "options": {
- "pool": "default"
- },
- "request_body": "",
- "url": "http://mobilizon1.com/inbox"
- },
- "response": {
- "binary": false,
- "body": "# HTTPoison.Error at POST /inbox\n\nException:\n\n ** (HTTPoison.Error) :nxdomain\n (httpoison) lib/httpoison.ex:128: HTTPoison.request!/5\n (mobilizon) lib/service/activity_pub/activity_pub.ex:610: Mobilizon.Service.ActivityPub.fetch_and_prepare_actor_from_url/1\n (mobilizon) lib/service/activity_pub/activity_pub.ex:473: Mobilizon.Service.ActivityPub.make_actor_from_url/2\n (mobilizon) lib/service/activity_pub/activity_pub.ex:122: Mobilizon.Service.ActivityPub.get_or_fetch_actor_by_url/2\n (mobilizon) lib/service/http_signatures/signature.ex:54: Mobilizon.Federation.HTTPSignatures.Signature.get_public_key_for_url/1\n (mobilizon) lib/service/http_signatures/signature.ex:74: Mobilizon.Federation.HTTPSignatures.Signature.fetch_public_key/1\n (http_signatures) lib/http_signatures/http_signatures.ex:40: HTTPSignatures.validate_conn/1\n (mobilizon) lib/mobilizon_web/http_signature.ex:45: Mobilizon.Web.HTTPSignaturePlug.call/2\n (mobilizon) Mobilizon.Web.Router.activity_pub_signature/2\n (mobilizon) lib/mobilizon_web/router.ex:1: Mobilizon.Web.Router.__pipe_through7__/1\n (phoenix) lib/phoenix/router.ex:283: Phoenix.Router.__call__/2\n (mobilizon) lib/mobilizon_web/endpoint.ex:1: Mobilizon.Web.Endpoint.plug_builder_call/2\n (mobilizon) lib/plug/debugger.ex:122: Mobilizon.Web.Endpoint.\"call (overridable 3)\"/2\n (mobilizon) lib/mobilizon_web/endpoint.ex:1: Mobilizon.Web.Endpoint.call/2\n (phoenix) lib/phoenix/endpoint/cowboy2_handler.ex:42: Phoenix.Endpoint.Cowboy2Handler.init/4\n (cowboy) /home/tcit/dev/frama/mobilizon/deps/cowboy/src/cowboy_handler.erl:41: :cowboy_handler.execute/2\n (cowboy) /home/tcit/dev/frama/mobilizon/deps/cowboy/src/cowboy_stream_h.erl:320: :cowboy_stream_h.execute/3\n (cowboy) /home/tcit/dev/frama/mobilizon/deps/cowboy/src/cowboy_stream_h.erl:302: :cowboy_stream_h.request_process/3\n (stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3\n \n\n## Connection details\n\n### Params\n\n %{\"@context\" => [\"https://www.w3.org/ns/activitystreams\", \"https://litepub.social/litepub/context.jsonld\", %{\"Hashtag\" => \"as:Hashtag\", \"category\" => \"sc:category\", \"ical\" => \"http://www.w3.org/2002/12/cal/ical#\", \"joinMode\" => %{\"@id\" => \"mz:joinMode\", \"@type\" => \"mz:joinModeType\"}, \"joinModeType\" => %{\"@id\" => \"mz:joinModeType\", \"@type\" => \"rdfs:Class\"}, \"maximumAttendeeCapacity\" => \"sc:maximumAttendeeCapacity\", \"mz\" => \"https://joinmobilizon.org/ns#\", \"repliesModerationOption\" => %{\"@id\" => \"mz:repliesModerationOption\", \"@type\" => \"mz:repliesModerationOptionType\"}, \"repliesModerationOptionType\" => %{\"@id\" => \"mz:repliesModerationOptionType\", \"@type\" => \"rdfs:Class\"}, \"sc\" => \"http://schema.org#\", \"uuid\" => \"sc:identifier\"}], \"actor\" => \"http://mobilizon.test/relay\", \"cc\" => [\"https://www.w3.org/ns/activitystreams#Public\"], \"id\" => \"http://mobilizon.test/follow/b7791977-2a75-4715-815b-6e7125065b71\", \"object\" => \"http://mobilizon1.com/relay\", \"to\" => [\"http://mobilizon1.com/relay\"], \"type\" => \"Follow\"}\n\n### Request info\n\n * URI: http://mobilizon1.com:80/inbox\n * Query string: \n\n### Headers\n \n * connection: upgrade\n * content-length: 912\n * content-type: application/activity+json\n * date: Fri, 13 Dec 2019 09:41:41 GMT\n * digest: SHA-256=ibNFcsnBeCCjWZo9We60tKfbRN3el0WCMVdOxtuC1cg=\n * host: mobilizon1.com\n * signature: keyId=\"http://mobilizon.test/relay#main-key\",algorithm=\"rsa-sha256\",headers=\"(request-target) content-length date digest host\",signature=\"WbyGHT/WdvdRpWek8uCGHrFSblLpg+Iq802R5S2cjNj035OKpxRmu1r8u9Qr5KGIKgZn6LHt9YmB+PNlwsubPtTSkJpE8AAUDMHLKgCrH7A5Q6x6GlARl5bHNo4QtOxkXvnEbn31xfNDNp70QqZb/emw95TnELYUlMLZds0qYutT8U4WdDhSWcVytQmKJWNZXxEj+KlMDUaxag3lGscJ/HY0F+yGNov7FHthid1Y4LTGFsp/tismnMTlba12NH/kXPHtduNsX8uxFslM2ODwqAaospTGEpXmr9CPgbNy7626qgYaR2RdB/fYlCayLI4JJIlH8gOdocGHPrWNtVEHaQ==\"\n * user-agent: hackney/1.15.2\n * x-forwarded-for: 127.0.0.1\n * x-real-ip: 127.0.0.1\n\n### Session\n\n %{}\n",
- "headers": {
- "Server": "nginx/1.16.1",
- "Date": "Fri, 13 Dec 2019 09:41:41 GMT",
- "Content-Type": "text/markdown; charset=utf-8",
- "Content-Length": "3977",
- "Connection": "keep-alive",
- "access-control-allow-credentials": "true",
- "access-control-allow-origin": "*",
- "access-control-expose-headers": "",
- "cache-control": "max-age=0, private, must-revalidate",
- "x-request-id": "Fd_k7PoZpCCBYRQAAAPh"
- },
- "status_code": 500,
- "type": "ok"
- }
- }
-]
diff --git a/test/fixtures/vcr_cassettes/relay/fetch_relay_unfollow.json b/test/fixtures/vcr_cassettes/relay/fetch_relay_unfollow.json
deleted file mode 100644
index 2fa5b2c2..00000000
--- a/test/fixtures/vcr_cassettes/relay/fetch_relay_unfollow.json
+++ /dev/null
@@ -1,101 +0,0 @@
-[
- {
- "request": {
- "body": "",
- "headers": {
- "Accept": "application/json, application/activity+json, application/jrd+json"
- },
- "method": "get",
- "options": {
- "follow_redirect": "true"
- },
- "request_body": "",
- "url": "http://mobilizon1.com/.well-known/webfinger?resource=acct:relay@mobilizon1.com"
- },
- "response": {
- "binary": false,
- "body": "{\"aliases\":[\"http://mobilizon1.com/relay\"],\"links\":[{\"href\":\"http://mobilizon1.com/relay\",\"rel\":\"self\",\"type\":\"application/activity+json\"},{\"href\":\"http://mobilizon1.com/relay\",\"rel\":\"https://webfinger.net/rel/profile-page/\",\"type\":\"text/html\"}],\"subject\":\"acct:relay@mobilizon1.com\"}",
- "headers": {
- "Server": "nginx/1.16.1",
- "Date": "Fri, 13 Dec 2019 09:41:39 GMT",
- "Content-Type": "application/json; charset=utf-8",
- "Content-Length": "284",
- "Connection": "keep-alive",
- "access-control-allow-credentials": "true",
- "access-control-allow-origin": "*",
- "access-control-expose-headers": "",
- "cache-control": "max-age=0, private, must-revalidate",
- "x-request-id": "Fd_k7LmY5k0CMQkAAANB"
- },
- "status_code": 200,
- "type": "ok"
- }
- },
- {
- "request": {
- "body": "",
- "headers": {
- "Accept": "application/activity+json"
- },
- "method": "get",
- "options": {
- "follow_redirect": "true"
- },
- "request_body": "",
- "url": "http://mobilizon1.com/relay"
- },
- "response": {
- "binary": false,
- "body": "{\"@context\":[\"https://www.w3.org/ns/activitystreams\",\"https://litepub.social/litepub/context.jsonld\",{\"Hashtag\":\"as:Hashtag\",\"category\":\"sc:category\",\"ical\":\"http://www.w3.org/2002/12/cal/ical#\",\"joinMode\":{\"@id\":\"mz:joinMode\",\"@type\":\"mz:joinModeType\"},\"joinModeType\":{\"@id\":\"mz:joinModeType\",\"@type\":\"rdfs:Class\"},\"maximumAttendeeCapacity\":\"sc:maximumAttendeeCapacity\",\"mz\":\"https://joinmobilizon.org/ns#\",\"repliesModerationOption\":{\"@id\":\"mz:repliesModerationOption\",\"@type\":\"mz:repliesModerationOptionType\"},\"repliesModerationOptionType\":{\"@id\":\"mz:repliesModerationOptionType\",\"@type\":\"rdfs:Class\"},\"sc\":\"http://schema.org#\",\"uuid\":\"sc:identifier\"}],\"endpoints\":{\"sharedInbox\":\"http://mobilizon1.com/inbox\"},\"followers\":\"http://mobilizon1.com/relay/followers\",\"following\":\"http://mobilizon1.com/relay/following\",\"id\":\"http://mobilizon1.com/relay\",\"inbox\":\"http://mobilizon1.com/inbox\",\"manuallyApprovesFollowers\":false,\"name\":\"Mobilizon\",\"outbox\":null,\"preferredUsername\":\"relay\",\"publicKey\":{\"id\":\"http://mobilizon1.com/relay#main-key\",\"owner\":\"http://mobilizon1.com/relay\",\"publicKeyPem\":\"-----BEGIN RSA PUBLIC KEY-----\\nMIIBCgKCAQEAqBbeHMV5UVw0AIVch7fWDp2it5rqbGZX6yXPYnnT8LHhdvfv3DFk\\npk74BN66MzNqsthvSVznu2BEil0sEKD5rQoE9Yirhzz/LN9SlnU+u6262nBA18E3\\nkQ10RgL2jpZ9e8Om6qYqarhN7draupJXYRKEaUoEFPT09ABbwQv+4K1YadU8klJi\\nHJ6D+IIHiXNizfsxVLDKpbUKStMYeEzyfqCkWw0EQEuzc3O7Aci5lwCMkCts2993\\nsTbNyzsYAVWJNcy/An1F1P+K4iZhWEtZInQz67MBtjMWtQUhyWib0e671HdBiWM6\\nkZq74U8c6RR6eMzBLuY7YAUCG6nWg90zxwIDAQAB\\n-----END RSA PUBLIC KEY-----\\n\\n\"},\"summary\":\"Change this to a proper description of your instance\",\"type\":\"Application\",\"url\":\"http://mobilizon1.com/relay\"}",
- "headers": {
- "Server": "nginx/1.16.1",
- "Date": "Fri, 13 Dec 2019 09:41:40 GMT",
- "Content-Type": "application/activity+json",
- "Content-Length": "1657",
- "Connection": "keep-alive",
- "access-control-allow-credentials": "true",
- "access-control-allow-origin": "*",
- "access-control-expose-headers": "",
- "cache-control": "max-age=0, private, must-revalidate",
- "x-request-id": "Fd_k7L4h92fDp5cAAANh"
- },
- "status_code": 200,
- "type": "ok"
- }
- },
- {
- "request": {
- "body": "{\"@context\":[\"https://www.w3.org/ns/activitystreams\",\"https://litepub.social/litepub/context.jsonld\",{\"Hashtag\":\"as:Hashtag\",\"category\":\"sc:category\",\"ical\":\"http://www.w3.org/2002/12/cal/ical#\",\"joinMode\":{\"@id\":\"mz:joinMode\",\"@type\":\"mz:joinModeType\"},\"joinModeType\":{\"@id\":\"mz:joinModeType\",\"@type\":\"rdfs:Class\"},\"maximumAttendeeCapacity\":\"sc:maximumAttendeeCapacity\",\"mz\":\"https://joinmobilizon.org/ns#\",\"repliesModerationOption\":{\"@id\":\"mz:repliesModerationOption\",\"@type\":\"mz:repliesModerationOptionType\"},\"repliesModerationOptionType\":{\"@id\":\"mz:repliesModerationOptionType\",\"@type\":\"rdfs:Class\"},\"sc\":\"http://schema.org#\",\"uuid\":\"sc:identifier\"}],\"actor\":\"http://mobilizon.test/relay\",\"cc\":[\"https://www.w3.org/ns/activitystreams#Public\"],\"id\":\"http://mobilizon.test/follow/57a6973e-f43f-4533-bf71-7a14a4c6e5ac\",\"object\":\"http://mobilizon1.com/relay\",\"to\":[\"http://mobilizon1.com/relay\"],\"type\":\"Follow\"}",
- "headers": {
- "Content-Type": "application/activity+json",
- "signature": "keyId=\"http://mobilizon.test/relay#main-key\",algorithm=\"rsa-sha256\",headers=\"(request-target) content-length date digest host\",signature=\"JQPqSiJ0ZYdU6llrYXNMuN/bfzoLyubwOB59bljFq6i8ORXLw62Pt7Jue5WkMsySFcCXgS8k8K/H81YZkKzfWadwQV9L5rQEFSuW/DYJ2xffsDj90GsSi+sDRaQ5Ke8nPEbEMGR9jalh/F2VL97XscCgm6i3tdpbs6aFmqjKC+LzeH665t0WCHUxTgK47wECrMHw3j7lteGdm6N6IKWoWsRYeJoyFr/QCbNdWQOaAYYpCbJd0fjhPQRHhWQXidBoaDkhwesWc3mO8pvEnply9ES7Nzc6ULK7B98hg+aWeep8/KzRbxFyJ0OgnDJj/l39QiJ9t7v0yHX/WUzn0CaiiQ==\"",
- "digest": "SHA-256=Qc9d9X3qh2EqIqtn/72iY17OMDXAOINDC10hARNAc4w=",
- "date": "Fri, 13 Dec 2019 09:41:40 GMT"
- },
- "method": "post",
- "options": {
- "pool": "default"
- },
- "request_body": "",
- "url": "http://mobilizon1.com/inbox"
- },
- "response": {
- "binary": false,
- "body": "# HTTPoison.Error at POST /inbox\n\nException:\n\n ** (HTTPoison.Error) :nxdomain\n (httpoison) lib/httpoison.ex:128: HTTPoison.request!/5\n (mobilizon) lib/service/activity_pub/activity_pub.ex:610: Mobilizon.Service.ActivityPub.fetch_and_prepare_actor_from_url/1\n (mobilizon) lib/service/activity_pub/activity_pub.ex:473: Mobilizon.Service.ActivityPub.make_actor_from_url/2\n (mobilizon) lib/service/activity_pub/activity_pub.ex:122: Mobilizon.Service.ActivityPub.get_or_fetch_actor_by_url/2\n (mobilizon) lib/service/http_signatures/signature.ex:54: Mobilizon.Service.HTTPSignatures.Signature.get_public_key_for_url/1\n (mobilizon) lib/service/http_signatures/signature.ex:74: Mobilizon.Service.HTTPSignatures.Signature.fetch_public_key/1\n (http_signatures) lib/http_signatures/http_signatures.ex:40: HTTPSignatures.validate_conn/1\n (mobilizon) lib/mobilizon_web/http_signature.ex:45: Mobilizon.Web.HTTPSignaturePlug.call/2\n (mobilizon) Mobilizon.Web.Router.activity_pub_signature/2\n (mobilizon) lib/mobilizon_web/router.ex:1: Mobilizon.Web.Router.__pipe_through7__/1\n (phoenix) lib/phoenix/router.ex:283: Phoenix.Router.__call__/2\n (mobilizon) lib/mobilizon_web/endpoint.ex:1: Mobilizon.Web.Endpoint.plug_builder_call/2\n (mobilizon) lib/plug/debugger.ex:122: Mobilizon.Web.Endpoint.\"call (overridable 3)\"/2\n (mobilizon) lib/mobilizon_web/endpoint.ex:1: Mobilizon.Web.Endpoint.call/2\n (phoenix) lib/phoenix/endpoint/cowboy2_handler.ex:42: Phoenix.Endpoint.Cowboy2Handler.init/4\n (cowboy) /home/tcit/dev/frama/mobilizon/deps/cowboy/src/cowboy_handler.erl:41: :cowboy_handler.execute/2\n (cowboy) /home/tcit/dev/frama/mobilizon/deps/cowboy/src/cowboy_stream_h.erl:320: :cowboy_stream_h.execute/3\n (cowboy) /home/tcit/dev/frama/mobilizon/deps/cowboy/src/cowboy_stream_h.erl:302: :cowboy_stream_h.request_process/3\n (stdlib) proc_lib.erl:249: :proc_lib.init_p_do_apply/3\n \n\n## Connection details\n\n### Params\n\n %{\"@context\" => [\"https://www.w3.org/ns/activitystreams\", \"https://litepub.social/litepub/context.jsonld\", %{\"Hashtag\" => \"as:Hashtag\", \"category\" => \"sc:category\", \"ical\" => \"http://www.w3.org/2002/12/cal/ical#\", \"joinMode\" => %{\"@id\" => \"mz:joinMode\", \"@type\" => \"mz:joinModeType\"}, \"joinModeType\" => %{\"@id\" => \"mz:joinModeType\", \"@type\" => \"rdfs:Class\"}, \"maximumAttendeeCapacity\" => \"sc:maximumAttendeeCapacity\", \"mz\" => \"https://joinmobilizon.org/ns#\", \"repliesModerationOption\" => %{\"@id\" => \"mz:repliesModerationOption\", \"@type\" => \"mz:repliesModerationOptionType\"}, \"repliesModerationOptionType\" => %{\"@id\" => \"mz:repliesModerationOptionType\", \"@type\" => \"rdfs:Class\"}, \"sc\" => \"http://schema.org#\", \"uuid\" => \"sc:identifier\"}], \"actor\" => \"http://mobilizon.test/relay\", \"cc\" => [\"https://www.w3.org/ns/activitystreams#Public\"], \"id\" => \"http://mobilizon.test/follow/57a6973e-f43f-4533-bf71-7a14a4c6e5ac\", \"object\" => \"http://mobilizon1.com/relay\", \"to\" => [\"http://mobilizon1.com/relay\"], \"type\" => \"Follow\"}\n\n### Request info\n\n * URI: http://mobilizon1.com:80/inbox\n * Query string: \n\n### Headers\n \n * connection: upgrade\n * content-length: 912\n * content-type: application/activity+json\n * date: Fri, 13 Dec 2019 09:41:40 GMT\n * digest: SHA-256=Qc9d9X3qh2EqIqtn/72iY17OMDXAOINDC10hARNAc4w=\n * host: mobilizon1.com\n * signature: keyId=\"http://mobilizon.test/relay#main-key\",algorithm=\"rsa-sha256\",headers=\"(request-target) content-length date digest host\",signature=\"JQPqSiJ0ZYdU6llrYXNMuN/bfzoLyubwOB59bljFq6i8ORXLw62Pt7Jue5WkMsySFcCXgS8k8K/H81YZkKzfWadwQV9L5rQEFSuW/DYJ2xffsDj90GsSi+sDRaQ5Ke8nPEbEMGR9jalh/F2VL97XscCgm6i3tdpbs6aFmqjKC+LzeH665t0WCHUxTgK47wECrMHw3j7lteGdm6N6IKWoWsRYeJoyFr/QCbNdWQOaAYYpCbJd0fjhPQRHhWQXidBoaDkhwesWc3mO8pvEnply9ES7Nzc6ULK7B98hg+aWeep8/KzRbxFyJ0OgnDJj/l39QiJ9t7v0yHX/WUzn0CaiiQ==\"\n * user-agent: hackney/1.15.2\n * x-forwarded-for: 127.0.0.1\n * x-real-ip: 127.0.0.1\n\n### Session\n\n %{}\n",
- "headers": {
- "Server": "nginx/1.16.1",
- "Date": "Fri, 13 Dec 2019 09:41:40 GMT",
- "Content-Type": "text/markdown; charset=utf-8",
- "Content-Length": "3977",
- "Connection": "keep-alive",
- "access-control-allow-credentials": "true",
- "access-control-allow-origin": "*",
- "access-control-expose-headers": "",
- "cache-control": "max-age=0, private, must-revalidate",
- "x-request-id": "Fd_k7MU4jVIgj4wAAAOB"
- },
- "status_code": 500,
- "type": "ok"
- }
- }
-]
\ No newline at end of file
diff --git a/test/tasks/actors_test.exs b/test/tasks/actors_test.exs
index 934dd33e..e9788b8e 100644
--- a/test/tasks/actors_test.exs
+++ b/test/tasks/actors_test.exs
@@ -11,6 +11,7 @@ defmodule Mix.Tasks.Mobilizon.ActorsTest do
@username "someone"
@domain "somewhere.tld"
+ @error "Error: No such actor"
describe "show actor" do
test "show existing local actor" do
@@ -50,7 +51,7 @@ defmodule Mix.Tasks.Mobilizon.ActorsTest do
test "show non-existing actor" do
Show.run([@username])
assert_received {:mix_shell, :error, [message]}
- assert message =~ "Error: No such actor"
+ assert message =~ @error
end
end
end
diff --git a/test/tasks/relay_test.exs b/test/tasks/relay_test.exs
index 87f19771..e5a704a7 100644
--- a/test/tasks/relay_test.exs
+++ b/test/tasks/relay_test.exs
@@ -3,52 +3,73 @@
# SPDX-License-Identifier: AGPL-3.0-only
defmodule Mix.Tasks.Mobilizon.RelayTest do
- use ExVCR.Mock, adapter: ExVCR.Adapter.Hackney
-
use Mobilizon.DataCase
- alias Mobilizon.Actors
- alias Mobilizon.Actors.{Actor, Follower}
alias Mix.Tasks.Mobilizon.Relay.{Follow, Unfollow}
alias Mobilizon.Federation.ActivityPub.Relay
+ import Mock
+
+ Mix.shell(Mix.Shell.Process)
+
+ @target_instance "mobilizon1.com"
+
+ @output_1 "Requested to follow #{@target_instance}"
+ @error_1 "Some error"
+ @error_msg_1 "Error while following #{@target_instance}: \"#{@error_1}\""
+ @error_msg_1_unfollow "Error while unfollowing #{@target_instance}: \"#{@error_1}\""
+ @error_msg_2 "mobilizon.relay.follow requires an instance hostname as arguments"
+ @error_msg_2_unfollow "mobilizon.relay.unfollow requires an instance hostname as arguments"
+
+ @output_2 "Unfollowed #{@target_instance}"
describe "running follow" do
test "relay is followed" do
- use_cassette "relay/fetch_relay_follow" do
- target_instance = "mobilizon1.com"
-
- Follow.run([target_instance])
-
- local_actor = Relay.get_actor()
- assert local_actor.url =~ "/relay"
-
- {:ok, target_actor} = Actors.get_actor_by_url("http://#{target_instance}/relay")
- refute is_nil(target_actor.domain)
-
- assert Actors.is_following(local_actor, target_actor)
+ with_mock Relay, [:passthrough], follow: fn @target_instance -> {:ok, nil, nil} end do
+ Follow.run([@target_instance])
+ assert_received {:mix_shell, :info, [output_received]}
+ assert output_received == @output_1
end
end
+
+ test "returns an error" do
+ with_mock Relay, [:passthrough], follow: fn @target_instance -> {:error, @error_1} end do
+ Follow.run([@target_instance])
+ assert_received {:mix_shell, :error, [output_received]}
+ assert output_received == @error_msg_1
+ end
+ end
+
+ test "without arguments" do
+ Follow.run([])
+ assert_received {:mix_shell, :error, [output_received]}
+ assert output_received == @error_msg_2
+ end
end
describe "running unfollow" do
test "relay is unfollowed" do
- use_cassette "relay/fetch_relay_unfollow" do
- target_instance = "mobilizon1.com"
+ with_mock Relay, [:passthrough], unfollow: fn @target_instance -> {:ok, nil, nil} end do
+ Unfollow.run([@target_instance])
- Follow.run([target_instance])
-
- %Actor{} = local_actor = Relay.get_actor()
-
- {:ok, %Actor{} = target_actor} =
- Actors.get_actor_by_url("http://#{target_instance}/relay")
-
- assert %Follower{} = Actors.is_following(local_actor, target_actor)
-
- Unfollow.run([target_instance])
-
- refute Actors.is_following(local_actor, target_actor)
+ assert_received {:mix_shell, :info, [output_received]}
+ assert output_received == @output_2
end
end
+
+ test "returns an error" do
+ with_mock Relay, [:passthrough], unfollow: fn @target_instance -> {:error, @error_1} end do
+ Unfollow.run([@target_instance])
+
+ assert_received {:mix_shell, :error, [output_received]}
+ assert output_received == @error_msg_1_unfollow
+ end
+ end
+
+ test "without arguments" do
+ Unfollow.run([])
+ assert_received {:mix_shell, :error, [output_received]}
+ assert output_received == @error_msg_2_unfollow
+ end
end
end