From 486d9429721ba5138eea5eef34f1044d2b8665f1 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Mon, 19 Feb 2024 22:25:35 +0100 Subject: [PATCH 01/25] feat: mock sphinx bridge enable function --- .gitignore | 1 + cypress/e2e/admin/signin.cy.ts | 9 +++++ src/components/Auth/index.tsx | 69 +++++++++++++++++++--------------- src/testSphinxBridge/enable.ts | 26 +++++++++++++ src/testSphinxBridge/index.ts | 5 +++ 5 files changed, 79 insertions(+), 31 deletions(-) create mode 100644 cypress/e2e/admin/signin.cy.ts create mode 100644 src/testSphinxBridge/enable.ts create mode 100644 src/testSphinxBridge/index.ts diff --git a/.gitignore b/.gitignore index 41ec55927..8ec078d28 100644 --- a/.gitignore +++ b/.gitignore @@ -10,6 +10,7 @@ /cypress/videos /cypress/screenshots /.nyc_output +/relay/nodes.json # production build/ diff --git a/cypress/e2e/admin/signin.cy.ts b/cypress/e2e/admin/signin.cy.ts new file mode 100644 index 000000000..637f23c5f --- /dev/null +++ b/cypress/e2e/admin/signin.cy.ts @@ -0,0 +1,9 @@ +describe('Admin Login', () => { + it('Admin uses the enable function', () => { + cy.visit('http://localhost:3000', { + onBeforeLoad(win) { + win['CYPRESS_USER'] = 'alice' + }, + }) + }) +}) diff --git a/src/components/Auth/index.tsx b/src/components/Auth/index.tsx index 77cf78d6b..8df9366dd 100644 --- a/src/components/Auth/index.tsx +++ b/src/components/Auth/index.tsx @@ -7,7 +7,8 @@ import { Text } from '~/components/common/Text' import { isDevelopment, isE2E } from '~/constants' import { getIsAdmin } from '~/network/auth' import { useUserStore } from '~/stores/useUserStore' -import { executeIfProd, getSignedMessageFromRelay, updateBudget } from '~/utils' +import { sphinxBridge } from '~/testSphinxBridge' +import { getSignedMessageFromRelay, updateBudget } from '~/utils' interface setAuthenticated { setAuthenticated: (state: boolean) => void @@ -18,49 +19,55 @@ export const Auth = ({ setAuthenticated }: setAuthenticated) => { const [setBudget, setIsAdmin, setPubKey] = useUserStore((s) => [s.setBudget, s.setIsAdmin, s.setPubKey]) const handleAuth = useCallback(async () => { - await executeIfProd(async () => { - localStorage.removeItem('admin') + // await executeIfProd(async () => { + localStorage.removeItem('admin') - try { + let sphinxEnable + + try { + if (!isE2E) { // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore - const sphinxEnable = await sphinx.enable() - - sessionStorage.setItem('isSphinx', sphinxEnable ? 'true' : 'false') - - setPubKey(sphinxEnable?.pubkey) - } catch (error) { - setPubKey('') + sphinxEnable = await sphinx.enable() + } else { + sphinxEnable = await sphinxBridge.enable() } - await updateBudget(setBudget) + sessionStorage.setItem('isSphinx', sphinxEnable ? 'true' : 'false') - try { - const sigAndMessage = await getSignedMessageFromRelay() + setPubKey(sphinxEnable?.pubkey) + } catch (error) { + setPubKey('') + } - const res = await getIsAdmin({ - message: sigAndMessage.message, - signature: sigAndMessage.signature, - }) + await updateBudget(setBudget) - if (!res.data.isPublic && !res.data.isAdmin && !res.data.isMember) { - setUnauthorized(true) + try { + const sigAndMessage = await getSignedMessageFromRelay() - return - } + const res = await getIsAdmin({ + message: sigAndMessage.message, + signature: sigAndMessage.signature, + }) - if (res.data.isAdmin) { - localStorage.setItem('admin', JSON.stringify({ isAdmin: true })) - setIsAdmin(true) - } + if (!res.data.isPublic && !res.data.isAdmin && !res.data.isMember) { + setUnauthorized(true) - setAuthenticated(true) + return + } - // eslint-disable-next-line @typescript-eslint/no-explicit-any - } catch (error: any) { - /* not an admin */ + if (res.data.isAdmin) { + localStorage.setItem('admin', JSON.stringify({ isAdmin: true })) + setIsAdmin(true) } - }) + + setAuthenticated(true) + + // eslint-disable-next-line @typescript-eslint/no-explicit-any + } catch (error: any) { + /* not an admin */ + } + // }) if (isE2E || isDevelopment) { setAuthenticated(true) diff --git a/src/testSphinxBridge/enable.ts b/src/testSphinxBridge/enable.ts new file mode 100644 index 000000000..2cd1551b0 --- /dev/null +++ b/src/testSphinxBridge/enable.ts @@ -0,0 +1,26 @@ +import nodes from '../../relay/nodes.json' + +export function enableSphinx() { + /* eslint-disable @typescript-eslint/no-explicit-any */ + if ((window as any).CYPRESS_USER) { + const user = (window as any).CYPRESS_USER + + let pubkey = '' + + for (let i = 0; i < nodes.length; i += 1) { + if (nodes[i].alias === user) { + pubkey = nodes[i].pubkey + + break + } + } + + if (!pubkey) { + return null + } + + return { budget: 0, pubkey } + } + + return null +} diff --git a/src/testSphinxBridge/index.ts b/src/testSphinxBridge/index.ts new file mode 100644 index 000000000..1695fdd1a --- /dev/null +++ b/src/testSphinxBridge/index.ts @@ -0,0 +1,5 @@ +import { enableSphinx } from './enable' + +export const sphinxBridge = { + enable: async () => enableSphinx(), +} From ca2576e494a84209e62f516afdfcee645a9391c7 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Tue, 20 Feb 2024 11:56:00 +0100 Subject: [PATCH 02/25] feat: getLsat function for e2e test --- src/testSphinxBridge/enable.ts | 24 ++++------------- src/testSphinxBridge/getLsat.ts | 47 +++++++++++++++++++++++++++++++++ src/testSphinxBridge/helper.ts | 26 ++++++++++++++++++ src/testSphinxBridge/index.ts | 2 ++ src/utils/getLSat/index.ts | 16 ++++++++--- 5 files changed, 93 insertions(+), 22 deletions(-) create mode 100644 src/testSphinxBridge/getLsat.ts create mode 100644 src/testSphinxBridge/helper.ts diff --git a/src/testSphinxBridge/enable.ts b/src/testSphinxBridge/enable.ts index 2cd1551b0..6773a80e2 100644 --- a/src/testSphinxBridge/enable.ts +++ b/src/testSphinxBridge/enable.ts @@ -1,26 +1,12 @@ -import nodes from '../../relay/nodes.json' +import { getCurrentUser } from './helper' export function enableSphinx() { /* eslint-disable @typescript-eslint/no-explicit-any */ - if ((window as any).CYPRESS_USER) { - const user = (window as any).CYPRESS_USER + const user = getCurrentUser() - let pubkey = '' - - for (let i = 0; i < nodes.length; i += 1) { - if (nodes[i].alias === user) { - pubkey = nodes[i].pubkey - - break - } - } - - if (!pubkey) { - return null - } - - return { budget: 0, pubkey } + if (!user) { + return null } - return null + return { budget: 0, pubkey: user.pubkey } } diff --git a/src/testSphinxBridge/getLsat.ts b/src/testSphinxBridge/getLsat.ts new file mode 100644 index 000000000..460671eda --- /dev/null +++ b/src/testSphinxBridge/getLsat.ts @@ -0,0 +1,47 @@ +import { getCurrentUser } from './helper' + +export async function getLsatSphinx(host: string) { + try { + const user = await getCurrentUser() + + if (user) { + const result = await fetch(`${user.external_ip}/active_lsat?issuer=${host}`, { + headers: { 'x-user-token': user.authToken }, + }) + + const res = await result.json() + + if (res.success) { + const { lsat } = res.response + + return { + paymentRequest: lsat.paymentRequest, + macaroon: lsat.macaroon, + issuer: lsat.issuer, + identifier: lsat.identifier, + preimage: lsat.preimage, + paths: lsat.paths, + status: lsat.status, + success: false, + } + } + + return { + paymentRequest: '', + macaroon: '', + issuer: '', + identifier: '', + preimage: '', + paths: '', + status: '', + success: false, + } + } + + return null + } catch (error) { + console.log(JSON.stringify(error)) + + return null + } +} diff --git a/src/testSphinxBridge/helper.ts b/src/testSphinxBridge/helper.ts new file mode 100644 index 000000000..e20373a22 --- /dev/null +++ b/src/testSphinxBridge/helper.ts @@ -0,0 +1,26 @@ +import nodes from '../../relay/nodes.json' + +export function getCurrentUser() { + /* eslint-disable @typescript-eslint/no-explicit-any */ + if ((window as any).CYPRESS_USER) { + const user = (window as any).CYPRESS_USER + + let userNode + + for (let i = 0; i < nodes.length; i += 1) { + if (nodes[i].alias === user) { + userNode = nodes[i] + + break + } + } + + if (!userNode) { + return null + } + + return userNode + } + + return null +} diff --git a/src/testSphinxBridge/index.ts b/src/testSphinxBridge/index.ts index 1695fdd1a..77373d181 100644 --- a/src/testSphinxBridge/index.ts +++ b/src/testSphinxBridge/index.ts @@ -1,5 +1,7 @@ import { enableSphinx } from './enable' +import { getLsatSphinx } from './getLsat' export const sphinxBridge = { enable: async () => enableSphinx(), + getLsat: async (host: string) => getLsatSphinx(host), } diff --git a/src/utils/getLSat/index.ts b/src/utils/getLSat/index.ts index 3eabfdfa0..73eff5bd7 100644 --- a/src/utils/getLSat/index.ts +++ b/src/utils/getLSat/index.ts @@ -1,4 +1,6 @@ import * as sphinx from 'sphinx-bridge' +import { isE2E } from '~/constants' +import { sphinxBridge } from '~/testSphinxBridge' import { isSphinx } from '../isSphinx' /** @@ -22,9 +24,17 @@ export const getLSat = async (): Promise => { // Check if sphinx app is active if (isSphinx()) { - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - const storedLsat = await sphinx.getLsat(window.location.host) + let storedLsat + + const { host } = window.location + + if (!isE2E) { + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + storedLsat = await sphinx.getLsat(host) + } else { + storedLsat = await sphinxBridge.getLsat(host) + } if (storedLsat.macaroon) { window.localStorage.setItem( From a0c10a0cfe95c15d048075b2f2a3c387c3851172 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Tue, 20 Feb 2024 16:19:29 +0100 Subject: [PATCH 03/25] feat: sign message for test sphinx bridge --- cypress/e2e/admin/signin.cy.ts | 12 +++++++ src/components/Modal/index.tsx | 2 +- src/testSphinxBridge/index.ts | 2 ++ src/testSphinxBridge/signMessage.ts | 15 ++++++++ src/utils/getSignedMessage/index.ts | 54 ++++++++++++++++++++--------- 5 files changed, 67 insertions(+), 18 deletions(-) create mode 100644 src/testSphinxBridge/signMessage.ts diff --git a/cypress/e2e/admin/signin.cy.ts b/cypress/e2e/admin/signin.cy.ts index 637f23c5f..ec6da494d 100644 --- a/cypress/e2e/admin/signin.cy.ts +++ b/cypress/e2e/admin/signin.cy.ts @@ -5,5 +5,17 @@ describe('Admin Login', () => { win['CYPRESS_USER'] = 'alice' }, }) + let title = `Testing NavFiber` + cy.wait(10000) + cy.get('div[data-testid="settings-modal"]').click() + cy.get('#cy-about-title-id').click() + cy.get('#cy-about-title-id').type('{selectAll}') + cy.get('#cy-about-title-id').type(title) + + cy.get('#add-node-submit-cta').click() + cy.wait(200) + cy.get('div[data-testid="close-modal"]').click() + + cy.get('.title').should('have.text', title) }) }) diff --git a/src/components/Modal/index.tsx b/src/components/Modal/index.tsx index 9081c3eb6..ebd8d9fc6 100644 --- a/src/components/Modal/index.tsx +++ b/src/components/Modal/index.tsx @@ -138,7 +138,7 @@ export const BaseModal = ({ py={noWrap ? 0 : 20} > {onClose && ( - + )} diff --git a/src/testSphinxBridge/index.ts b/src/testSphinxBridge/index.ts index 77373d181..2b6fd4c6d 100644 --- a/src/testSphinxBridge/index.ts +++ b/src/testSphinxBridge/index.ts @@ -1,7 +1,9 @@ import { enableSphinx } from './enable' import { getLsatSphinx } from './getLsat' +import { signMessage } from './signMessage' export const sphinxBridge = { enable: async () => enableSphinx(), getLsat: async (host: string) => getLsatSphinx(host), + signMessage: async (message: string) => signMessage(message), } diff --git a/src/testSphinxBridge/signMessage.ts b/src/testSphinxBridge/signMessage.ts new file mode 100644 index 000000000..df8d5a45e --- /dev/null +++ b/src/testSphinxBridge/signMessage.ts @@ -0,0 +1,15 @@ +import { getCurrentUser } from './helper' + +export async function signMessage(message: string) { + const user = await getCurrentUser() + + if (user) { + const result = await fetch(`${user.external_ip}/signer/${message}`, { + headers: { 'x-user-token': user.authToken }, + }) + + return result.json() + } + + throw new Error('Cypress User not set') +} diff --git a/src/utils/getSignedMessage/index.ts b/src/utils/getSignedMessage/index.ts index af7520637..5e68507ef 100644 --- a/src/utils/getSignedMessage/index.ts +++ b/src/utils/getSignedMessage/index.ts @@ -1,4 +1,6 @@ import * as sphinx from 'sphinx-bridge' +import { isE2E } from '~/constants' +import { sphinxBridge } from '~/testSphinxBridge' import { isSphinx } from '../isSphinx' // queue for sphinx, it handles only on request at a time @@ -16,23 +18,41 @@ export async function getSignedMessageFromRelay(): Promise<{ message: string; si if (isSphinx()) { if (!signingPromise) { - signingPromise = sphinx - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - .signMessage(message) - // eslint-disable-next-line @typescript-eslint/no-explicit-any - .then((storedLsat: any) => { - signingPromise = null // Reset the promise after it's resolved - - return { message, signature: storedLsat.signature } - }) - // eslint-disable-next-line @typescript-eslint/no-explicit-any - .catch((error: any) => { - signingPromise = null // Reset the promise on error - console.error(error) - - return { message: '', signature: '' } - }) + if (!isE2E) { + signingPromise = sphinx + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + .signMessage(message) + // eslint-disable-next-line @typescript-eslint/no-explicit-any + .then((storedLsat: any) => { + signingPromise = null // Reset the promise after it's resolved + + return { message, signature: storedLsat.signature } + }) + // eslint-disable-next-line @typescript-eslint/no-explicit-any + .catch((error: any) => { + signingPromise = null // Reset the promise on error + console.error(error) + + return { message: '', signature: '' } + }) + } else { + signingPromise = sphinxBridge + .signMessage(message) + // eslint-disable-next-line @typescript-eslint/no-explicit-any + .then((storedLsat: any) => { + signingPromise = null // Reset the promise after it's resolved + + return { message, signature: storedLsat.response.sig } + }) + // eslint-disable-next-line @typescript-eslint/no-explicit-any + .catch((error: any) => { + signingPromise = null // Reset the promise on error + console.error(error) + + return { message: '', signature: '' } + }) + } } return signingPromise From 5d7fdcd01d1d2703cd2f547d0e84e4bac08c771e Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Tue, 20 Feb 2024 21:18:00 +0100 Subject: [PATCH 04/25] fix: added needed changes for test to pass --- cypress/support/e2e.ts | 26 +++++++++++++++++++ cypress/tsconfig.json | 4 ++- src/components/App/SideBar/Show/index.tsx | 2 +- .../Universe/Graph/Particles/index.tsx | 4 +-- 4 files changed, 32 insertions(+), 4 deletions(-) diff --git a/cypress/support/e2e.ts b/cypress/support/e2e.ts index 6fee2de78..ae0281a3d 100644 --- a/cypress/support/e2e.ts +++ b/cypress/support/e2e.ts @@ -14,6 +14,7 @@ // *********************************************************** // Import commands.js using ES2015 syntax: +import nodes from '../../relay/nodes.json' import './commands' // Alternatively you can use CommonJS syntax: @@ -21,3 +22,28 @@ import './commands' // coverage import '@cypress/code-coverage/support' + +// Add alice as the Second Brain tribe admin +async function setAdmin() { + let user + for (let i = 0; i < nodes.length; i++) { + if (nodes[i].alias === 'alice') { + user = nodes[i] + break + } + } + try { + await fetch('http://localhost:8444/api/set_admin_pubkey', { + method: 'POST', + headers: { 'x-admin-token': 'navfiber_e2e_testing', 'Content-Type': 'application/json' }, + body: JSON.stringify({ + pubkey: user.pubkey, + name: user.alias, + }), + }) + } catch (error) { + console.error(JSON.stringify(error)) + } +} + +setAdmin() diff --git a/cypress/tsconfig.json b/cypress/tsconfig.json index 18edb199a..1b6425b80 100644 --- a/cypress/tsconfig.json +++ b/cypress/tsconfig.json @@ -2,7 +2,9 @@ "compilerOptions": { "target": "es5", "lib": ["es5", "dom"], - "types": ["cypress", "node"] + "types": ["cypress", "node"], + "resolveJsonModule": true, + "esModuleInterop": true }, "include": ["**/*.ts"] } diff --git a/src/components/App/SideBar/Show/index.tsx b/src/components/App/SideBar/Show/index.tsx index c53f211bd..31b0cf2e9 100644 --- a/src/components/App/SideBar/Show/index.tsx +++ b/src/components/App/SideBar/Show/index.tsx @@ -1,10 +1,10 @@ import { useMemo, useState } from 'react' import styled from 'styled-components' -import { useGraphData } from '~/components/DataRetriever' import { Avatar } from '~/components/common/Avatar' import { Flex } from '~/components/common/Flex' import { Text } from '~/components/common/Text' import { TypeBadge } from '~/components/common/TypeBadge' +import { useGraphData } from '~/components/DataRetriever' import { useDataStore } from '~/stores/useDataStore' import { NodeExtended } from '~/types' import { getSelectedNodeTimestamps } from '~/utils' diff --git a/src/components/Universe/Graph/Particles/index.tsx b/src/components/Universe/Graph/Particles/index.tsx index 3a4b07b4c..9160d5b8b 100644 --- a/src/components/Universe/Graph/Particles/index.tsx +++ b/src/components/Universe/Graph/Particles/index.tsx @@ -7,8 +7,8 @@ export const Particles: React.FC = () => { const ref = useRef(null) useFrame(() => { - const positions = (ref.current?.geometry.getAttribute('position') as THREE.BufferAttribute).array as Float32Array - const velocities = (ref.current?.geometry.getAttribute('velocity') as THREE.BufferAttribute).array as Float32Array + const positions = (ref.current?.geometry.getAttribute('position') as THREE.BufferAttribute)?.array as Float32Array + const velocities = (ref.current?.geometry.getAttribute('velocity') as THREE.BufferAttribute)?.array as Float32Array if (positions && velocities) { for (let i = 0; i < positions.length; i += 3) { From 3bf873bd17423d78085f9d4ab75cb6e3c3569ca2 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Wed, 21 Feb 2024 22:03:14 +0100 Subject: [PATCH 05/25] fix: added --host to make localhost accessible by cypress --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 8fd6ad99c..9157d4d4e 100644 --- a/package.json +++ b/package.json @@ -68,7 +68,7 @@ }, "scripts": { "start": "vite --port 3000", - "start-e2e": "VITE_APP_IS_E2E=true vite --port 3000", + "start-e2e": "VITE_APP_IS_E2E=true vite --host --port 3000", "dev-tribe": "vite --port 3004", "build": "tsc && vite build", "build-docker": "tsc && vite build", From 937cef8b032c50d8379592121e1f7794413ef0ed Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Wed, 21 Feb 2024 23:01:19 +0100 Subject: [PATCH 06/25] feat: added E2E to github workflow --- .github/workflows/e2e-test.yml | 75 ++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 .github/workflows/e2e-test.yml diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml new file mode 100644 index 000000000..c47f31bfe --- /dev/null +++ b/.github/workflows/e2e-test.yml @@ -0,0 +1,75 @@ +name: Cypress E2E Tests + +on: + pull_request: + branches: + - master + +jobs: + cypress: + name: Cypress + runs-on: ubuntu-latest + + steps: + - name: Enable docker.host.internal for Ubuntu + run: | + pwd && sudo bash -c 'echo "172.17.0.1 host.docker.internal" >> /etc/hosts' + + - name: Checkout Repository + uses: actions/checkout@v2 + + - name: Setup Node + uses: actions/setup-node@v3 + with: + node-version: 20 + + - name: Clone Stack + run: | + git clone -b feat/second-brain-compose https://github.com/stakwork/sphinx-stack.git stack + + - name: Give Permissions to Sphinx Nav Fiber + run: chmod 777 -R cypress + + - name: Give Permissions to Stack + working-directory: ./stack + run: | + chmod 777 ./bitcoind; + chmod 777 -R ./relay; + chmod 777 -R ./lnd; + chmod 777 -R ./proxy; + chmod 777 -R ./cln; + + - name: Check for NODES + uses: nick-fields/retry@v2 + with: + timeout_minutes: 10 + max_attempts: 3 + command: | + GITACTION_ENV=gitactionenv docker-compose -f ./stack/alts/proxy.yml --project-dir ./stack up -d; + sleep 240; + docker ps + docker logs meme.sphinx + docker logs dave.sphinx + docker wait stack_relaysetup_1 + cat stack/relay/NODES.json; + + - name: Copy Node.json + uses: canastro/copy-file-action@master + with: + source: "stack/relay/NODES.json" + target: "relay/nodes.json" + + - name: Install Frontend Dependencies + run: yarn install + + - name: Start Server + run: yarn run start-e2e & + + - name: Run Cypress Test + run: | + sleep 20 + yarn run cy-run + + - name: Stop Stack + working-directory: ./stack + run: docker-compose down From b48620b475dc2f6b150bae716ee2d57d3d63b26f Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 00:05:03 +0100 Subject: [PATCH 07/25] fix: give relay permission --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index c47f31bfe..30b573291 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -28,7 +28,7 @@ jobs: git clone -b feat/second-brain-compose https://github.com/stakwork/sphinx-stack.git stack - name: Give Permissions to Sphinx Nav Fiber - run: chmod 777 -R cypress + run: chmod 777 -R relay - name: Give Permissions to Stack working-directory: ./stack From 753f09065b2b5a0f7bf25a2ae72a90f6557749a2 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 00:10:52 +0100 Subject: [PATCH 08/25] fix: added logs for github action --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 30b573291..4b0558988 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -28,7 +28,7 @@ jobs: git clone -b feat/second-brain-compose https://github.com/stakwork/sphinx-stack.git stack - name: Give Permissions to Sphinx Nav Fiber - run: chmod 777 -R relay + run: pwd && ls && chmod 777 -R relay - name: Give Permissions to Stack working-directory: ./stack From ceac9aa22016e87a1d6a6f0e2276f0bf03e3d2dd Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 00:24:43 +0100 Subject: [PATCH 09/25] fix: push nodes file to github --- .gitignore | 1 - relay/nodes.json | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 relay/nodes.json diff --git a/.gitignore b/.gitignore index 8ec078d28..41ec55927 100644 --- a/.gitignore +++ b/.gitignore @@ -10,7 +10,6 @@ /cypress/videos /cypress/screenshots /.nyc_output -/relay/nodes.json # production build/ diff --git a/relay/nodes.json b/relay/nodes.json new file mode 100644 index 000000000..fe51488c7 --- /dev/null +++ b/relay/nodes.json @@ -0,0 +1 @@ +[] From 231782009e2a730461453034941bbbd59d83dd48 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 01:11:49 +0100 Subject: [PATCH 10/25] fix: try to type relay user --- src/testSphinxBridge/enable.ts | 1 - src/testSphinxBridge/getLsat.ts | 2 +- src/testSphinxBridge/helper.ts | 3 ++- src/types/index.ts | 16 ++++++++++++++++ 4 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/testSphinxBridge/enable.ts b/src/testSphinxBridge/enable.ts index 6773a80e2..2c251f8f8 100644 --- a/src/testSphinxBridge/enable.ts +++ b/src/testSphinxBridge/enable.ts @@ -1,7 +1,6 @@ import { getCurrentUser } from './helper' export function enableSphinx() { - /* eslint-disable @typescript-eslint/no-explicit-any */ const user = getCurrentUser() if (!user) { diff --git a/src/testSphinxBridge/getLsat.ts b/src/testSphinxBridge/getLsat.ts index 460671eda..56754c332 100644 --- a/src/testSphinxBridge/getLsat.ts +++ b/src/testSphinxBridge/getLsat.ts @@ -2,7 +2,7 @@ import { getCurrentUser } from './helper' export async function getLsatSphinx(host: string) { try { - const user = await getCurrentUser() + const user = getCurrentUser() if (user) { const result = await fetch(`${user.external_ip}/active_lsat?issuer=${host}`, { diff --git a/src/testSphinxBridge/helper.ts b/src/testSphinxBridge/helper.ts index e20373a22..1a4068405 100644 --- a/src/testSphinxBridge/helper.ts +++ b/src/testSphinxBridge/helper.ts @@ -1,6 +1,7 @@ +import { RelayUser } from '~/types' import nodes from '../../relay/nodes.json' -export function getCurrentUser() { +export function getCurrentUser(): RelayUser | null { /* eslint-disable @typescript-eslint/no-explicit-any */ if ((window as any).CYPRESS_USER) { const user = (window as any).CYPRESS_USER diff --git a/src/types/index.ts b/src/types/index.ts index 4f3bc5943..d90b5d0c5 100644 --- a/src/types/index.ts +++ b/src/types/index.ts @@ -242,3 +242,19 @@ export type TStats = { numTwitterSpace?: string numVideo?: string } + +export type RelayUser = { + alias: string + pubkey: string + ip: string + external_ip: string + authToken: string + transportToken: string + contact_key: string + privkey: string + exported_keys: string + pin: string + proxy_ip?: string + admin_token?: string + routeHint?: string +} From 280d6909bb83c21783e0ba4dd29bf3817edcd806 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 01:20:25 +0100 Subject: [PATCH 11/25] fix: resassigned nodes object --- src/testSphinxBridge/helper.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/testSphinxBridge/helper.ts b/src/testSphinxBridge/helper.ts index 1a4068405..7910c40e4 100644 --- a/src/testSphinxBridge/helper.ts +++ b/src/testSphinxBridge/helper.ts @@ -6,10 +6,12 @@ export function getCurrentUser(): RelayUser | null { if ((window as any).CYPRESS_USER) { const user = (window as any).CYPRESS_USER + const newNodes = [...nodes] + let userNode for (let i = 0; i < nodes.length; i += 1) { - if (nodes[i].alias === user) { + if (newNodes[i].alias === user) { userNode = nodes[i] break From 10c4686ad84ca860416b641d48bdc8c32a461529 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 01:25:59 +0100 Subject: [PATCH 12/25] fix: added git ts-ignore --- src/testSphinxBridge/helper.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/testSphinxBridge/helper.ts b/src/testSphinxBridge/helper.ts index 7910c40e4..688fc43c7 100644 --- a/src/testSphinxBridge/helper.ts +++ b/src/testSphinxBridge/helper.ts @@ -6,12 +6,12 @@ export function getCurrentUser(): RelayUser | null { if ((window as any).CYPRESS_USER) { const user = (window as any).CYPRESS_USER - const newNodes = [...nodes] - let userNode for (let i = 0; i < nodes.length; i += 1) { - if (newNodes[i].alias === user) { + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + if (nodes[i].alias === user) { userNode = nodes[i] break From 9922bd45e8fc8c9e9e557244b4272e66cf670bb2 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 01:41:30 +0100 Subject: [PATCH 13/25] fix: added more sleep time after starting server --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 4b0558988..4cb5bd419 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -67,7 +67,7 @@ jobs: - name: Run Cypress Test run: | - sleep 20 + sleep 100 yarn run cy-run - name: Stop Stack From e79fa02ecb0202a7cd867206621ed13ed0ce81b6 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 09:15:03 +0100 Subject: [PATCH 14/25] fix: i added a wait time after page launch --- cypress/e2e/admin/signin.cy.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cypress/e2e/admin/signin.cy.ts b/cypress/e2e/admin/signin.cy.ts index ec6da494d..762170706 100644 --- a/cypress/e2e/admin/signin.cy.ts +++ b/cypress/e2e/admin/signin.cy.ts @@ -6,7 +6,7 @@ describe('Admin Login', () => { }, }) let title = `Testing NavFiber` - cy.wait(10000) + cy.wait(30000) cy.get('div[data-testid="settings-modal"]').click() cy.get('#cy-about-title-id').click() cy.get('#cy-about-title-id').type('{selectAll}') From ffa5dc2780a9e53937d53bbb54dba75e1fd9f296 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 10:04:51 +0100 Subject: [PATCH 15/25] fix: used the correct compose file --- .github/workflows/e2e-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 4cb5bd419..03a952db5 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -45,7 +45,7 @@ jobs: timeout_minutes: 10 max_attempts: 3 command: | - GITACTION_ENV=gitactionenv docker-compose -f ./stack/alts/proxy.yml --project-dir ./stack up -d; + GITACTION_ENV=gitactionenv docker-compose -f ./stack/alts/navfiber.yml --project-dir ./stack up -d; sleep 240; docker ps docker logs meme.sphinx From 8f4536c3d48b9436d3c2e1148a7a1c8e197f1d5c Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 10:32:51 +0100 Subject: [PATCH 16/25] fix: trying to know what's copied to relay/nodes --- .github/workflows/e2e-test.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 03a952db5..a4ca4a479 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -59,6 +59,9 @@ jobs: source: "stack/relay/NODES.json" target: "relay/nodes.json" + - name: View relay nodes + run: cat relay/nodes.json + - name: Install Frontend Dependencies run: yarn install From 8062f85b102262465e7432b99573c489d15d24f8 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 18:01:45 +0100 Subject: [PATCH 17/25] fix: added nodes to node file --- relay/nodes.json | 79 +++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 78 insertions(+), 1 deletion(-) diff --git a/relay/nodes.json b/relay/nodes.json index fe51488c7..39dfcdea9 100644 --- a/relay/nodes.json +++ b/relay/nodes.json @@ -1 +1,78 @@ -[] +[ + { + "alias": "alice", + "pubkey": "03a394d0ebf0d003124ab130c6b12b8b990a50a30a464354800a51981ba745bb07", + "ip": "http://alice.sphinx:3001", + "external_ip": "http://localhost:3001", + "authToken": "N4IsKsD5YqIvgYbUWXzp", + "transportToken": "MIIBCgKCAQEA0+Gfk/qD4NqyIBnT3spJIvRLzsLhgtkigDslnsyg1g6+mXtonHZD\nsh+TOXvIOTReJI/k+JvlX/Kw8rbBGkwgpf7XhcUcK8xORN8gq67z7BxqxyjqTyE3\nP4ICK+ih9/HroyZaB8y60uDTR02cVFC49YO+lfK/Rork+3LOUgn6Mr7vkpWLKl4r\nNMFVlwZDVpDfA0tK028Z3b+68z25ERYQIHweLnqc5XrD0rADdLVXFnJyFhDKKYM1\nvtRHezNU/yfhkheFuG3Yw8nVZkuJj1h7rGy8ZrLaIGYJ2RBCOVLFqqFrR7KbpyJd\nGt4Gl0WnZllFBreYZTUPtx7RQwfbe1TJIQIDAQAB", + "contact_key": "MIIBCgKCAQEA1zRRFrfkxa5fMQfyFvk8W1IowaqlPPH3CEhZi73WWnOEMvLwAoMDb+MZyUUxx4tlS7Bs4rVGmNODzQXR6/jRqXuGVlbRQedXI3BhJrrFhKNxb85dRjWCGG121MSBCouH/vwmOMYwzT4jzBaBuGABkT7GnmqFw5BvFrlIxlqJR4/qWm0ivHIRe728JxveWKwMPj1Lzi1RQ0O7+p894pmj5HhrnTLQMtxTg64lII2eQJRGYWIGLprpYEJay1ow/7kVLbyW2B7KFGuKwSTp/9Bn93XxNnvI10Ny+d6YePc5O7phLxY+Mxauys2F9/HCOeBglaXZFSMwCWQpyqTLJBrdnQIDAQAB", + "privkey": "MIIEpQIBAAKCAQEA1zRRFrfkxa5fMQfyFvk8W1IowaqlPPH3CEhZi73WWnOEMvLwAoMDb+MZyUUxx4tlS7Bs4rVGmNODzQXR6/jRqXuGVlbRQedXI3BhJrrFhKNxb85dRjWCGG121MSBCouH/vwmOMYwzT4jzBaBuGABkT7GnmqFw5BvFrlIxlqJR4/qWm0ivHIRe728JxveWKwMPj1Lzi1RQ0O7+p894pmj5HhrnTLQMtxTg64lII2eQJRGYWIGLprpYEJay1ow/7kVLbyW2B7KFGuKwSTp/9Bn93XxNnvI10Ny+d6YePc5O7phLxY+Mxauys2F9/HCOeBglaXZFSMwCWQpyqTLJBrdnQIDAQABAoIBAANPWq/uxCYGOJCYfrC7xKHi8Z2I8mGtlw8ZjccIdHOPs0jVU7u2KCdgZtUhq1JWYoh3fjU+dIeFOVG99Syb9x2UOMy7KRzKYhy5bcUauk7/9I6zrduWlxmpFVrQauuumbjiR/Q3mCiP/Bz3e6dKUrvZK1TkbopDfnHrB6OFYPcoyEaYu93IFtFEQ1fOpDMS2/Fn48ATwSRaCMCLlp1funaFwhi2e9xVmivRxSVwQX8y703fjMt+Bl3Hv2rsmgasm/E4Ft9kUB8d3IfHl8x5GG0GGJ1kMZ3edN2vmBDOj8qF00L+pqYi1zRo5LHMoDmKcUtDuUY35L/zAWUF9pQ53gECgYEA+HHO5I3ozr8Z9AQBAS8XNJ9Uwvt3L7Qk26oWTcbqfudxWQK4lmCStt2Mlg+/B5xiwI0W4sIfIMtILDd+Es+gkXnQa2O2JOl4zuvjnrfkxiSVbh4/DEZQmyW5I+wBfLyYsYg9RsXNLizJkE50FcsTg3VDdYV0LuvIU/deDMPQn5UCgYEA3b+6D9QigWBtySKZ2KnSC1zrSdjutdl9EnQBBjaEhOy3rWeJUXyVKoKXJ6XIw3pu2vUXqscyKyvOMfZlBPmV0XXyPd9IQsXfhZMxJa1H2SiV7+xZbtYCZwfWycg6qe97pUjmxXMBCO9Cqc26HKT6372WD8Q2YKXMQYAjSgK3Y+kCgYEAkZAsxiCXLLsu+5d09zqeAAjyYqNvO5XymnlXRA6tydjUwnAjsoe2rkm0Wx+yr0TjXynLJOTT1CUGjlGdHmxkCZgzkxgC2jGoxKPU42OfOLCqlLBIBGsWQzCg/vkCDhF57VqDfHncM5euKUyuGy62qikEc1DTt8IRx5CBnD0GeNkCgYEAstof/QJRrl4TToYs5hbahjW0xMRGjL/VZBvSc6tnKTswTplSpTnBqh7YQa8yhY/rd4j1RNYTPcTAM4YTJncUAnSKJKNByjGEvlzg6A2iBKH6hR/xZjcQiv9Em013G3dAGCj7kMfYTteDwidfdBkRC4MDVMYiQcOYQkBStjAIsHkCgYEAwgEnj/Le6PY1h7KX7dArND4iF+XHiM/X9pyzrvbnkJ5CsyM0WjiKOgoLAvCIjCWGVtc5eZ6Gchs0QzlYiP85ypQ+QEPVYCcFC50AlomJWPYPOQNbo/Gppdiz0XuHGYD5++SDGjiEVk66vr2XNsfH/rsV+2ku+vel5sKDq4Ty5C8=", + "exported_keys": "a2V5czo6QXdHd1NvZldPYUZVLzlvaG5SZVh4YWUzMlpvMWEyUTZtQ0p0YmRUclExRkpPSVhxZmtFZVR1dnlHdkVtbDJudmk5SzlQMWkvUVdLNkdMLzk3YWZyMHEvcERiSEVyNnVWTWZ5MTAzVUxTM1JPQmNmWjlaTERsTjZaNTVpTnBxTGZENHlOa0NhaStSNkNXczZMMit6VU9aN3A4a3FybHJmSTVFbFhkN3dpR29KS1JqM2RYeEFhQjdYM3d3RXhOZGN2WkdkdDQwUE9MSGRXYkx3blI3dENpMUU4b0RpQnd2R3p0cXZHNGtrNXBCd3pEYzdOVmdJVU8yWHAvMkRrWU5mSkEzRHNuRXJmNnFBeENMSEVoUzQvL0l6VGdWeVY0bWxvOVU5SjZ1Y2pJTVB0SWNvT1JEemRFR01tc2VWSjZXRWhOYXRvZHZMOVlPaHJveGxneWp0bWlsRXBkWVhKTDJQQzl4cnN3TTZvZFN4WU1YeEVSVnNJSjd0ak54ZDUxUXdPaS9GdlJydm93bzRuOVFQSDJWSEJLRHo2VlZRQTdjOGZyaVI4VGRVYWZFdkl4cEFObEU3dmVNUDZPOTIycU5rR21jT1NiUXJkS1pYUVNHY3l1UzhqekRUbEhZbW4valB2T21VNmdoM3N3eXVkNnVaYmV6R0F3UjJqTjVUZDRGTE1iTjBPMFNMNmdzN2haeWlBMThQa2dUb3kzRGdhME5xS2N5d214L3BhV1BSY1MvdWxKd2ZZUEV1N01QeDRBNm5uVW9SWThjL21PWURrVENSNkQyWG03aEZteWNZUUs2VlZvY0FiOUkyOWx2QWMxWm5Zb1JEUzM5RkpRdDBHOTFFNkNOQ0dmRmo3MlpHSitQaUtuc3NZMDZ4NlZHMDhqTERTcmFNenVtYnllT1N2M1E5UndRNnlHMGRvS09KeElORGZ4QnFsRHN2ZkdiSXVXK1E1c0RwN0FHc25oUU5NcWVPK0NiRlNhT3RTVUxYUXlxQmxxS2RyOERFdlBKZTBnNFdoREJQYS9wVGRCeURxWGlPdDQwL2o4L0RTUXJ3K3JvcUhkT3dDdk1RTUFaajRDeWY1R2J4UEFQV3B1MUJDQ0x0czZvSy8zMjcwSGJZMUt2dEZ5M2d6TXlrK1ppa3BSWnBEcFdPMVhqSUFLLy81R1RWT01RREFNbm9hd3p1aXo0d295bHBqREpOazdCQXZIRFBqMnVUVXcxNUxwUllBV2ZYVDQ4djhuQnZnLzFTQitJU2VYTVJmbHEwZjh2UlNpRThwTWNDeVRJSU9yaFpXWDdTYWNza2dnR203TkZ3YXh2VjBmb3JjTE04THovRWk0UEptZ1VlSGR1U1RKcS8xMlVDbzR1YjBickNuYVF3WnR6b3BKZDdJc2w5WmxZTUZDei80b0l2dXJZbFMrTTVVL2R1ZUVzMjgrOGo5MTQxb0pwRHFDU2FtdGdYU0RSQlkvWmd2UGdvUnpETjlDdDV5Q0M0cGo1K1kzdllZK2NFS1MzMVNtaHduZE96MVZ0cmx0YnFYZkEwM3JoS2poT1dLc01ocWJHTkdWd2VEZ0l5RzJRVHJ4TFA2TVpFMVpsVXBCL2RpYXNicGVWaFlvY1l3eGN1cXBFbmo4MzJ2ZEszcTlGWlFUaUU1UnE0LzQwd0NmUFJUYmJVZTRvNkg2eCtpV3ZWbjZnazZGdlBxUDQ2Z3JSaURSY1hJMFBEcUtwclgxd013c1ljQW91dFoyMFUrMmFxVTgxS3JUVUc5cnN5MnAwRUhjU2VRaXRONVBrZy9tMGF4bGFjWnk3aTVSeDUxdDFzWjZSSmRWdlhKTHg0T0UyL2tsdHlGTkg1UjVYNU1jUExveVFQTFdBQ1daZjFoNUM3OVY4ajV0M2lnUm1ZR3FRM293TGxFSDJveWFvYVZrc2dMTEs3bHRzVHJzVFpJV2NyYVNZbWNuWjVlYmhJRXc3L0NoRUJOZzA4VlpwV0VzTlhxb0hULzNtd25Ga3pXYmI1UkNSM3FhUFdUTzFZTVptVlBjaHFHRXo3YXBCSHdxUlNqV0t4MHR2T3pwaVA3ZnFDUm1nZWNzT3lHQS9zRjNwZG1wV2E5Ry85bWZpZWpsdFJrZlRDbUxiUkdyWEJiL2JXZUNoK051aWJHdkZCUFJMS0l1Q0xtUk9pcEZYSEorclJhRUFNL05ZY3Bnd2U0bWJ0MlBySUpDVmhaeG4zZzE5ZWJwYU1NZ0hZVXZRWUFDclQ1Z0dlK0tsVGpYbDJUU2dQNmY1SFhYWEMrbUV5ZlBia1ZHMjZDelFJYzlLREpZV3owSW4xNlVFSll4eFoxNENVc3kzSTVrN0FCRFpHdDgySThIQmRDQUpQUkVTYTBDekdHRU81RktDQmxrU2E4YUJtTDFONkhxODZnN2FJeWl4Z1lOdENycW9YSHh6M2tSM3MwY0FTcGZFQlNGekJNU2x1RzMrcHloTGRiWi9Yd1hCN3ZLWWhNWDZVS0w2M2pUWGF0QndCZ3pxdnNGa1p1aXJVY3MweGJGelpHc011VWVzSWF5Vy9EQXZDY1poWFJwV3RxV2dhYXFzWkxHMkphVllzUGhhaXFVYnBXSUVHaEdFRGpxV2psQXBwWis0K2xoTzVoYjFZcThPZUVDOEpDUElzQ2k4VEEyV3dNMWtndmtIcHFGQXlzR1d2ZmE1aWd4d3ZIVHRWSVpHd1BmSGJDZjJrcXdPcDFodGRGS2F2R2dOeUpuWEVpU3VBczlZMmx3ZTZIb0I0ZkNRajZZQXRHOFdrNkJ5Q045YWlMUE5NMUxjTzRBYzVXc0lqRmV1WnVkSTdwcm5TYU5UdEg4S3lxNXZMZnhybGtuVURZb2puZS96TWlKTnRCRmlqVjEvVUo4bnFmYzhTWit5T09DQWVPRXd2T2wzc0pGYVhnYVNDS3JvWktJbVBtL2t6dVhCZHJ1TFczMUJZczlSRTBuem9zUFd5ZHVwRmZ3N2pvOTY1dnpzV09Pai9lTU4yYVpwejEyVWhDN3VCS2dqSmdqT0E2N0wrNTIzTTJIK1RleTVIWTNSQnExdzBNTHBadUswL054ZkxIbHdNbzdYMVYxZUl5L3B0cGtPNUhab0d0U21BczVQS2VEUXF3dVNpWVV6cU5mOU4xUHVkaEtIY3ltTTVMSkdGYVpZSzVZYVB5amJiWENOekZwTWJWc0lmS3hoaTBmSXJXdDQ1c1lPK2ZVN0dkM21BVm9RZitqc0lCRGlmTVJ4WFg2ZGR5dVlZTEhVeGlQUWs1bUx1d29JSjhEeUZUWmpYV2hhQk5ESExnTEphRjRKeU1xczl1VkNDb0hGdVh5ZUFDQzMybU03bCtENTNSZWRNNmxGd2xGTHNyS2hjRnl5L3RDN2N5eWF6SC9GQVh1R1RNazR0a2IvbFBJTkl4RXRMYy91MkNOS2JEcXBIZ2NHR0hiTC9DU3pRYVFGajUwbUVnaFA4MXl3ekNCcTA3Y0hzancvbVNuMEU0U0xUYXVHN2ZOdlp1OGtpckxZKy93cS8xR0t0NkxvSXNBd1hyR2RkQjVCMVY2em14b2xKQ0k4R1JXRG1LY2R5VDdZZ21nSXRINHBTSGJuakRTdDlvRVJubzMycSt6aDdZQURCNUVpZEh0VUtGTXpWUjFMY3dWV1RSUzBaNkM4UlNqdmpvUndiNWRlND0=", + "pin": "111111" + }, + { + "alias": "bob", + "pubkey": "02a38857848aca6b32ebcc3c85d07ee41354988f4f1e0b4e6ccd255eee6ed75b8d", + "ip": "http://bob.sphinx:3002", + "external_ip": "http://localhost:3002", + "authToken": "KGxi+fUsk+6t300DGsgH", + "transportToken": "MIIBCgKCAQEAzZJJHpJDSphEh/beeDIo1z35MFFFjUcFZFUdd63YmfwldO6we88H\nxP5VuluX01KWahjlFqpW7SPvMwOcJ/gZeg/HQVGgowApGrV8rpxGb7Ly8VtNTRa8\nghSbQ2Hg/NOoaQysqpXleR6JkRR2tixy4OeM4pDas2IolV8Z8GET89l4zYdQ2sqJ\nBoDFXW1PJvhJySiur/1Px2x6Yu2lkbwVpCNRH/v/lHhWDcOsxhCBp9JRaXt31vzv\nvOJgD4um+NAVke/yV1TA6ArysMU4Zvedt8Q32jMGhypKJbVPKfjF0/gwJzai2G4n\nHFhEpI7VXiNnw4HzimwIp7ttSWZPQ6LQQwIDAQAB", + "contact_key": "MIIBCgKCAQEAprL1Q8VYvEbbGOEZIO9Of8SijSFSyTtr5Wqvqxw0oIaWdSLi8kL1bLP6pUxXdOOXgZfKEX/APMJcWfCRbYWvrml1vK9XO3qtH5U+lldcgLy4xWeyIlm4yr2FY++UkuUZBQCxrFv99YTDqYAZ0BiN4CtGBKDbAbDm1uDk0ZRAWSMvZWTlkj5156LtW/zkveHHhP5AkqZowrwkfng5X4Qhny1YEUgiMiecvkOcNokKygXd1kD1QM0bUNhtxomOuip/bXjJEN7/q7PHMXYTV2gy7oP9RqCEncAm75DLJUKkn+ERhV8XW/o3W17M4OPAyOKquu0PJblHt9TMa+DfJa8ZqQIDAQAB", + "privkey": "MIIEpAIBAAKCAQEAprL1Q8VYvEbbGOEZIO9Of8SijSFSyTtr5Wqvqxw0oIaWdSLi8kL1bLP6pUxXdOOXgZfKEX/APMJcWfCRbYWvrml1vK9XO3qtH5U+lldcgLy4xWeyIlm4yr2FY++UkuUZBQCxrFv99YTDqYAZ0BiN4CtGBKDbAbDm1uDk0ZRAWSMvZWTlkj5156LtW/zkveHHhP5AkqZowrwkfng5X4Qhny1YEUgiMiecvkOcNokKygXd1kD1QM0bUNhtxomOuip/bXjJEN7/q7PHMXYTV2gy7oP9RqCEncAm75DLJUKkn+ERhV8XW/o3W17M4OPAyOKquu0PJblHt9TMa+DfJa8ZqQIDAQABAoIBACwDpG64dK2Bp+fxx0jC5t8ldCX/XnRzlBGHEcsEL4ETCDb1dyawN0z0WIG8nnrmfOJiyZ/FM2TXjLrSohNg8PoELmobgdTal0t3hIb9mhcDvWWh847OUdR2Jfo1D+2ZP/nqLP9taqig3WirwiUH1q4RvvMJ5cmUg97IkqIjmrnt+y2D9SLc9kPA8f3Eq87a7TQBjACzznMQEpW3IuOjwufvonjp7on1iVB999H0wNMgRBUSbZOQUKkBAEwXR30s0Q2ML2RmOymJ1Z/EYS54WeghwVKAFTNzQt6USvKpI7ERi4MEPD99GN7kfMkJA/YBz7kuLXu64N3yDKgw7py+seECgYEA143W0awN25dvXis1Ja0x4YDE9IX5HBbVPqmqkVLSOESygpLq6TMrxOZwuGB89tVkY3hYpEoi4Rd7aZc7hcOj806TXcV2Z0ADm8oYYDMsey+E7wNjSFdr58FEa5L4DQIjmbvYzTGelgdl4Wu+TBrpEw6uw/kyRM95QsU1e1jGBGcCgYEAxfpdKIKfe+K8Sq66lfGycTd9Wb7NgR59mO8NcLy1IOzYpzWC3grgksDfquit8f1fcraTp2RKxYHjzW4J7az2xfX8ix+Iy1D8DAQn1aimHNA4yoBKBalELO1VlRU/umEvBSclfKXICYn7HTP3OUe//NJEHN6G0zLgpclDurTsp28CgYB855wLc3+0N1Q5ZSAu7OVynoOCjf+D31dCMF6+Rxe5s1UdhLTK3PQH7OB0drTy80Rwv1PeH3eGp2zECvZa1Ls0SdvrAnlR6y4sIDdvxzeHSknlljj5um60pLFZBJjoMM0gUFGY1Z/nn/HRZfWndBCLEn8C4GvYo8DIiC4tg4t7EQKBgQCuqbpkkhFYP+o0zUCqJwlyHy2E7vPpVVgjg8vMyX/XY32kz238rYYBkw4Bf7RuyUXbM77CsJXS+ExdIha6TJ2Oev3qU9Dg5zrm8wed1WNwCjgAV/x2UCZoqJ6Xn56QtUrBdg75kF0SJVyZIA6dx3JW/7695Yj3bWyKdy083H/pGwKBgQCJEyihly8HvRnSPYD+tPFmc8QkQB3xZ+0H9G+jlD8dPg3WxDsh4cWKmgjj97TCr/Ufu7ixal28aKda2x6JlNqwng70xnDkA24gdyoHr5/MVS+4yYa28WwZ5n16DLfVX3s4DluS4AiYXsTD5KULTv7q1ZBivvbmzBKn3z+D0zSTPQ==", + "exported_keys": "a2V5czo6QXdGdDdtbnRXVVJYMDcyQkRtZUo5VWdVZlBmdEJzSDNSTGU2cGZaSVpPNTN1dGh6QWFiaUU2MWFQUUNaNC9zeWFiWC9CaTBDVUQ1MmtBNFdiODcweTZRclZWb3FXSjNQdkN4UW1vcFBEMDhlMWdYQk03L3Jod3Z2clEyUm9ldFczWXNtTjJkYW8rRVFDNk9iMm5PUGpNYWdLSFN4Z0cyZ3cvTDhHd2pHT1N6S20wbnJ5MS9FNktiVHUrM2xZNXZJdWxjM2NUTzg1cmwxZnZCRTU3aGVrRmNLbnZYd214MjVvbHRLR05VaU5IQ1dFUGFBZ3RVdi9xczdvc2RjQ2d1YzlhMU1OZUErU3lUbllWQlBMQWVnWGpSRkkrM00yaTVUMUVLaE50aUZsMXcwVzhTVXZJZzZRQW1SdDA1NWhib08rZXdmVldpcTNRQW10OXZ5bGFsUnVvdERBaStBWFdOUTFuWTkvK0lsUUppdUZyVHcwNnd4NVJQMzM1SjQ0STUzTklsblpnYTkwVTgxbExqWlZINS9TVUdkenM4N0RlRE93MGlJTHJEQ3JKV1gxaUJsaC9OQWtGVTJKM0pjU2Q0elFxSUNlOFhNYVI3em1oS0g0TUtycTlHSmtHYVdJelNYcVFhTS9jdmlvVE42M0RtRFFXU1Ezbmc2QkhXMkRTQ0szUEJsRnFBaHF1VmExTDBCNnV2bVgxMlRnTWZSN0FqeUtaSVBOVnNVQmlHWFc0aHFycUJDTjNJZDZtQ1lobFBJeWRUOFBSTFliSjJrODd3b1FkZ0Y5UVVwazhEVllkRTZMK0JlUWl6UzhKMXdDTzA5dFhVanJlMURrRHB1V3YrRmgxMkdkcUNNSTJnWXhibHlURUhRUHEyV2lCajhscTVxSG4zSmZTMm96L3dNWXJyZzJqTkNBM29sUVlvRVVTNkd0SmpjbkhMbE5ManFZTFZGR0VSazBVSUZ4cnV1aUh6VXF5RHpjOTlBem5lUU5kVWRpLzJ5c2J0ckZVMVJuUm8vU2w2UGtIdGVOcmlHcWNLSE02WXNtZVB6SjNXbkJBUUxNKzBVcHN5YzVSUjNIZHJBT2ZoeVFHYnRJN1lXWUNReHRGZFd3WFU2aUw1dlEyUW9IREhscW9NSDdReGorTExTbWZQRDluSENuTmV1R3ZOMWttanpFQTRLNTY3NTVlcHVvWlRVWVJGUmdOOVUwYWY0NWJkanRTWGRIc3BvRWpoaVZBUzNBQVI2RC9rcmRRcGE0VkZQM2l4MUlqQTlHNzNmK3E4Y2hVcXNCZ1FiWWpJT1dKVVZsY1haQTBpZmcwckx0Y3NLU1NCcWV2MnYrT0VUa0djaW95Zy82R2xFZHViU1hNRzlpUjdvSE5qd043a2k5dVprODRPUVZYU1haeFdpMEpGcVZxNHhSMmFMWWgxWG01VWI0TXp2OTA1WFFDNmlzWG1JL1piZ05TdTZGbUlCM2t2T1g0QVlnWnpBYWJVd3kvQkVMMVprMDdzSzNxNGpOZEViZWNqTHYwMk9MMmV2VkMvWVBKOHZ0MExNb2FiT2FvVkptZ0k2bCtYc21Bem5ZOWZHbWFIVS9mWEFMWFVlRWNOaFZvdEdEd09sYTBoRzBqdXEyU1l3OVNDN085YzJYMXZPS3R6S0NYakorYzBCVmRmdVF2N3ZaTm5jaHBsc2d5UG9CTklJcyszQXB3eS8wYXZkYVI0d2xTcUMwS3kyMFdkM1RRL1ZRVTNLLzNETWVQT0FydktpaG50N3RjV29lbGhLaW01QlBJOWxITEVhYmRVV0ZoeW1xMFZBVUN2Y1RGYVNmTEFuR1Bwdk5sKy9QYnI4ODZqVjJLcVNhZ1ZOU29vWGpweXdGaEEwRUF6cUhDY2F1ZXJ3d2FPaDJnSTlCczdYMkIyeFdKZnAvVXo1a1EvVnJjUlBoQ0dYaXgrR1MwN0ZZdjVkNzBObFYrK2ZMYVJPU214OTBaWmFQR200dG5EYmtBT1p2V1Eyc05DRng5M0xsMVQ4djlMaHF5OWsvL0E4dXBTVklDNVhHTXZrNVJIK3JuNDQvZ2RtYXVTbW1uRU9wTUJSVm9pZ0pNTzdZRml5QWFVZUxFN1Vjc0IrTWs4c0VyU3ZDeHZ6bjVhdm0rQS9lcjF5dzRGdzQveHpXNm5LdDFaQnRkZ1FVbWFkemZzVXRNY0RvcEVCeEtlRTVxR1gxb25tQzdXazZYdzc1OHFFcTFXcldWUzBIQlN5cG40d1BCbjBJWFIvQ0NRV1BrcVZQNGZhZ1ZCcmVzbVFkdEpEUWpjVXpIOHhieUg2ZGIwM1ROU1VZbUhUR3NnYlpMYkNtcTdsWFNuQXJHRlcxUUxSem5hZmZNcEJFQU5pZ040a3lqY244ZUlPVkFwdThjVzFhaGk5bzRhd0NKdmJDUEtTSWdDcE9iVGYySWltMHRtRjhnbkdvWDdEYTAxRnF2VHhsMGNOb29DejEwWE9OMUp1S0JFYnpTMisxaFpFL0l0WUgyejcwTzVjemNGM0xHaFlWcUZCQXVLdnlEVXZtRHZzdHF6NWZrWWNHV2dUV3l1a2Z1cDF2UEZIUG1lNks4Q1o3NU9hOUNoUmZsUXVEdUJvdEo4KzRMc2U0ejVMbkJpOExwcUpybHFUS2pRUkpYTGFPN3FOcERKZU90b2R5bXF1RFdHL1pSeUZieitsOHJKRWJUSDJERnhiN1plVXIrZmJOYVVBbjFUM2oxYXgrcUlVcGN6OXNqYXB3akxHdmNGTXF2K3NXdlplblExUUJ3aFZBUWVSUGlrb1NTdUtjTFcxK1lNMTVTN0Y4WHhYaEVrV2YyNGc2NTlDRGNKTE1tMjN0OFdXeU9qMHpBUmZPc2pRYWpCbEZTaGlXV3U4c0ZiN00zaGJ5aXNBMzFrUU9MUUtxbjdkWjZuN0t4NUkxVVNNblhoUXI2QzRSTVVvOHZsdGxyd0N0aFN2SFk2ZTM0bEt1K25zdHZobzhrZ2lSdnZOQWFySUl5aXVRQWw3Qi9SZ0RGTDB5dWh6Vm5NQ1BSZ09Oc1ovZE0rV1U4QU10QzNhWTZJQi9WM09hb3d0V0tBbUhHSklGbjdWSm5YbURwb1JJK25LdUk0dTUxYXRjUTVsbDMwZzRjRHZvamhlQzR3MGlNdS9tN3RBNE12V2NyekRiK213RzZZaGs4WDlJeWJ4ZnlIZERrdlVWZlVXVUk2TU9NYmZ3MXVmUityQVVSV2pmVlpMYWNxZFJsanNCK09NYzdIbXR2ZkdkNXdSL0F5S2tGS3B0dlM0b0V5bzh4MklCRW5RUW1YTHZHeFNLclczWDFJcTN1UnBRL053V2YzUjJ6K1RNVDVZWTFWaWhSaWswQ2RDMFdaT0hkV3NMOERmQ1F3M3JsV3F2Tk1vN3JiVTNwVzJJNlhPOTRKdTVvaHVQd0xwV1ZIcFVUV1J2bnlCQ0xEcUtpdkRBWnJiRko4NHA0WUlPQUYyYnZIblM0SXJZdE96eFBhRUN2cVRJQ2lBSWVzUi9hR293OHlyNmF1WU9NWWlVYzhkcjFKUndhZGs2ZlA2b0M1R1R3KzFNbnUrVWZDRkVkcEhwZkQ0bURiRElGcWxhcytrM0YvTGZEejBRYTZnSVpucCtTRFNnOXdZM1d5RDVTVmRaWnhLaytUUkNxSGEwQkRsc0tZNllBaz0=", + "pin": "111111" + }, + { + "alias": "carol", + "pubkey": "0364c05cbcbb9612036cc66297445a88bcfc21941fd816e17a56b54b0b52ff02b9", + "ip": "http://carol.sphinx:3003", + "external_ip": "http://localhost:3003", + "authToken": "X4BG0sDvdSSP6RlF08DV", + "transportToken": "MIIBCgKCAQEAwHJUGBDTzx7wzGGK+ZQaxWxYgJxhnmghlRE31hh4pXUlKhRtVLn/\nnCWo+DKsDCtCdhNPvVFHcenZxmTjNCsXq1bwkq8zprcFD7q9jy1/0jM8v5pPFdn8\nVrHYbl4+AC8ldNwLm++fjdNyqqsNvc70THdwXSSbSmycOLaFR4AS0PmsS5+bZ0eB\nmEZnWhmWFe4ySqgVA2NyrbcRyfeTmINRcG3VSHOvy/QCIkm9aydnxt8Z5LcMoKCh\neUP+XznQuuvt0FiZfFZib+6RrVOs9F+SBJmJqRsZghAktSCpCRuUuCzPM9VFEdnM\n9sPUVU3ENSpnVBa95Up0ZL77AA7JMul9zQIDAQAB", + "contact_key": "MIIBCgKCAQEAyV0VMXwmVwUCoC9f+GJi9KCTWs4z9Mfty5wuplBNTDG883aRp5p9CMkk/DJBFBfo22UYDLB5T8Bjob8gbtsIBJEBaUstZAA1Bw9KIzNKbhHT/l3D6bwE/aZEaeYujN0I8OGYCNbZjFv5O7cCgi0m4KcbCIsDgas/lDJYQ41BH1AqOtJ98HxddVibQLp7abe7C2TCxf2lWtWATijMma7U0LAupGrQ4qOpPtHQcHK/EycCTxX1Z3V5i6Sp0sPgSir+R/JqNEah3kU2UbaEc+RVcFxAbnzgkSIsZhiBkg92iWMYiiLah2zFd4sMtRF9EOU/SfKHOAaR3US+V7HZmQWgeQIDAQAB", + "privkey": "MIIEpAIBAAKCAQEAyV0VMXwmVwUCoC9f+GJi9KCTWs4z9Mfty5wuplBNTDG883aRp5p9CMkk/DJBFBfo22UYDLB5T8Bjob8gbtsIBJEBaUstZAA1Bw9KIzNKbhHT/l3D6bwE/aZEaeYujN0I8OGYCNbZjFv5O7cCgi0m4KcbCIsDgas/lDJYQ41BH1AqOtJ98HxddVibQLp7abe7C2TCxf2lWtWATijMma7U0LAupGrQ4qOpPtHQcHK/EycCTxX1Z3V5i6Sp0sPgSir+R/JqNEah3kU2UbaEc+RVcFxAbnzgkSIsZhiBkg92iWMYiiLah2zFd4sMtRF9EOU/SfKHOAaR3US+V7HZmQWgeQIDAQABAoIBACDprgUgncOrdfpow+79Zd9GP8+f1K4135BgPt/AUGIb3x6MStJyVe2RsxHlxO1b2xvBMmUgkzON5rsRWmPEOVNFwE1NlGW8Au7ceOm4AHptP5FcEiGqMcaj3prQnNs5ZbS5qvgG5hgjEGHKUAanCqu9pJWI41HWg9XdRMAF3pcXYKWvxwhYZ0I9NLETFfHO2KRh81ZLGdMAIQEPC7HDJaM2rzpMPtUZntncuSk1vezYipj04Czf2pCVlpYmMoZhrYkN0W3timknRtwY1n2zKbqbIAQyGRGl47rk1e76nYm4AyGdM9bEeaXYmx8nKu9dcXuQG7VClPuzBHekZ3d/24ECgYEA/ThfmROBY961ITgYGYC5NvMlawHx8ICIi5HoA2j0ZxZeLnGbuKun62Eb3mQ7t2MxpY7of3NNnAf40+SUnvsb2Ct8z/VKujhlf4nDwLv834Yzd/qbYs1OXBsbpC0rdpk5HH3b6A+OFhagLJEfsOI7+ME8BIHdpbimzf2/59X2oC0CgYEAy5L582P44aB5P/QuvMxkjTHN+bIchzRNoALM0A3ExF/5/wcindKZYHu8wYkWKpzgWFFNK7suYQp0aT8iPP5HErxnNEDrpVZMsMYLLLcZkLv3lc3hLJyoqv4d66RaC7AsvIjsYpmz2WJko4os0xmfH1EKE7HNrCLlcGIlNDOvJP0CgYEAyVlaKs5nxJICVTfVcfH5VMhiqIQTbbnG2bRbWNrL/Gy81xFfUaitDW1aS6xID7rAb3UDStTUkY2FPngz9XaW3X028eWKVikiDBfvoAHbQaHkqzKK/DVkabjkcde5B8UutIkfo5c61DWJh+ad3HkIVvTQVIUvSedaO9HaFu77/MECgYAbSDxFOR2up0H4pzHoTYAgSA9xqkQWfpT0n8txCpdXNgGcAwnJmuLBQnP+f++/kDykuWidNr21daA6RqLBB9bglO1D3Ht4MgOfITt4J6W+duJsaiYGQ4x7Ngkufl0u+dJVBgigAjdPJ9eS7z6on+NqYAL4trh4nEihchXIVDDhxQKBgQCwOvhI1ovPHe7WwiPFfPNTyop6PUw+Y5pvM/wPSOhzBpnmYcxiQjQd61ZrzghHp1IbFCPfvPeSnfXQLfBfVUEdOQEHedOpstKKeproyPbfEMlo1wMOMJWt23+06sazq0y183Z55L7JvgiOqIZItGsxe/waSNiinrHI1txbY+2mdQ==", + "exported_keys": "a2V5czo6QXdHd3VxMU96WVVmYVFEU1VLTnhLL0RqcUh6ZTUzSytNckUwTnFyQ1pRb2kvVUd3NXdJak02UDdPeHBMQVB3SnZMTy9IZ2dpRHNMQ1czbFJ4OVNQb21FU3dibjZmMmlqc0FiZ2w3Nzc0QjZMazRXL2EzQkZzQ0RSVDNSLzhoVzFrYy9vTVVvaHAySGNvUXJnNXRaTUdNdUJSUzk0YlJpdW84RExMUTVFZTIvTVFTbS9xWjNZT1YrcDVPL3VYTFU4OGlVTWdCb3V2MWVyb3Y0enFBc1JqRVlXeUFzRGVOMjdwTUUwaU1VT1BYeDVVQStHWFlpcTVMOHYrUDlCdThnSVpiMjA5V2JJVnh2RW9zZzZrWnp1V0xQWCtCS0ZIQjVCenlHbWhsWEwxVDN5Wmt3YkdyRzBTa1RQa0NHTFAwMHBUelBtUkhRR0dsVFo2aWxsaVY2YTFoazlXWU9kT0lRQnI3eXduN2o4OGlGNUJxWmthNE41WCsrbVBWQ29jSVFBWnF6cTQyUjZtN3dUZTFQRUNxVEFoQnMvSjlvUEYzOXZBdkVaOFFCWU05OU9HMVdoSllmR1ROaWhIWnMvbU92MFZZbFV6YS9aMFJucDNlVHB1dkFSMnppNWlTM0txKzhnc3hneE9tRmhLYWthU1grazBXOVluT3RMUGVKcXkyZ05yZlZaQTQvZXJhT0FwZGlqMmtrSldRc2xpV0NZM3ZnekNnNWxnZFd1aVJvclJralgzMTYxL2R1MVlQSVJXbjlpUFRvd2lyeC9SVUJZK1U5ZmQyOWJpNVhTdDk2SVlBSXExRm85cGc5V1B2eGN2aUJJYTU4SWNIU0drdk1WRHBTSHhVT2M1RnU4QXdnSUpoTTJjR2E5OGpmc1VQWHF2MUxkMjJVTUJVWlIzRkpkVzZGOUVGS2ZjQ28weGkybnh1OFY0Q0tKUkNrQnhTU2FIWTVNRURvd2RKVlFWWGVtZlpXbVBEYnhUNDhCTjhack9LYUVZdDVoZE5YZ1A2ODMyc1A0SVJJTXVFZWVvNThvb2ZCaEZFN3k2bVJUTDloUlBJd0dPSHp4SDFiUWxnR0pVRTlrZGk4dURKTVRUbjJBejcrK0dFWlNKR2JHdWtsQTJBdmNMaEZCREc2ZzlJWXUwMVhWVjlEUE0vWGdxbTJpV0JHRE9ZWkdIblZwVjE4Wm5PcmVPV1lpQVFsQWhUbXc1dUxLRVJpVDFqbEx2endKcjErbTFMWjY3OUNpVzJ3bWVja2cyUTVjUnFBTitzNm0wM1E1UzlHZnhnZ0hZQnB0UHdJVHpyUkhQS1RQb0FPSURsY1AyQ2hXQStIbkFkUGtwRUJlbjg0NHh4WEN3Q0k0cFNrRVBSTXZYWmdBamZKY05NbWNlV1lQMExhTFh1Z2N5OWN1OU5wSXZlcWJGOFM0ZjhzT2crVTJncUlQNWh0ZUZ0amtiZ0hYTHRuQmM4Y1FkdXBzRzdwZDR1WFBEU1NWQjBtT0U0N2s2RE5PVXJMRzNFejBFeUF5UDdvampIL1FxcGpYVEJVMmZ4S1M0MUhTc1A4TUlsOGNnOHhjWXk5WVYvK1NXOEhhWkxPOU03cmxMZTJ6MHI4eGhoL1gzMGNOMFZaNU9oeGRwRm55T1Y0TU9oUkUyYU0rZytobGtYb29XaEpWV0RiRWJ2SjhmL2hvWlBmdTZ2Q3pLNzM2VnZMQ1U4WERrVEwzU3QvY2wxVlcrMityZEQrTUpnWlZpUU1UQngyZU5HdHBQdXZjbWhmSjR3Rm15YmlVQ2ppQmFjOUVBako5YVBwSmsyK2loQVlXVUhDQktJMHZ0MXpoT3RqTXkydm5HSGFTTWhSZFNpWXM5VjFodkJKT3VzYmRlcHVNN2FoY1hoS3VzSitnN3ZDSVJJV0FkVlAzN0N2VUxRTU8rR0dYcFUyRGlUcmtvS01NOThuSVYydm9UM0JERFBFRDZJcFFUanpONVdVQ0M1QUJQY3JMdTVwRGw0VUkrTE1pTGxrVTlRdzBuOUdwVHdXR1VxN2p5SEYxSlJiN3ZUSUtJcDBNYzNBRjhCSkQyVmJhc2Y1anpvTVd6TGpYMzFIUmtpZlhtN0Z0VisyZXRCR0E3WG9zcmZXQ1NpTExIZmE0UjRzZDEvSW83UXBsd3dPT1ZFZjRyaEp5R2F4THpMN0Vvb21OaWswOFowQkxIZmVSQXVsRDJaV2RvUmcxakpzNnNRVU95SG93eHhwTkpyMlp0SGlFcjZDNTZkemNDaHhMOGhSb2Z2cUtVZWlLR1VPdDh6NXFTMU9MSkdsNTRNYVEreEVYODRVY2I1RHNLTm9UWWRZZUl0TVFrZ0ZPMzFtbm81NVoxTDdYNjh2UHdpNUFEVVpiYllpNzlxaitLVHVtQ1hCRStjNnc0QU1JSU1FdnF5b2svZExMUFFHYVRzelZuYTk0b3JCMCs1VnFyQllyVVhmdDdEWlFDR0lML2tVVDhBR1liMHdjcy9Hc1g4NHczZWJsSXdrbVVVd1FpL21mK29GaENRWFNqT3cxYU1tMEdQTVFQd3A0SEZKVmJOMDhpQ0JzR2tDcVpSVEZyWE13bnBFWHlQaEo4cmVZZ21NSGdMSDljbEFlYWFxK1k2TGJMc2tadFErRkovVHFCcWRlczlFNWdRalZyK1o4V3RpYm8zVEF0UGRWanVMRUdSbzAzeGZVdHIyb2ZmWGdVd09GMG1DUTJGbTk2NGVTalp3dWpVVHB4OEtUQmlXZWVna1NLcVpES290ZmdURUZxeDkwdms0bGcrVXd0bTc1Uzc2ZzROZ3kyWVF5S2NoeXNTTU55Q2w0TnA1aTIxaUlaZ2pqOFlPM09saWF1SllUUDEyb2pOY0dnbWxWVlhUV3ZMeUFVc2k1QkJUQUhiTUVZcjJCek90ZitMT3BQMGpNZnVBbXh1bU5SVEE1eWFYd0dpWnZ5RnphVXdiLzVBZjlHRnAwYzZrbUt2QWtsVnppajdvaW9peDFma0ZNNW1jSFZqcDROZjNLVExUbGZpR1FuUGw1akRxQmNHRitxVmErSmFrQ2ZEUlNxMVV4dTh5TmIzSzIwdGsvZnBCazV6RGRlOWhSSGFTNHFGeEU1SmkzV3Rsa3VmZU1HdUJlSUVFZjluMWZmWmFYOUlJNUZzQXVWM0RaZnoxZHhzOCtWTFFSZWhyU1BrbkhlU1k0ay9TTHZMOVd1cjhxZi8ybXFLa2J3RzVMaW1Ea2VvRUFxektLOVZDMzU5alV4aGVNWTFENlI3cWlFeENVNUlSVTVtNzcybDlwVEpVOTVEVVpaYUI1anNtVUNNTkNxRDVGSGdhWCtRTXZwTndBa0tYb3lTc01PeWpVbWgwSk9wdjBUNHV0WXM4aGxXTEs1aExDL3FlWXUvZmRZTnJIRGdLSU1NbDAwNGJSa3QrSWg0ZEZvNGp4b3p5L1NVNTNRcncya3p1UjFBUlhLcHV4YURmRUtEUW5BZjkvS01uS01mL050S0x3NzZ2Rzh2cURidnNEeHJTeWFXLzB4dUVrNlVKaW83c1UyUzZtQ3JtMkxtaVZJbmdWV0owUTVGTVJIZUJLMThmbThxeDZFRXlXdkRHeUd2dVZCejRnczhRQ3FaZGprT2R2NFVQcEtwcVJFYk5UZjlURWpuQjBNTkNwVEk0QWIvYVlObE9RMVJKdU04RT0=", + "pin": "111111" + }, + { + "alias": "dave", + "pubkey": "037ec785c6004d512ebaeb0020f81a2bcdb6fccc9539f7b891f704289ebc65a4e3", + "ip": "http://host.docker.internal:3004", + "external_ip": "http://localhost:3004", + "proxy_ip": "http://proxy.sphinx:5050", + "admin_token": "r46bnf8ibrhbb424heba", + "authToken": "t5wp5GNZ4tdqfNGdSMP3", + "transportToken": "MIIBCgKCAQEAxnVZ6sgu482p4rHuOXm8vXt4U96p3LOwowkMSjmPFaML5eGa13TO\nE3cvjsVMLKHahamGCNaiOuKxbmKgvO7wdxqyi+18gt1Ziu4twm94noJ4sfREVjup\ni1vJgExjBOFzFg6w5Ezhgfd1Ft+shXZwstaxHzRypMjk9gw3G41fBGuySdU5gLnz\naxLDRHvLxHiKOIJECu3WTIWqS1lzGADObPoO7JyIKBTSX3hcHr9PMYHJqCNcHa34\nEGCldEsB+qCRrKDvc13bJd5U1peadUthJ3cYdMj+n14iJNkSa8PGu29N+OloOQLo\nQRRqAhBQSJV8F3c5Dn5mlUhBVPXTDdcAmQIDAQAB", + "contact_key": "MIIBCgKCAQEA36o7z8BpTLrUCok3BDlW0/guvwSTaTHLGgE54PcA9MEd4OB1Ez18sM6mPHNdrIWKrZRMRO4b5IqLmIlfWnsk3oougHQcvu5pEmta7wpFPqgPye7WR5u82j6dQG0KNxRkSLiLar1v0SWoJjYffSDrhjTWX96C3j8iW4F5VHY4BuM/ipnnus9A4Wh3JVwoInnxYHdd/jhpbF+QMRsfzdswYRmb6TQ+NLmnoj5C5HwnGQaclPdUmE/JRs1ox/louLZrZ8X45Kv5wR4Zt72yiklwdinXAUOAovcz9oB4Oj2oJnrrB6pM3R4KOew/dFr+0EyKpbPMTeEpXSyAVwtstGaXFwIDAQAB", + "privkey": "MIIEpAIBAAKCAQEA36o7z8BpTLrUCok3BDlW0/guvwSTaTHLGgE54PcA9MEd4OB1Ez18sM6mPHNdrIWKrZRMRO4b5IqLmIlfWnsk3oougHQcvu5pEmta7wpFPqgPye7WR5u82j6dQG0KNxRkSLiLar1v0SWoJjYffSDrhjTWX96C3j8iW4F5VHY4BuM/ipnnus9A4Wh3JVwoInnxYHdd/jhpbF+QMRsfzdswYRmb6TQ+NLmnoj5C5HwnGQaclPdUmE/JRs1ox/louLZrZ8X45Kv5wR4Zt72yiklwdinXAUOAovcz9oB4Oj2oJnrrB6pM3R4KOew/dFr+0EyKpbPMTeEpXSyAVwtstGaXFwIDAQABAoIBAQCWKrRnorbQFmvA+yleA6VhQbMY+tiB+zVyqzoR6aTRr0sBLZJNLa4nA0enNInDCBH4wqWGbht6EO7ypeDIXf9+DmZ0RgD6zBTtkfiGn22oSKv5Fwr1HwHnwbxQgiUmn+FI1eZ87t1BHbhMl3AC0fRvsc/wo/NXhinqJ/6vD4REUlN9TtXo/iM+Gt+jCYaN0DoadvQ2yLdN13KftyFpmZd5ChyMwn6szWLQKBCi0A71ovqSkI0ULG7kUs85WSBjdFt4P2C6HRCJrEE33PgLyxghNYYKNZ+Qxbcfum3Mz/7+CSsquEZi+NsdU3q14wK9mLm+twifnuHM8W9JCIOxv+9RAoGBAPNqtIKcBn1jRc2vQH/+slZAL5zNH8fpINo1n7cuwkvQw5PwBbl5VE/J8O1kAt3xWuu7LA051lPhGjJpL1URPtVhkf0WrroyuN33c6uVCzlurh/MJNTBpsIfS/ZAK8pa3XZz2JwewHgUBun9NjOZH31ug6yMMrxlceuJ+t7pj5QvAoGBAOs6I7AF14vCnPhyncMsnN90fwioCnOpx4OG+51OM/syu1xV+Tj9rLucFIWeKkE0FjTac2YzUyb0NAnMGke18Cdm8kxIafLsIxawgPM5e2vZe2HwkVQ6mipx3PRjKxDEYd2g9x+EkU3yoqcpCznEPldD4OFXsOVYGnwSVGfSfKmZAoGAM+yjLOlTiRPQJBwqSiNur29puK0ZBm/4jhO6Sj0zPTD/R2OAFRyIm6ycNEeNRQLjPj3jG78mtSXjjLVbX24aVTJHDhH0m8uOG+tZRVS53Dp78lR91tSoWeiLL7BopvXTIB1+K29z5yl+gBN/qGoViZA1jm0ptX5+WpxIY5y3AAkCgYBaZQhL36LaiZpK+7jWxTEvyhP7XqBNnIQYbmoJJIFjWjaYIE3a8dlMa4mTY5m3Xu3dt8k7ECQ3RwcscKv0vN0iNzSLzhQxDz/Yu1GCpqdgZb49f/ZJWQ/fmcwgem+VTPKS+gWdrhMs0j5hYKt4soqGfIZR8qH/MKFU5rJbB49ymQKBgQCylg8G1cBTd7InfEu4rj82zC0v3vAGRGWb8pIghRtgIU8jo+c3ZxPlVxPMe9hoVNG5vIBzN6lwLvpkC2osmnhYs25S71k/ADlVpielEymMGO5AaL68IoO/CT3rBJZcIF0Q5lm9GteolWTTet0+Fpasb5InXKdzOHRIFGAEZgAREw==", + "exported_keys": "a2V5czo6QXdGaHU3ZkQ4bTVULzQwMDZ1ODBTVmZBUnFsSkJ0VWRXR3VnRlVFRzdwMmRvN3dwcU93TnE5aXNOL2dkN2d0WVRKeEZ3KzhoVFdnMVRDU0dPVEJabmlDVEQ2N3BJcW1EUTg5Mk8zMGVwRG1yaVpVYllpUXF6ZUJNQzRkcUpxM01TUjRaSGpBM2ZaQ0xKOFFGcjlrUWFZbHI5a3k5WDlpY01Qck9BQW1qR2cvV2EvcmRoVHdqVzF2N0FCREJJV3hVamVSTHhMZVNFY3A3OENFZ1FWZHRhVUUxMmg5ZXZBTDBzRTVVZzhZczdFaWl2eDJOdGFadThjR3dna0dpVlI4VnFFNk5mRDVVR0hLMUxmaGVRN1FrZ1pVVkprUmNQcEFsVkFNUmVzNmFScmpCMUdSdHhNQmVFUjU5Zm05cmR3SkZPNUZVWGpZUjBCMFVMUER5aW1BVkRpWFJwQ0NBd3JnaHArR1pWdXpGVEk1bDZraDgvT1FFRFhnWlE5ek80VTJObktEUFYyYWpEMkZFVU1mZXJYNVhteEJTb281TTN0bU9TZ0JVVTI2dk42aEZiZHgwSUV6aHRWa2JpTXd6eFlhOFdDVndtcHFML0NMNVQ1dmxCSWw3Z2dSalI3RFhNNFJCR2poNU1WdEtoVTd6YWx0SDUzWERKdGdlbDF5ZUpMdW1Zc0VWQS9GQlFPQyswalorQlhQZHBYUUJBS2lsajFxNi8xT3k0eEFiOVZQOEJobHk3aXBzenhHN1puK0JlV0xFQVkrMDAzN2duSEtvZWNBaDFLb3dXQnZEbVRVUEsxU016MklicEROcHhwWHlQMlZsZ0p1dUxEZFZxN3pxSFErOGlyQWxCZkJqbElVY3JXUlozMXhqWkV1QlA4cG5HNXh3OFFUenV5K3hsL0dodXJWV3lyYkVYdkFGUlkzR0E0TnM5K1VqNXRadVdJQy9jNUp5MXJpNmp3aGhjQWhsYzRDN3BZYzdZY0REUWJCbGpXeWpsWGVPbzh0bjZTa3Z3elNKa3Q3V0hZSmpNZVdVVDJUbk5BUCtKcnFqY2JvcHROREwvTWdxTFFRWm5NR0pTc3pZVGthZ1NzYyt0cE53blFzNzZiTlEyTG8wZ2FvbWNOVzc0QWhZUUFOclRlaVYwV2hveDdXazQyRlh3T0M2ODR1Z0l5SGRzVWRDOXFJb3hacDAxc1hHajFUTmlEWDRHSm9keW1Ma010OXlqOC9xeStkWUwrOG53V2d1aStya2NzNjZrOG9SUmt3cW9ReVhBYjEvNVB3d2UzQld2dzFFZTZSQThkdVlnKzJhZ0NYaGZrRDh1Ulkva0tnR3RjOEhvcmkvTnRwb1lNSmcvOExWSHl4OGtTYjFUb2hQQkFIeTF6YTRuSFBjY3JkQXJkWDdYVmkyQWZJb0U4cS9iSnRNREdxY0NPSi9GUm1SSzcwV3ZMbjlOcTNXNnFDeXVmOEhQNkRRSUdZdXhSUkFUaEs0TU50aGl5MFc1Q1V1eDdGT2M1WnVJait3S0lYSzJVVUNGRXp0VWtDZnE0ZnBCOEdUOVUzZ0Z6dndxNmdNNzU4c2puUG04VHQrL2VtTHExWUJmUCsyY1RxWDF5LzZKNjY0OVBMYmRuNzZUMDBxc2J1SHNXWTgvTG5IamlxdWhlZzhXc0tRTDc1a3Nxb1RyWDIwN1o0OUU3TllLY2dMaDhGaThuT3EvdVQ4Y0hhV0szbnUvVnFUYklWNE9TRWV6cGtoaDdDQ1NCL3dmTDRJMU0vdG1WSmNLNkJCWWFBQ3dpUHJta2d5RHUzYnVDRE1Kc3kwcTAzbU9XOG5JM0JWSWRwZEJ5TDdXTWV1dlJUNGZWWVVzZW1MQjhqbXVYVTNYdnN6VmNITW5nV2t3Qy9vRmFWeGg1dFQ1SUR0TmRYaytObmVONlZMZEN5aHVRZmVUMlFJVVk5TnlLTlRPUSt5ci9rWkJXOUxyT2ErZlRwQVR1R2lKMWV2eWY5YlVXMVNnZThyakVTSkhObXNRZllYQ05pY1psd3Ixb3Y5eWM2bmV2Uk5vbW5CNUgzMkVPam9Nb3hGNUNuUXgrU29zUENQSXNqMDdmOEVIWnBLZ0ZobjNVdVNSNmJXbXh1eEhEbTRwRVdieFoxOU4xOHVjQkQ1dUZHQndpRjBRU2ZQeDFkeTZGTEZDU2hwK0FoU2JGQ3ZBdjQ5R0J0N3B6Q3NPc2MyZE9jK3lIVmRJU21hTnA3R2dseWxybXBWeHJ6eWcrbUVJbE9NK1BNSTJmZk85MXpkbnJNbXd1YVMwV3ZVME1MZUQzSk90aTR1anF0eUtHSEMxREdlU2hrSmlYYytqVmxEei92UHcvSk1iQ3lnQXpDSjJ4N1RJNi9Yb2tYRStFaWlVMG81c3RCUUlmMW8zbSszVTZyZFlsRXprR1BFYzdQbURTTXdrQ2tvZEc0UEthT2FVRm1ZLzh6aEtOMkQ2UGNEc3NyaE4xczdtS2Q0QURaOTkvZFl0NWRsM3lnc3JNNU5WSjlYdWx6QjcvdEhaUENBWUR3ZUd3QlhoY2xFTytScjBwQzJwNk5ycFJ2QXdZQzRVMUs2eXZaa0NXYkJkTGFKeW5pUnRvV3B5b05rb0VpTnJKaGIyK2RUcDJvNnJRR2lVelNwZm1xSEFJVENvbXhxOFJNYkRMd0RYM3dEZHAwNmIwcmFoWEFlOS9YUW9hZ2RLd2lyWmJJb1hlOHpsUkxRbU5SdDUvdzlxY2U2UTBVOFBHQVVobE91MmZKNHhsSFc4dXY5bms1NjQ3S2gvRWFUZ2EzdmNsT1ppTjB6aGtkcldZTGxCeFUwM0hoOWg4TklDd0JicUdNZmlLdVM1QlpTMTdURDlVUFM2WjgzdUxidUVBenpFTXdKblhYM3hYVDhvdDB0R2cvbzBZWVZBbHl6QlJSbVhjYXJGVUJHZFNxTnU5Mm1CRDI1Vm1mS2hwb0ZhT2x6SmdsL0lEYlFGR2krWjJGVGwvSENlckV0T0RHRFpoQytjS3BxM1dzaEtFQ3lid0NTUkgzVlVpOXIvYnl2dlF3WWpNN3ZzZktoeVJOWnpiVGhSNWNUdW81aEErZkc4YmJ1aHJXNEQ5aFhYQzVMVUlRUFFPaURqRVhuc3JQVTBGZ01IZzhiMEFmQWUwNjVpMHlScVNrYlJ6cXBRSE5FSHFLRFJHbEwwU1Q4bHJLbmZ5VURrUlQvV2RnOVdEblRVRFVUQlRxS2JIT2VDQytzKzc3VUp5M2drUzZ5MWZscFJUb3IraUFHclEyTWNyeFl0dVRkVUthckZMNDRWbXFpc3h5Mmg3WmFiSGN3S3REZGtJblNMemE3ckcySFpabitjSHYxUDM2MHI0dEt2YXZLUkFsMnBnaE9vRVUvMFBJL285TTVrN3lrWWQ1VHI3UWhDNG1nS2tXUTZCQ0hHV3VYSDhuaU1tWUMydFFZYmR5S1k3bHAyWWJucExHRzlGT1BVZHNJQmxnV2xZK1VmcStJUWd2ZWhxRHUvNW94NVJnSFVYSXppdk9QQzBSS0JvV3EvazVYaDJocjZDK0VPOWkveWRGRmVWRCtJS2RITWZDR3h2bGljdjlTajFrNWljb05tTXBCSFVQWnRmVWtxNjNVeUlsZzNUM0xsalI2RUt5Tkl0OXBGTDYwUlhTekFVSlBLSys1VWN1MXB3QT0=", + "pin": "111111" + }, + { + "pubkey": "027d21ae024366d3d01e7ba96ec27e50c2ff900c42fe3edcc771fd8a5d3fb01df1", + "routeHint": "037ec785c6004d512ebaeb0020f81a2bcdb6fccc9539f7b891f704289ebc65a4e3:2199023386625", + "alias": "virtualNode0", + "ip": "http://host.docker.internal:3004", + "external_ip": "http://localhost:3004", + "authToken": "f3yEOUCABYORB/A+I7RY", + "transportToken": "MIIBCgKCAQEAxnVZ6sgu482p4rHuOXm8vXt4U96p3LOwowkMSjmPFaML5eGa13TO\nE3cvjsVMLKHahamGCNaiOuKxbmKgvO7wdxqyi+18gt1Ziu4twm94noJ4sfREVjup\ni1vJgExjBOFzFg6w5Ezhgfd1Ft+shXZwstaxHzRypMjk9gw3G41fBGuySdU5gLnz\naxLDRHvLxHiKOIJECu3WTIWqS1lzGADObPoO7JyIKBTSX3hcHr9PMYHJqCNcHa34\nEGCldEsB+qCRrKDvc13bJd5U1peadUthJ3cYdMj+n14iJNkSa8PGu29N+OloOQLo\nQRRqAhBQSJV8F3c5Dn5mlUhBVPXTDdcAmQIDAQAB", + "contact_key": "MIIBCgKCAQEA2h1Kn3+L6WZkDrGWEdN1mmJd7xBfGEssR+5jSLpBD1EhG2x3Sj80RUqU42DTORHWt5Do7JBrrPJLjZciwEekJkDo0X7iNhvLqURU+i06cblrDEJCXAlTF7c3LZvaZVgHqP2NGl5s05aAq8+pz01LpXHW5R5qqLFmI7b2KErijAksw7xG9GJ5ZPM7V7fdpQrZrLWGBUOsV4VJ9kgau84DhbwyqV+DH0B2aAJn9p38siAadpSwRLmrNS1wk47S1/iYYs0P6K+yMatajz5cMMpSWt6GlwlQebnEnjYU07Zq+lhjocwr9Bz+8UVUUmBq5tM7BS8eMhBqX5AaXlatl8FvZQIDAQAB", + "privkey": "MIIEpAIBAAKCAQEA2h1Kn3+L6WZkDrGWEdN1mmJd7xBfGEssR+5jSLpBD1EhG2x3Sj80RUqU42DTORHWt5Do7JBrrPJLjZciwEekJkDo0X7iNhvLqURU+i06cblrDEJCXAlTF7c3LZvaZVgHqP2NGl5s05aAq8+pz01LpXHW5R5qqLFmI7b2KErijAksw7xG9GJ5ZPM7V7fdpQrZrLWGBUOsV4VJ9kgau84DhbwyqV+DH0B2aAJn9p38siAadpSwRLmrNS1wk47S1/iYYs0P6K+yMatajz5cMMpSWt6GlwlQebnEnjYU07Zq+lhjocwr9Bz+8UVUUmBq5tM7BS8eMhBqX5AaXlatl8FvZQIDAQABAoIBAQDXkYOjR+f78dqKOzHaxGfDAd1c3Y1e8Uz+erlds9eBT+mstPLhSr5ajW/BmnyoNt1D59CNnd8Nuxq5AdqytxuhQx3Xj9P7LlWHIaXq7LCKnXsTTplPZVfeZJIAXbzn1K0ddBr1KMXeCS16oW9vFzHgfjapk/pOZ6ZPPhDjmb92LfgbpCVCQbtupcQeujcfeOgkhiH+n3ehQS8tWLxx7aZ/qr3gZW0IQ0kI22lERJg8rWXLofh10a9jNXH/eFEMP5jT+F53joRKvHspUCHV1tMqb7nZzbJrEO0jQO0CdNmguZSlRW86jUS23DtVwGpWEHVd5m6SJ6XBU9wJPemS7ryxAoGBAO2W6VXy5kYgjajoOOtK9f3F0x/1T5NeiTJhOpem50KkL9n/9Wpw+duD68+FwiJ/1Xgyx2LJ8lHhK9nPP2SOnck+gCTbIKal4ArLj0AT4oGAxWKrr230OaKeujXw2p7hvacQ5gcKNIXabYeHyn0jmBrp9dCqw0UHDQCKUjSHiFtzAoGBAOsEDQFj+yh3yb6e3fwhlDRVXdfzFHdR1GzEv/HMqRBZZMUBngY5gc5FSDZkkU86SNp6iOEvzXJRsduc219oYsXU8uf8exgoLT4hQxaWcd/dpNSE3HgC3vC8SUOYBpvG03iC8m0RQWc5ZfrqQK9GQ2FPdWRi7mKiciHSxtJBkAPHAoGBAJsAjZIpOdoeeszrU9cNvJanbSm4XQYD8vYPQK6XkOCFRUKwHmgm9Jsl4b4twY3IYHheiH4GyjRo9rbO4siz0nTsdaWV4CNYrGXej8J6NpfObvgEkhrl7oQNkeaHD9n/5D8OY0PMgJ+i9ToqeQxTIHTOljRgc6yhAPaNRzxF/8vJAoGAMwDzDZ00MckleIAj7wcekekA78/qXibdMinU+lYPTuQHsZWzROiQGkMA9AUJYCdnDjtPn4dvT+MY9W9qUJ9n6EVZ3iz2TfzSLMytMaa+2fXRQun+qvD8j0RdphTFQmN5G4tXr4HyLsPPNRBHr4JRNzo2YO3zjGZy3JJQ4eqmpZsCgYB07nENm29IMLUVixmjk23uTFmgs8ujXDGi+V8KShFRT2+Z96qz8/PNrl7d21apFxwE2R+VczxjNLqN5dEwAYslCtl//r70Ky4Fs8V2qTBdhYgKiTmgPFeXK1217CTxx6sUOy9UV6DlXnDGLC7Fi6q9BgC1g/YjaoSfwNGi6PCPiw==", + "exported_keys": "a2V5czo6QXdHRFYvejQrVDBEYzFjNDRqRDdkamtRa1prQTVCVUJxaC9LMlZJYmk5YlROMDBDMThDWjhtWHBZd0JwWXBvbHllRnNlVnlJOFRTWWpORGh5TU9lUmtUN3lPK3d5cDRqSzJtd2U3Rm9NeXZMSC9aWDMzUHZkaFFSNWQ3WVhUc0dtbjUxOTg3YXRxdE0zdDFBOUI5V0wzZnFYMmgyaWxCY1NNK3BSZG9MVG9ZM1p5b0U0V281S0Y4a2pxWGU3REx5UUtmVkMwSnhRaVRyR1EzUnRtSWNTakVZbEp0OWtOb1g3VVRzOG8xSnl2WFJmOE4yMFBncDVta3B6UTV6UnRJYjFmL1RoNXlnNEk1VFlWWEEzODFzVmplRHdRMnpIeGxVZkRQZXBkbW85Qnp6NGRwTFJxU0hncXhoeG1qK3JkWUlIZjMydGptRDhBeEdYSGRzeDJNK2hkOU9tdlRXZ2hYRkFPbzRQRnRVNWVnanBndU5FelcrOGV3TksvalhQaVJYSjhHc05CTTQwRjNqNkhvVjFtR0lZQ0ZhbTc0QWtLMzIxV1l4MG1wWjVJVHJRd0VqYzB0cTBOOC9PaGw5YXBoQkQ2Z2oyY3pXUDZidDJ1Y1BIMnl0Mlk4b0JmQ0R4N1RRUyt5QWJ3RktUODB3NjYrYVJJSmJVSkVacDNRWTF5ZDFZVm1FZ29PMjJpS1JZemFYZkZqSzZ6TmNxTXM3bEpvc2l5Z3Urb3FVR3E3YTFtYktiSkxuVlR3SFFOTDVFcnNHY3dhNG9va2FQTGZZK09pZnkrRm1iT1JROWdtaHp6eGVGVDdZNkgwKzU2NlpmT1ZadVpITjlXS2NUWGZlWHZsem9PSmdYYm1TRjAzaEo3QTFVK3ZZdXBqekRRNEg5VlhJVkt2MVlCa3JtUlp1TVAvaG1OdC8rTDR0ZDJrd3BmeE54TlYvU1J4RkVaVHhOb0NaMVpidUYwUGk2eTBBUXgzek5JYy9BemtZcE4rMnlnM0wvVTM5ZmVUeWZrQzZPSXppVCtsVzNIZkh1NzVhZ1VBVFZ2b2xIbFhjSXNnUUxCZmpiT3RhYTlnT1hDWG5lOXdVcEtESGx2SDAzYTZuRzFTazl4YktuOVhIU2xxRjhaV1FiTUphRElFVHY1SVkwcy9EWVMxYmJUOXU1S2U5b24vekZ6b252WE5saXpzVEVOc1E0NVcyQnNxc08vSXdDMzRGK3ZWeTEvMXZNWHVMdUhweEk5M0grS1FDclkwSmwvd2x2LzJ4T3hTWW1yeFQvV3JoenFkRldkTGdFMW5YL2gvd3pMRXM2L0kwZTFjbTdZdnl6WVdCSTVCRTZNNUd0MGxEZUNEUC9ycFJ2Tkl0ZTh1MVJCcGN3MDFMWTZ5VGRBd0pmY1hKSGV4KzVWOU1maThzbzJGL3EvdDFIZjRpQXFwRU5QTzN4d0hSNlVKdnZrT3FXbnpteVM4dzBBdVhWcThMR2VpLzFUV2lKV3JtWCs5Z0VJZXA4aTZJdkR5UHJFSDZoclpkVmVNeUVwWnZ5RUViSGtTM2huWThLL1UwUjZtMXRkeUhHaGJpR1hHVDN5Rk5FU0tKWGJtZy9malNJUW9GVS9NenZSYWlqVmFNUEJ1Uk1kcFZoSm5vdjlLM09WYnc0ZjJuOUc5YndwZUp2MjdZdlYyekxLUmRKb2xuYkVCandkb1RlSFVNd2NXODh3Zng2NFM1L1ZaSk1xN0ZGWm11Y1IyUVF3V0k0Z2VQZDJyODE0WU95WENRYTRUOGRpTGREdzlVYjlIWnQ5Y0RVdlY0bFp6QUJNSmZadjZGYkpOM0pKQVd3RHZQYjJWK2h4WHJ0N0FEUVFaeE05cXlMa3VZK1hyZHh6MXc0RWlpRFdKSTVvWXVqajk3OEErRVZWbzBGS1VvaEVCWFp6U3E5UGpHK01lZmpJM0ZxSkdEeTBFZ1ptR1JadnZIaHcydmxkcTZ4SzVqaEVyYzBJZUM3amd5WDV0RGs0NE9nbDJlTGVaREk3cWFySVRsdjBaa1hNdWVZWE1JVDFYazBkYkZxRE5YbmFxNzdxcXlwd3pZSSswTTlDdFVpczh5eTBoQXdkMlQ5VHl5bTdPcXRybHNDK0VPM3NSLzkxTHdManBzbDZXRmd5eWVRNUhsV01qUHlHU3VZamNnQ0phSE84T2tVRU1MOG1lVENJelFBc3BROXFLcVVZeHlpL1dpU1hlWFQwL3doWDVjZkpMVERxKzQzZ1RIVnJaaWp6ZVdEUjFUM1pVRGE0YnpOT3lkNHdqRHlxeitaN0hhN1BUcUhtbzFHMmd5Uy82UGNvaWxJMVdiaGR1WG1iaTFKK3JrVDFZVmpCTmRBWFIrYlNvbkdTQ2E5VjMrRkhybUhPN1MzOWFOeXBrWHZmeEdBcWhJeXBwWll1dGF2SWpPOXVtaXVTc0QzNWwzSDJ0alVhWDNpZHB1MTkwZkk2dGFpZVp3QXNxZ1RQSVE4WWpydDZuQTUwMnhOVVJiUmV6aW5kNTd6cTA4TG1hUWRqQkVscy9VQm9yVmxrK1F2THd0Q1Z2RFE4QzhXVGRlN2FTaHRXRHFKSjJVRGM2WEVPZHVqdUdNNFQ2UDZzWXpjaUhPb0ozUTFvUDhwNXJwSSt6WWNmcEUybXM1K3ZnSld4RVJFSzdqcjZzQXVmaDdjN1lKeUZDR291TWxPcUxKbE1HWlZGNzEyQnBYRzZTQ3NYa0JPR0E0enVqREpLcC9nTkMxUGE2K3lBZHNZSGFrSWJBT1F1S0pGellXVitVQXhSSkdDcXJOVU44Y25qNXFUakZXL3c5dGt2K3JqdEhvSDkweXN4MW42SlBoSnd0WkN4bGlZdnRPL0o0d3ZvM0dPN3IyODlrdUxOS24rZW1qM2YrS0ZPL2xVWHVBeERZWGtSVUgweUwrZU5QOEhDVkJnWmdvNnRlTS9vQjg3TGpmdmZKUjh1bWZCZ1dUTzk5U0VtbGxwVm5kdG9Cd3JYREh6aTlwamJPZ09CTllGVm1ONEtuS0VxNW4wTlhvUWZrWFJhaXZYaHJReU85Uno4b25DUnN5MXdpL2dJQVFvQnBuSXp1eFpCSzQrWjQzeDQvdnlZWHZ6SFB4YThJMmg5Z2ptZUcycEk4dmpwRTY1aExTeWpxWGNsdUpPMEdNKzh2VGFLZU15VFhzeXh4Q2xjS1pvcVZUZ0ZzcExVQlF6aDJPQTkxTmt5ei9nV25jOFdJYWlhWi9HNDk0cExndVFrMWVXMGgvM0RjUW9Ka1JrWTFjYlZhNmFUNXJST0NpNldxUTNHNWRBVTJpYjh5SEZhYVBzSk1pTFU5TTZJNkdRbDlPVTVISkJvVk0yMHE0UzhobjdWK0JGd3kwTmRwSE9oMkFpeFYweHBreFNRd3ZRL1ovUzlRTEdteUVMdkpUK1dGTzlOVmRXUTVwaGU1K3V6aVVYN2hIbXczbDNKVFNJSjM1VkVsTGtaVXhOMEdlMjRIYWx0LzNEOE0wZVZ6SFhDL3EwTFVhRWhLSkdQczRlNDI1SVhnNndUR2doTGpCU3pFV2JvbkVBdmYxcEVXTWFvUDI4cE9JSDEyYWwveFlnUEphZU9OTWxzYUl3M05OTkVGU2RpYzhRa05qalNsN2VpUDVYekoxNTBWT0hBeGNKakxLRXBDNGw2ZjNuVG5SVXZrV3U5QT0=", + "pin": "111111" + }, + { + "pubkey": "0281a5e8939fd42864dd8172e49040ddf633ae7e51e100e2e8031124c1fc81ceb6", + "routeHint": "037ec785c6004d512ebaeb0020f81a2bcdb6fccc9539f7b891f704289ebc65a4e3:2199023452161", + "alias": "virtualNode1", + "ip": "http://host.docker.internal:3004", + "external_ip": "http://localhost:3004", + "authToken": "D61EUMjild9adIE0X8pq", + "transportToken": "MIIBCgKCAQEAxnVZ6sgu482p4rHuOXm8vXt4U96p3LOwowkMSjmPFaML5eGa13TO\nE3cvjsVMLKHahamGCNaiOuKxbmKgvO7wdxqyi+18gt1Ziu4twm94noJ4sfREVjup\ni1vJgExjBOFzFg6w5Ezhgfd1Ft+shXZwstaxHzRypMjk9gw3G41fBGuySdU5gLnz\naxLDRHvLxHiKOIJECu3WTIWqS1lzGADObPoO7JyIKBTSX3hcHr9PMYHJqCNcHa34\nEGCldEsB+qCRrKDvc13bJd5U1peadUthJ3cYdMj+n14iJNkSa8PGu29N+OloOQLo\nQRRqAhBQSJV8F3c5Dn5mlUhBVPXTDdcAmQIDAQAB", + "contact_key": "MIIBCgKCAQEAuoZfr8R02CVQZCzkHSn2bNUWS43IjzSilU1mZ+9VPMrEU4lZ3TwKffl2Kh7Mxg+66frWgCQRaE9iY0z0TXlnaskHLI55dVR90x+IrN2kDmpOyjx1ppNuTeZ2tCt6oSsnZ4KmTxkScwZfBB+a0CLlhD4h8OgGKGDdav/HGUdksGBAD74f1uTIqZEifsoy4jlUWm/uDzNanQsxUW56WNje+3lProc6AY5iCszLslOAHX3pH8/bkPVS8d9H4szktnKT4/PwCa4eFE+qk5FLMzUulN06+U05uj0NqJmy6Yu+sWfZgM88nZFNhdBnF0C8/hizuWppTDy6hrW3nVlBqRONRwIDAQAB", + "privkey": "MIIEogIBAAKCAQEAuoZfr8R02CVQZCzkHSn2bNUWS43IjzSilU1mZ+9VPMrEU4lZ3TwKffl2Kh7Mxg+66frWgCQRaE9iY0z0TXlnaskHLI55dVR90x+IrN2kDmpOyjx1ppNuTeZ2tCt6oSsnZ4KmTxkScwZfBB+a0CLlhD4h8OgGKGDdav/HGUdksGBAD74f1uTIqZEifsoy4jlUWm/uDzNanQsxUW56WNje+3lProc6AY5iCszLslOAHX3pH8/bkPVS8d9H4szktnKT4/PwCa4eFE+qk5FLMzUulN06+U05uj0NqJmy6Yu+sWfZgM88nZFNhdBnF0C8/hizuWppTDy6hrW3nVlBqRONRwIDAQABAoIBAG8tXuVubNLU0ukS1NkJRQezrzlThmLNVcc2Pj7fKeg1V/YO3VB/1CUoRyVt/FJl19xVFfuFBBcvkg5sNQXkwh6lOjB1r7GerezkU9vttDafaN0kUl/6annmT4SukcZ06WTKPATTheqntoTHrcg3tKQxQJvOQLVanz+Cu5K2ui5h+eXDCVYhzLs3ZwJD3EEHgs3zTCpWV3EYW7Td3/5v2VJH0ljG7PEPDCgD02Z0RP7EXl2LourIUaqRgkAeWZLfzuUE5me4uY6BMMOUGRhJKPcENRieLzJ4GunuL33AxR26vAwDFAPbeyFxkxGQLItaX2Br6CBUNb5aEWRDOAMAwYkCgYEA95AtmCrBAmAVKkf8NeDhxiUj8GW48kXOkcBxKh7GuAioF6hB4TWPAsWh1m2onjeId3wzDxAQF/N1Y8pyEkhTmE+uT1Dcuc1jFPfsyFqACKNqDytI5YfDpgXWmS2nRC56sO7pe9nJs47t7IYCQEYafH1Li/XP/WonRVHm3qblEpMCgYEAwOGtfUOrVBDSWZn8hXuh1YpJ6aMKDjhzH6dC1y5tJIriVR/uw36o2emLEAtH0Qd/TYRGCKfNVwYgQBUtztMCiRIbfhNzxC+uNM64vMbuzEAmYgDj2CXerivJ90GdguqT6gZaRjpAO2knWlYVeysr71MQBG2CtlGEQebBLYl0Rv0CgYBRdvJqBnepDnEojrOiDzR8fbBL5U1s/Cezsr4KfEIsQTz/O/Eh6Pv8j4hoBYHdPqz7lLVAmaqSFx1kDzRma8KGdoIHu7ZGth2KwuL6Mz26mfvGrhm43mo1cepiUbGfMCRToOrYRJypJ7mHgbmv6OHCYYDAt80PuSTfHMp6LjVnXQKBgBdmidTLs+qEC/Eg9HkBUdYFbAgzZpHpGVZ6xWoz0LwBOYpYUHBZWoTth5iPtcvPXAt8g76jFQ98x8beiusvwHv+vWUjWQUxP7JabiFBBVG0arOzJfFgTs7UszETPdfXO9DFqoggoxBSJpsYHI0P5MmpSyUuYBBcfW49X6x1o6zFAoGAZCAw7xNQBbY8nZt2wLsyfa2+l7qwUMJOSuNMWM42Y8HGy3SJiO3Uu2XE4uZ1C7/5Wcu0Zbo9b7GDX6X8XfBrdIK2Tasv4CFfUBbTDyPxwzMZh7Hadh+u486s25HxNXXyGUUwHzUw2HJvFXHQxDiIVEeZo8gBPAUb/OU7eBpJrrE=", + "exported_keys": "a2V5czo6QXdHL3NJY1FuU3JadzByVjdvTi9CVEp2d2tiN1VkcmFDZ2VsbTEvRDBMSkJscWdtSHlSZ3lQZkt0NjA4TERzUlZUaTdydHorS01ZL3FlUGxyWktlL2dYOHQxeG5ieEJFbDkybGc3U3lBMVNHaXNON3BWOXcza3pWQVJNbkpBT245YUhNYnVybVcrUmhRblNNK2VPeUhWUGJIVUNYaTNhSmw5emdQQUlpLzBmeDZTNy9lMVRxVnRGK2xOWlRjbXo5UHlibzBreS9YNnRKNFVRMXoxVkYzNEhrMjRrb2VhYjhFNlRsUXZrL0x2bHlsNkp4RktjalJnSEgwV0o3VEdORXJHODFlc0lncDB0Zi91MDM3TnhybW5lR1hadzczalhpdlRnRWw4OHI3N0JYVHg3TGxJZFlGQk5oZWFUNVhWUmVTTE9memErK3dMRW5CbWRJRzJoQzREUG1pZnFqYWtRVzRMcnZnMmxNK3VFQ0o0enI3RUNnVkFBcE1wdjB1MzhuMVBiVDNvR1RMZzFGdjBPV3U5SE45VGhuMHFMbVd1eTNuUkoreUNTdEpWNFAza2U1Z3JWL2V4MHZRUVYwZ0RWMk5uVFFlVWdBTzBWR2dzWXJvaldFdVRaU2Qwb3ZVbnZQRUZiL3VlNHpJdzViSCtlYy95bXhFT0hXb3dKTUtjU2FhWTJXMVlDOUVYWDV2RHpPQlZ5ei9JdGQwM1c3blRnZHA3dUNBc3pHL282SUV6VDBqSXVLV3VIZzNRZi9oRVArdUVXeE5USmV3WnhFemE5SWVTZjIrbjNTOU9NbkhkWS9JSWxQQmVGT3EyMnJRQjYzWVN2RVAxdnB6VVkvMGdEZTZEekl0ai9pWEgyWGN5SGJUSHZHdk5wSW9scUxtMHlqWnVFVUZBWWxMaWxXQ0ZRTUpGYnJNYjE0QjI1aURVYWVNTWZGMzhvb2tGK1lNWHQ1djg2UGxQdWZ5TExORmtpTVgwb05adExWR2JXaWZ6Sjh5enc0UWZON293NzF3bTNyNnhzTWd2SW5PeGZPZ2cwV3dST3hFUXU5R21sdUxaSFRGdHg3Q0RGQTZpdlFRWGwzdkFGbXdsay9VRHRtS3M2RnRWMDREWmFKUHIrWXZMNFZ1S2t5R3FrWGIxL0ZIV3JHWmcwTE1FT2lNNDR4MldqUzl0UGR6cWVqaVV3MEpkMmZBZlhVMFlOQnZIb0tjakx5d1g5UC8zdGxQYWsxUzhmTURZNlJPUzhuZFJvZy9pRjluWFd3N3FXd09vcUpBc29DUEZ6ZithWjRSVFdVZ0luNTJaNkpjMEc4QmZ1dXYxaEtBRkh3aWxsMExCUnJzTDN1d3Y2YTRMTENPUitqVXAyNngzVTlrRnRNZWNKWGdlaDRoRHU4TmFXUVIydkI5cUdza0FkNG0zbXQrR0d6ckJsdjNGZy9aZTRvWms4S0ZacHUyNERYQkQvVFpzZEQwUlJleUhiK0E2Q1Q5UVY1ZDFoekR1TmxvZ1JtcEVnTjRndDlCMGxQUFhOS1pEZUJzWHhjUkdqTCtQczlFSFNtcnRnd2s5S1ZHdkFqMHA4UEVzMmxXVlZRVHdranZvQnZvM2N2STV3TDlVRG9HTDQyUXhaOXBva2RLSFlOdTdIVTFubU1pejBvV1UxSkMxdzU4cFU5UVlBYnkrR1F6U0gxenlVSktEYTladk1NWUllNUF1L1JXV0NGTXJnZzNzSFRpV0hxMDdQMXcyUWQxWkpNNk1aL1pZQW1abE5QYjZLengyWXhXaU1Oa2FvZE1VQlpnSmV2K1UwQ1ZtOTNjMEgvTlZYTDRjWllXUG1yb2FvUGM0djVTQ2huaWdFT2N3dXh4M2JWTkpnVlJ0NlR6K25yQ0tlVE9CbitnZVJiKzA1RGlvempPSTd6Zm44cXU4MXZidU8xM21LLzgycWl3U25vb01BZHpibHpMWHhpaXZRYXRWdzdHY3Z6RkpaQTQrYnR5OGZjWmFDdU8rVjBod2tYbUZVVS9SOW5KQmhmY0N4NGM3SXU3TEtBSkhrR0xIcVN0KzIxM1BmSWdkdFpwTFErZGR3RExFaUM4NVU5OEhXaFVlZTlMS2xja2o1aWhZMktlajZ3Q1FqNGNSVS9LL0srUktKNW9UT2xpQVlFWkRFdStMd1F4OUdGS2pIZ0pkN0EyQ3VLOGhCWHljRmxadktidWxzTzlIS0R4VWtUSUl1MkFIbkt6T0EyUi9lWmVLSE94Vk0zUDA5eEl6Y1ZyZlZmRHBFY0Fwak1zRGhaMFRacFQxZ0xITTJvREgyOFdtVDYyTEg0UGNQYkJ1WkpieDh2cGVBbkR4Nm1wdGxwd2wxMHBid1QySUhmMGl5cm9xMDBvb1ZRVm1rSENwSDhWcGRyY2pPZmtDMnVNWW0xVkFMNzVTQVlFT1A0LzlvWllHWE5RWEtieTdRSHVwV2VJTXlsSmhXVFk2b0RlQ0VtWmIwc0JmamxndUZLWWVUSVhrZ0FIN0g5emJ2VGxrNnQ4UXJlTG5tMlp4ZHV5NDQ3WU0zSDlJNHZMUkh5dEpwWlhtaTNKQ0JxNTBXSjBaM1Z1SUhSWXBUc2FkZi82RnNsbnp3MndPSkt0Z2d0Vk5ORlV0SXUvcm1DMGRZZHQvMHFjUTdPQUlkbURNWVZoNzRwMUNOcVFsVXhEWkMwK2hyTFVwU0RhVzFHMTBnTm5SM3VPZDQ1d3dBZVZaaWh5YTU3bUhRWmUwcjNjbnhkM1FwV21jcW55OHpwZjhNUWxIS3pIYnpWeHFpL0JvMXJiSDMvWFhOall2WFF5ZExOZ1E4V3pSR1ZCdHY4MDVuTndlb2QweVE0eHRlalNYTDdRbXhkZ2tmSUtCQkkzODRoSzgrZVN3blRhaFkwUDh5bk1TeTMvQWV5QUIwM3pFMkowSGhuVmVmTXJtMmNIdmlpa3puSEJ2Wk1URUtJVGhoQk55MDRlTmhZcnU5Z1QyTkNCOFN1QW5veldpNXc2aDVLUktQOFp0aytITm5NN1dQT1VESXByL3BPWENuUzRPNWd2dXdvOUM4eWJDS2JiUkRNUWVaYmRZM3dvMGFiTEErTEFjTnEySExlcDJhaEZmclZUdG1jaDVJNy9FM2d5Y1dpcklXWnBYcDgyWUIyNkJTR2d1N2EzT3dSaG05elUxcUc4YjdRdkVycmNQdTB4OHhuemNsc1pMdXBTaWhCOHgxODBqajFpU2RkVjh6ODNrR0Q2VDdvOC9iQ1l5R0w4Mys5QVRMa1pLVlB6ZXBQa1RxSHBOTVFjOEJONkxRb2VvN2Fyb1g4dUpWSkF0bCtRT3BDZ3lpcE83c0Q5L3JlQVIwRWdwTnIybFJFaGo0c2w1b2Y4b2pQZXoyQ1pMT2lpcU5PNFRDV25lczFteks5UUVYVUZUenpCMmZGblRzbGxSN0Jtb29OLzZjRFF1TFB2ZlNJY1FOR2xaN3V3U0VKK1FZQU9HdDhjeEFSODFNa1BoRTJSemxFY25DQndiOG51YlJBVGp0QlBRcWlXNlIrSHZ5NjVsSnBha0JvTXViMmhjT3NhSjlmTUpkbCt2ZFZoUFhmQUlWekdlcDBtckJnWDQvNlIxc2JHbVZyMXBIWitmK1grVFFOZEpPc01mdVVyVUN6Vkk5eXJnOEtqUSt0d0JaeUNxQm8weDN0QjlGcU9Lcz0=", + "pin": "111111" + } +] From 5f9fc57e7a9c78dbd4ef735da35dcd3abed83539 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 18:29:31 +0100 Subject: [PATCH 18/25] fix: added nodes to the fixutures folder --- .github/workflows/e2e-test.yml | 9 ++++ cypress/fixtures/nodes.json | 78 ++++++++++++++++++++++++++++++++++ cypress/support/e2e.ts | 2 +- 3 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 cypress/fixtures/nodes.json diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index a4ca4a479..689a65646 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -30,6 +30,9 @@ jobs: - name: Give Permissions to Sphinx Nav Fiber run: pwd && ls && chmod 777 -R relay + - name: Give Permissions to Sphinx Tribes Frontend Cypress + run: chmod 777 -R cypress + - name: Give Permissions to Stack working-directory: ./stack run: | @@ -59,6 +62,12 @@ jobs: source: "stack/relay/NODES.json" target: "relay/nodes.json" + - name: Copy Node.json 2 + uses: canastro/copy-file-action@master + with: + source: "stack/relay/NODES.json" + target: "cypress/fixtures/nodes.json" + - name: View relay nodes run: cat relay/nodes.json diff --git a/cypress/fixtures/nodes.json b/cypress/fixtures/nodes.json new file mode 100644 index 000000000..39dfcdea9 --- /dev/null +++ b/cypress/fixtures/nodes.json @@ -0,0 +1,78 @@ +[ + { + "alias": "alice", + "pubkey": "03a394d0ebf0d003124ab130c6b12b8b990a50a30a464354800a51981ba745bb07", + "ip": "http://alice.sphinx:3001", + "external_ip": "http://localhost:3001", + "authToken": "N4IsKsD5YqIvgYbUWXzp", + "transportToken": "MIIBCgKCAQEA0+Gfk/qD4NqyIBnT3spJIvRLzsLhgtkigDslnsyg1g6+mXtonHZD\nsh+TOXvIOTReJI/k+JvlX/Kw8rbBGkwgpf7XhcUcK8xORN8gq67z7BxqxyjqTyE3\nP4ICK+ih9/HroyZaB8y60uDTR02cVFC49YO+lfK/Rork+3LOUgn6Mr7vkpWLKl4r\nNMFVlwZDVpDfA0tK028Z3b+68z25ERYQIHweLnqc5XrD0rADdLVXFnJyFhDKKYM1\nvtRHezNU/yfhkheFuG3Yw8nVZkuJj1h7rGy8ZrLaIGYJ2RBCOVLFqqFrR7KbpyJd\nGt4Gl0WnZllFBreYZTUPtx7RQwfbe1TJIQIDAQAB", + "contact_key": "MIIBCgKCAQEA1zRRFrfkxa5fMQfyFvk8W1IowaqlPPH3CEhZi73WWnOEMvLwAoMDb+MZyUUxx4tlS7Bs4rVGmNODzQXR6/jRqXuGVlbRQedXI3BhJrrFhKNxb85dRjWCGG121MSBCouH/vwmOMYwzT4jzBaBuGABkT7GnmqFw5BvFrlIxlqJR4/qWm0ivHIRe728JxveWKwMPj1Lzi1RQ0O7+p894pmj5HhrnTLQMtxTg64lII2eQJRGYWIGLprpYEJay1ow/7kVLbyW2B7KFGuKwSTp/9Bn93XxNnvI10Ny+d6YePc5O7phLxY+Mxauys2F9/HCOeBglaXZFSMwCWQpyqTLJBrdnQIDAQAB", + "privkey": "MIIEpQIBAAKCAQEA1zRRFrfkxa5fMQfyFvk8W1IowaqlPPH3CEhZi73WWnOEMvLwAoMDb+MZyUUxx4tlS7Bs4rVGmNODzQXR6/jRqXuGVlbRQedXI3BhJrrFhKNxb85dRjWCGG121MSBCouH/vwmOMYwzT4jzBaBuGABkT7GnmqFw5BvFrlIxlqJR4/qWm0ivHIRe728JxveWKwMPj1Lzi1RQ0O7+p894pmj5HhrnTLQMtxTg64lII2eQJRGYWIGLprpYEJay1ow/7kVLbyW2B7KFGuKwSTp/9Bn93XxNnvI10Ny+d6YePc5O7phLxY+Mxauys2F9/HCOeBglaXZFSMwCWQpyqTLJBrdnQIDAQABAoIBAANPWq/uxCYGOJCYfrC7xKHi8Z2I8mGtlw8ZjccIdHOPs0jVU7u2KCdgZtUhq1JWYoh3fjU+dIeFOVG99Syb9x2UOMy7KRzKYhy5bcUauk7/9I6zrduWlxmpFVrQauuumbjiR/Q3mCiP/Bz3e6dKUrvZK1TkbopDfnHrB6OFYPcoyEaYu93IFtFEQ1fOpDMS2/Fn48ATwSRaCMCLlp1funaFwhi2e9xVmivRxSVwQX8y703fjMt+Bl3Hv2rsmgasm/E4Ft9kUB8d3IfHl8x5GG0GGJ1kMZ3edN2vmBDOj8qF00L+pqYi1zRo5LHMoDmKcUtDuUY35L/zAWUF9pQ53gECgYEA+HHO5I3ozr8Z9AQBAS8XNJ9Uwvt3L7Qk26oWTcbqfudxWQK4lmCStt2Mlg+/B5xiwI0W4sIfIMtILDd+Es+gkXnQa2O2JOl4zuvjnrfkxiSVbh4/DEZQmyW5I+wBfLyYsYg9RsXNLizJkE50FcsTg3VDdYV0LuvIU/deDMPQn5UCgYEA3b+6D9QigWBtySKZ2KnSC1zrSdjutdl9EnQBBjaEhOy3rWeJUXyVKoKXJ6XIw3pu2vUXqscyKyvOMfZlBPmV0XXyPd9IQsXfhZMxJa1H2SiV7+xZbtYCZwfWycg6qe97pUjmxXMBCO9Cqc26HKT6372WD8Q2YKXMQYAjSgK3Y+kCgYEAkZAsxiCXLLsu+5d09zqeAAjyYqNvO5XymnlXRA6tydjUwnAjsoe2rkm0Wx+yr0TjXynLJOTT1CUGjlGdHmxkCZgzkxgC2jGoxKPU42OfOLCqlLBIBGsWQzCg/vkCDhF57VqDfHncM5euKUyuGy62qikEc1DTt8IRx5CBnD0GeNkCgYEAstof/QJRrl4TToYs5hbahjW0xMRGjL/VZBvSc6tnKTswTplSpTnBqh7YQa8yhY/rd4j1RNYTPcTAM4YTJncUAnSKJKNByjGEvlzg6A2iBKH6hR/xZjcQiv9Em013G3dAGCj7kMfYTteDwidfdBkRC4MDVMYiQcOYQkBStjAIsHkCgYEAwgEnj/Le6PY1h7KX7dArND4iF+XHiM/X9pyzrvbnkJ5CsyM0WjiKOgoLAvCIjCWGVtc5eZ6Gchs0QzlYiP85ypQ+QEPVYCcFC50AlomJWPYPOQNbo/Gppdiz0XuHGYD5++SDGjiEVk66vr2XNsfH/rsV+2ku+vel5sKDq4Ty5C8=", + "exported_keys": "a2V5czo6QXdHd1NvZldPYUZVLzlvaG5SZVh4YWUzMlpvMWEyUTZtQ0p0YmRUclExRkpPSVhxZmtFZVR1dnlHdkVtbDJudmk5SzlQMWkvUVdLNkdMLzk3YWZyMHEvcERiSEVyNnVWTWZ5MTAzVUxTM1JPQmNmWjlaTERsTjZaNTVpTnBxTGZENHlOa0NhaStSNkNXczZMMit6VU9aN3A4a3FybHJmSTVFbFhkN3dpR29KS1JqM2RYeEFhQjdYM3d3RXhOZGN2WkdkdDQwUE9MSGRXYkx3blI3dENpMUU4b0RpQnd2R3p0cXZHNGtrNXBCd3pEYzdOVmdJVU8yWHAvMkRrWU5mSkEzRHNuRXJmNnFBeENMSEVoUzQvL0l6VGdWeVY0bWxvOVU5SjZ1Y2pJTVB0SWNvT1JEemRFR01tc2VWSjZXRWhOYXRvZHZMOVlPaHJveGxneWp0bWlsRXBkWVhKTDJQQzl4cnN3TTZvZFN4WU1YeEVSVnNJSjd0ak54ZDUxUXdPaS9GdlJydm93bzRuOVFQSDJWSEJLRHo2VlZRQTdjOGZyaVI4VGRVYWZFdkl4cEFObEU3dmVNUDZPOTIycU5rR21jT1NiUXJkS1pYUVNHY3l1UzhqekRUbEhZbW4valB2T21VNmdoM3N3eXVkNnVaYmV6R0F3UjJqTjVUZDRGTE1iTjBPMFNMNmdzN2haeWlBMThQa2dUb3kzRGdhME5xS2N5d214L3BhV1BSY1MvdWxKd2ZZUEV1N01QeDRBNm5uVW9SWThjL21PWURrVENSNkQyWG03aEZteWNZUUs2VlZvY0FiOUkyOWx2QWMxWm5Zb1JEUzM5RkpRdDBHOTFFNkNOQ0dmRmo3MlpHSitQaUtuc3NZMDZ4NlZHMDhqTERTcmFNenVtYnllT1N2M1E5UndRNnlHMGRvS09KeElORGZ4QnFsRHN2ZkdiSXVXK1E1c0RwN0FHc25oUU5NcWVPK0NiRlNhT3RTVUxYUXlxQmxxS2RyOERFdlBKZTBnNFdoREJQYS9wVGRCeURxWGlPdDQwL2o4L0RTUXJ3K3JvcUhkT3dDdk1RTUFaajRDeWY1R2J4UEFQV3B1MUJDQ0x0czZvSy8zMjcwSGJZMUt2dEZ5M2d6TXlrK1ppa3BSWnBEcFdPMVhqSUFLLy81R1RWT01RREFNbm9hd3p1aXo0d295bHBqREpOazdCQXZIRFBqMnVUVXcxNUxwUllBV2ZYVDQ4djhuQnZnLzFTQitJU2VYTVJmbHEwZjh2UlNpRThwTWNDeVRJSU9yaFpXWDdTYWNza2dnR203TkZ3YXh2VjBmb3JjTE04THovRWk0UEptZ1VlSGR1U1RKcS8xMlVDbzR1YjBickNuYVF3WnR6b3BKZDdJc2w5WmxZTUZDei80b0l2dXJZbFMrTTVVL2R1ZUVzMjgrOGo5MTQxb0pwRHFDU2FtdGdYU0RSQlkvWmd2UGdvUnpETjlDdDV5Q0M0cGo1K1kzdllZK2NFS1MzMVNtaHduZE96MVZ0cmx0YnFYZkEwM3JoS2poT1dLc01ocWJHTkdWd2VEZ0l5RzJRVHJ4TFA2TVpFMVpsVXBCL2RpYXNicGVWaFlvY1l3eGN1cXBFbmo4MzJ2ZEszcTlGWlFUaUU1UnE0LzQwd0NmUFJUYmJVZTRvNkg2eCtpV3ZWbjZnazZGdlBxUDQ2Z3JSaURSY1hJMFBEcUtwclgxd013c1ljQW91dFoyMFUrMmFxVTgxS3JUVUc5cnN5MnAwRUhjU2VRaXRONVBrZy9tMGF4bGFjWnk3aTVSeDUxdDFzWjZSSmRWdlhKTHg0T0UyL2tsdHlGTkg1UjVYNU1jUExveVFQTFdBQ1daZjFoNUM3OVY4ajV0M2lnUm1ZR3FRM293TGxFSDJveWFvYVZrc2dMTEs3bHRzVHJzVFpJV2NyYVNZbWNuWjVlYmhJRXc3L0NoRUJOZzA4VlpwV0VzTlhxb0hULzNtd25Ga3pXYmI1UkNSM3FhUFdUTzFZTVptVlBjaHFHRXo3YXBCSHdxUlNqV0t4MHR2T3pwaVA3ZnFDUm1nZWNzT3lHQS9zRjNwZG1wV2E5Ry85bWZpZWpsdFJrZlRDbUxiUkdyWEJiL2JXZUNoK051aWJHdkZCUFJMS0l1Q0xtUk9pcEZYSEorclJhRUFNL05ZY3Bnd2U0bWJ0MlBySUpDVmhaeG4zZzE5ZWJwYU1NZ0hZVXZRWUFDclQ1Z0dlK0tsVGpYbDJUU2dQNmY1SFhYWEMrbUV5ZlBia1ZHMjZDelFJYzlLREpZV3owSW4xNlVFSll4eFoxNENVc3kzSTVrN0FCRFpHdDgySThIQmRDQUpQUkVTYTBDekdHRU81RktDQmxrU2E4YUJtTDFONkhxODZnN2FJeWl4Z1lOdENycW9YSHh6M2tSM3MwY0FTcGZFQlNGekJNU2x1RzMrcHloTGRiWi9Yd1hCN3ZLWWhNWDZVS0w2M2pUWGF0QndCZ3pxdnNGa1p1aXJVY3MweGJGelpHc011VWVzSWF5Vy9EQXZDY1poWFJwV3RxV2dhYXFzWkxHMkphVllzUGhhaXFVYnBXSUVHaEdFRGpxV2psQXBwWis0K2xoTzVoYjFZcThPZUVDOEpDUElzQ2k4VEEyV3dNMWtndmtIcHFGQXlzR1d2ZmE1aWd4d3ZIVHRWSVpHd1BmSGJDZjJrcXdPcDFodGRGS2F2R2dOeUpuWEVpU3VBczlZMmx3ZTZIb0I0ZkNRajZZQXRHOFdrNkJ5Q045YWlMUE5NMUxjTzRBYzVXc0lqRmV1WnVkSTdwcm5TYU5UdEg4S3lxNXZMZnhybGtuVURZb2puZS96TWlKTnRCRmlqVjEvVUo4bnFmYzhTWit5T09DQWVPRXd2T2wzc0pGYVhnYVNDS3JvWktJbVBtL2t6dVhCZHJ1TFczMUJZczlSRTBuem9zUFd5ZHVwRmZ3N2pvOTY1dnpzV09Pai9lTU4yYVpwejEyVWhDN3VCS2dqSmdqT0E2N0wrNTIzTTJIK1RleTVIWTNSQnExdzBNTHBadUswL054ZkxIbHdNbzdYMVYxZUl5L3B0cGtPNUhab0d0U21BczVQS2VEUXF3dVNpWVV6cU5mOU4xUHVkaEtIY3ltTTVMSkdGYVpZSzVZYVB5amJiWENOekZwTWJWc0lmS3hoaTBmSXJXdDQ1c1lPK2ZVN0dkM21BVm9RZitqc0lCRGlmTVJ4WFg2ZGR5dVlZTEhVeGlQUWs1bUx1d29JSjhEeUZUWmpYV2hhQk5ESExnTEphRjRKeU1xczl1VkNDb0hGdVh5ZUFDQzMybU03bCtENTNSZWRNNmxGd2xGTHNyS2hjRnl5L3RDN2N5eWF6SC9GQVh1R1RNazR0a2IvbFBJTkl4RXRMYy91MkNOS2JEcXBIZ2NHR0hiTC9DU3pRYVFGajUwbUVnaFA4MXl3ekNCcTA3Y0hzancvbVNuMEU0U0xUYXVHN2ZOdlp1OGtpckxZKy93cS8xR0t0NkxvSXNBd1hyR2RkQjVCMVY2em14b2xKQ0k4R1JXRG1LY2R5VDdZZ21nSXRINHBTSGJuakRTdDlvRVJubzMycSt6aDdZQURCNUVpZEh0VUtGTXpWUjFMY3dWV1RSUzBaNkM4UlNqdmpvUndiNWRlND0=", + "pin": "111111" + }, + { + "alias": "bob", + "pubkey": "02a38857848aca6b32ebcc3c85d07ee41354988f4f1e0b4e6ccd255eee6ed75b8d", + "ip": "http://bob.sphinx:3002", + "external_ip": "http://localhost:3002", + "authToken": "KGxi+fUsk+6t300DGsgH", + "transportToken": "MIIBCgKCAQEAzZJJHpJDSphEh/beeDIo1z35MFFFjUcFZFUdd63YmfwldO6we88H\nxP5VuluX01KWahjlFqpW7SPvMwOcJ/gZeg/HQVGgowApGrV8rpxGb7Ly8VtNTRa8\nghSbQ2Hg/NOoaQysqpXleR6JkRR2tixy4OeM4pDas2IolV8Z8GET89l4zYdQ2sqJ\nBoDFXW1PJvhJySiur/1Px2x6Yu2lkbwVpCNRH/v/lHhWDcOsxhCBp9JRaXt31vzv\nvOJgD4um+NAVke/yV1TA6ArysMU4Zvedt8Q32jMGhypKJbVPKfjF0/gwJzai2G4n\nHFhEpI7VXiNnw4HzimwIp7ttSWZPQ6LQQwIDAQAB", + "contact_key": "MIIBCgKCAQEAprL1Q8VYvEbbGOEZIO9Of8SijSFSyTtr5Wqvqxw0oIaWdSLi8kL1bLP6pUxXdOOXgZfKEX/APMJcWfCRbYWvrml1vK9XO3qtH5U+lldcgLy4xWeyIlm4yr2FY++UkuUZBQCxrFv99YTDqYAZ0BiN4CtGBKDbAbDm1uDk0ZRAWSMvZWTlkj5156LtW/zkveHHhP5AkqZowrwkfng5X4Qhny1YEUgiMiecvkOcNokKygXd1kD1QM0bUNhtxomOuip/bXjJEN7/q7PHMXYTV2gy7oP9RqCEncAm75DLJUKkn+ERhV8XW/o3W17M4OPAyOKquu0PJblHt9TMa+DfJa8ZqQIDAQAB", + "privkey": "MIIEpAIBAAKCAQEAprL1Q8VYvEbbGOEZIO9Of8SijSFSyTtr5Wqvqxw0oIaWdSLi8kL1bLP6pUxXdOOXgZfKEX/APMJcWfCRbYWvrml1vK9XO3qtH5U+lldcgLy4xWeyIlm4yr2FY++UkuUZBQCxrFv99YTDqYAZ0BiN4CtGBKDbAbDm1uDk0ZRAWSMvZWTlkj5156LtW/zkveHHhP5AkqZowrwkfng5X4Qhny1YEUgiMiecvkOcNokKygXd1kD1QM0bUNhtxomOuip/bXjJEN7/q7PHMXYTV2gy7oP9RqCEncAm75DLJUKkn+ERhV8XW/o3W17M4OPAyOKquu0PJblHt9TMa+DfJa8ZqQIDAQABAoIBACwDpG64dK2Bp+fxx0jC5t8ldCX/XnRzlBGHEcsEL4ETCDb1dyawN0z0WIG8nnrmfOJiyZ/FM2TXjLrSohNg8PoELmobgdTal0t3hIb9mhcDvWWh847OUdR2Jfo1D+2ZP/nqLP9taqig3WirwiUH1q4RvvMJ5cmUg97IkqIjmrnt+y2D9SLc9kPA8f3Eq87a7TQBjACzznMQEpW3IuOjwufvonjp7on1iVB999H0wNMgRBUSbZOQUKkBAEwXR30s0Q2ML2RmOymJ1Z/EYS54WeghwVKAFTNzQt6USvKpI7ERi4MEPD99GN7kfMkJA/YBz7kuLXu64N3yDKgw7py+seECgYEA143W0awN25dvXis1Ja0x4YDE9IX5HBbVPqmqkVLSOESygpLq6TMrxOZwuGB89tVkY3hYpEoi4Rd7aZc7hcOj806TXcV2Z0ADm8oYYDMsey+E7wNjSFdr58FEa5L4DQIjmbvYzTGelgdl4Wu+TBrpEw6uw/kyRM95QsU1e1jGBGcCgYEAxfpdKIKfe+K8Sq66lfGycTd9Wb7NgR59mO8NcLy1IOzYpzWC3grgksDfquit8f1fcraTp2RKxYHjzW4J7az2xfX8ix+Iy1D8DAQn1aimHNA4yoBKBalELO1VlRU/umEvBSclfKXICYn7HTP3OUe//NJEHN6G0zLgpclDurTsp28CgYB855wLc3+0N1Q5ZSAu7OVynoOCjf+D31dCMF6+Rxe5s1UdhLTK3PQH7OB0drTy80Rwv1PeH3eGp2zECvZa1Ls0SdvrAnlR6y4sIDdvxzeHSknlljj5um60pLFZBJjoMM0gUFGY1Z/nn/HRZfWndBCLEn8C4GvYo8DIiC4tg4t7EQKBgQCuqbpkkhFYP+o0zUCqJwlyHy2E7vPpVVgjg8vMyX/XY32kz238rYYBkw4Bf7RuyUXbM77CsJXS+ExdIha6TJ2Oev3qU9Dg5zrm8wed1WNwCjgAV/x2UCZoqJ6Xn56QtUrBdg75kF0SJVyZIA6dx3JW/7695Yj3bWyKdy083H/pGwKBgQCJEyihly8HvRnSPYD+tPFmc8QkQB3xZ+0H9G+jlD8dPg3WxDsh4cWKmgjj97TCr/Ufu7ixal28aKda2x6JlNqwng70xnDkA24gdyoHr5/MVS+4yYa28WwZ5n16DLfVX3s4DluS4AiYXsTD5KULTv7q1ZBivvbmzBKn3z+D0zSTPQ==", + "exported_keys": "a2V5czo6QXdGdDdtbnRXVVJYMDcyQkRtZUo5VWdVZlBmdEJzSDNSTGU2cGZaSVpPNTN1dGh6QWFiaUU2MWFQUUNaNC9zeWFiWC9CaTBDVUQ1MmtBNFdiODcweTZRclZWb3FXSjNQdkN4UW1vcFBEMDhlMWdYQk03L3Jod3Z2clEyUm9ldFczWXNtTjJkYW8rRVFDNk9iMm5PUGpNYWdLSFN4Z0cyZ3cvTDhHd2pHT1N6S20wbnJ5MS9FNktiVHUrM2xZNXZJdWxjM2NUTzg1cmwxZnZCRTU3aGVrRmNLbnZYd214MjVvbHRLR05VaU5IQ1dFUGFBZ3RVdi9xczdvc2RjQ2d1YzlhMU1OZUErU3lUbllWQlBMQWVnWGpSRkkrM00yaTVUMUVLaE50aUZsMXcwVzhTVXZJZzZRQW1SdDA1NWhib08rZXdmVldpcTNRQW10OXZ5bGFsUnVvdERBaStBWFdOUTFuWTkvK0lsUUppdUZyVHcwNnd4NVJQMzM1SjQ0STUzTklsblpnYTkwVTgxbExqWlZINS9TVUdkenM4N0RlRE93MGlJTHJEQ3JKV1gxaUJsaC9OQWtGVTJKM0pjU2Q0elFxSUNlOFhNYVI3em1oS0g0TUtycTlHSmtHYVdJelNYcVFhTS9jdmlvVE42M0RtRFFXU1Ezbmc2QkhXMkRTQ0szUEJsRnFBaHF1VmExTDBCNnV2bVgxMlRnTWZSN0FqeUtaSVBOVnNVQmlHWFc0aHFycUJDTjNJZDZtQ1lobFBJeWRUOFBSTFliSjJrODd3b1FkZ0Y5UVVwazhEVllkRTZMK0JlUWl6UzhKMXdDTzA5dFhVanJlMURrRHB1V3YrRmgxMkdkcUNNSTJnWXhibHlURUhRUHEyV2lCajhscTVxSG4zSmZTMm96L3dNWXJyZzJqTkNBM29sUVlvRVVTNkd0SmpjbkhMbE5ManFZTFZGR0VSazBVSUZ4cnV1aUh6VXF5RHpjOTlBem5lUU5kVWRpLzJ5c2J0ckZVMVJuUm8vU2w2UGtIdGVOcmlHcWNLSE02WXNtZVB6SjNXbkJBUUxNKzBVcHN5YzVSUjNIZHJBT2ZoeVFHYnRJN1lXWUNReHRGZFd3WFU2aUw1dlEyUW9IREhscW9NSDdReGorTExTbWZQRDluSENuTmV1R3ZOMWttanpFQTRLNTY3NTVlcHVvWlRVWVJGUmdOOVUwYWY0NWJkanRTWGRIc3BvRWpoaVZBUzNBQVI2RC9rcmRRcGE0VkZQM2l4MUlqQTlHNzNmK3E4Y2hVcXNCZ1FiWWpJT1dKVVZsY1haQTBpZmcwckx0Y3NLU1NCcWV2MnYrT0VUa0djaW95Zy82R2xFZHViU1hNRzlpUjdvSE5qd043a2k5dVprODRPUVZYU1haeFdpMEpGcVZxNHhSMmFMWWgxWG01VWI0TXp2OTA1WFFDNmlzWG1JL1piZ05TdTZGbUlCM2t2T1g0QVlnWnpBYWJVd3kvQkVMMVprMDdzSzNxNGpOZEViZWNqTHYwMk9MMmV2VkMvWVBKOHZ0MExNb2FiT2FvVkptZ0k2bCtYc21Bem5ZOWZHbWFIVS9mWEFMWFVlRWNOaFZvdEdEd09sYTBoRzBqdXEyU1l3OVNDN085YzJYMXZPS3R6S0NYakorYzBCVmRmdVF2N3ZaTm5jaHBsc2d5UG9CTklJcyszQXB3eS8wYXZkYVI0d2xTcUMwS3kyMFdkM1RRL1ZRVTNLLzNETWVQT0FydktpaG50N3RjV29lbGhLaW01QlBJOWxITEVhYmRVV0ZoeW1xMFZBVUN2Y1RGYVNmTEFuR1Bwdk5sKy9QYnI4ODZqVjJLcVNhZ1ZOU29vWGpweXdGaEEwRUF6cUhDY2F1ZXJ3d2FPaDJnSTlCczdYMkIyeFdKZnAvVXo1a1EvVnJjUlBoQ0dYaXgrR1MwN0ZZdjVkNzBObFYrK2ZMYVJPU214OTBaWmFQR200dG5EYmtBT1p2V1Eyc05DRng5M0xsMVQ4djlMaHF5OWsvL0E4dXBTVklDNVhHTXZrNVJIK3JuNDQvZ2RtYXVTbW1uRU9wTUJSVm9pZ0pNTzdZRml5QWFVZUxFN1Vjc0IrTWs4c0VyU3ZDeHZ6bjVhdm0rQS9lcjF5dzRGdzQveHpXNm5LdDFaQnRkZ1FVbWFkemZzVXRNY0RvcEVCeEtlRTVxR1gxb25tQzdXazZYdzc1OHFFcTFXcldWUzBIQlN5cG40d1BCbjBJWFIvQ0NRV1BrcVZQNGZhZ1ZCcmVzbVFkdEpEUWpjVXpIOHhieUg2ZGIwM1ROU1VZbUhUR3NnYlpMYkNtcTdsWFNuQXJHRlcxUUxSem5hZmZNcEJFQU5pZ040a3lqY244ZUlPVkFwdThjVzFhaGk5bzRhd0NKdmJDUEtTSWdDcE9iVGYySWltMHRtRjhnbkdvWDdEYTAxRnF2VHhsMGNOb29DejEwWE9OMUp1S0JFYnpTMisxaFpFL0l0WUgyejcwTzVjemNGM0xHaFlWcUZCQXVLdnlEVXZtRHZzdHF6NWZrWWNHV2dUV3l1a2Z1cDF2UEZIUG1lNks4Q1o3NU9hOUNoUmZsUXVEdUJvdEo4KzRMc2U0ejVMbkJpOExwcUpybHFUS2pRUkpYTGFPN3FOcERKZU90b2R5bXF1RFdHL1pSeUZieitsOHJKRWJUSDJERnhiN1plVXIrZmJOYVVBbjFUM2oxYXgrcUlVcGN6OXNqYXB3akxHdmNGTXF2K3NXdlplblExUUJ3aFZBUWVSUGlrb1NTdUtjTFcxK1lNMTVTN0Y4WHhYaEVrV2YyNGc2NTlDRGNKTE1tMjN0OFdXeU9qMHpBUmZPc2pRYWpCbEZTaGlXV3U4c0ZiN00zaGJ5aXNBMzFrUU9MUUtxbjdkWjZuN0t4NUkxVVNNblhoUXI2QzRSTVVvOHZsdGxyd0N0aFN2SFk2ZTM0bEt1K25zdHZobzhrZ2lSdnZOQWFySUl5aXVRQWw3Qi9SZ0RGTDB5dWh6Vm5NQ1BSZ09Oc1ovZE0rV1U4QU10QzNhWTZJQi9WM09hb3d0V0tBbUhHSklGbjdWSm5YbURwb1JJK25LdUk0dTUxYXRjUTVsbDMwZzRjRHZvamhlQzR3MGlNdS9tN3RBNE12V2NyekRiK213RzZZaGs4WDlJeWJ4ZnlIZERrdlVWZlVXVUk2TU9NYmZ3MXVmUityQVVSV2pmVlpMYWNxZFJsanNCK09NYzdIbXR2ZkdkNXdSL0F5S2tGS3B0dlM0b0V5bzh4MklCRW5RUW1YTHZHeFNLclczWDFJcTN1UnBRL053V2YzUjJ6K1RNVDVZWTFWaWhSaWswQ2RDMFdaT0hkV3NMOERmQ1F3M3JsV3F2Tk1vN3JiVTNwVzJJNlhPOTRKdTVvaHVQd0xwV1ZIcFVUV1J2bnlCQ0xEcUtpdkRBWnJiRko4NHA0WUlPQUYyYnZIblM0SXJZdE96eFBhRUN2cVRJQ2lBSWVzUi9hR293OHlyNmF1WU9NWWlVYzhkcjFKUndhZGs2ZlA2b0M1R1R3KzFNbnUrVWZDRkVkcEhwZkQ0bURiRElGcWxhcytrM0YvTGZEejBRYTZnSVpucCtTRFNnOXdZM1d5RDVTVmRaWnhLaytUUkNxSGEwQkRsc0tZNllBaz0=", + "pin": "111111" + }, + { + "alias": "carol", + "pubkey": "0364c05cbcbb9612036cc66297445a88bcfc21941fd816e17a56b54b0b52ff02b9", + "ip": "http://carol.sphinx:3003", + "external_ip": "http://localhost:3003", + "authToken": "X4BG0sDvdSSP6RlF08DV", + "transportToken": "MIIBCgKCAQEAwHJUGBDTzx7wzGGK+ZQaxWxYgJxhnmghlRE31hh4pXUlKhRtVLn/\nnCWo+DKsDCtCdhNPvVFHcenZxmTjNCsXq1bwkq8zprcFD7q9jy1/0jM8v5pPFdn8\nVrHYbl4+AC8ldNwLm++fjdNyqqsNvc70THdwXSSbSmycOLaFR4AS0PmsS5+bZ0eB\nmEZnWhmWFe4ySqgVA2NyrbcRyfeTmINRcG3VSHOvy/QCIkm9aydnxt8Z5LcMoKCh\neUP+XznQuuvt0FiZfFZib+6RrVOs9F+SBJmJqRsZghAktSCpCRuUuCzPM9VFEdnM\n9sPUVU3ENSpnVBa95Up0ZL77AA7JMul9zQIDAQAB", + "contact_key": "MIIBCgKCAQEAyV0VMXwmVwUCoC9f+GJi9KCTWs4z9Mfty5wuplBNTDG883aRp5p9CMkk/DJBFBfo22UYDLB5T8Bjob8gbtsIBJEBaUstZAA1Bw9KIzNKbhHT/l3D6bwE/aZEaeYujN0I8OGYCNbZjFv5O7cCgi0m4KcbCIsDgas/lDJYQ41BH1AqOtJ98HxddVibQLp7abe7C2TCxf2lWtWATijMma7U0LAupGrQ4qOpPtHQcHK/EycCTxX1Z3V5i6Sp0sPgSir+R/JqNEah3kU2UbaEc+RVcFxAbnzgkSIsZhiBkg92iWMYiiLah2zFd4sMtRF9EOU/SfKHOAaR3US+V7HZmQWgeQIDAQAB", + "privkey": "MIIEpAIBAAKCAQEAyV0VMXwmVwUCoC9f+GJi9KCTWs4z9Mfty5wuplBNTDG883aRp5p9CMkk/DJBFBfo22UYDLB5T8Bjob8gbtsIBJEBaUstZAA1Bw9KIzNKbhHT/l3D6bwE/aZEaeYujN0I8OGYCNbZjFv5O7cCgi0m4KcbCIsDgas/lDJYQ41BH1AqOtJ98HxddVibQLp7abe7C2TCxf2lWtWATijMma7U0LAupGrQ4qOpPtHQcHK/EycCTxX1Z3V5i6Sp0sPgSir+R/JqNEah3kU2UbaEc+RVcFxAbnzgkSIsZhiBkg92iWMYiiLah2zFd4sMtRF9EOU/SfKHOAaR3US+V7HZmQWgeQIDAQABAoIBACDprgUgncOrdfpow+79Zd9GP8+f1K4135BgPt/AUGIb3x6MStJyVe2RsxHlxO1b2xvBMmUgkzON5rsRWmPEOVNFwE1NlGW8Au7ceOm4AHptP5FcEiGqMcaj3prQnNs5ZbS5qvgG5hgjEGHKUAanCqu9pJWI41HWg9XdRMAF3pcXYKWvxwhYZ0I9NLETFfHO2KRh81ZLGdMAIQEPC7HDJaM2rzpMPtUZntncuSk1vezYipj04Czf2pCVlpYmMoZhrYkN0W3timknRtwY1n2zKbqbIAQyGRGl47rk1e76nYm4AyGdM9bEeaXYmx8nKu9dcXuQG7VClPuzBHekZ3d/24ECgYEA/ThfmROBY961ITgYGYC5NvMlawHx8ICIi5HoA2j0ZxZeLnGbuKun62Eb3mQ7t2MxpY7of3NNnAf40+SUnvsb2Ct8z/VKujhlf4nDwLv834Yzd/qbYs1OXBsbpC0rdpk5HH3b6A+OFhagLJEfsOI7+ME8BIHdpbimzf2/59X2oC0CgYEAy5L582P44aB5P/QuvMxkjTHN+bIchzRNoALM0A3ExF/5/wcindKZYHu8wYkWKpzgWFFNK7suYQp0aT8iPP5HErxnNEDrpVZMsMYLLLcZkLv3lc3hLJyoqv4d66RaC7AsvIjsYpmz2WJko4os0xmfH1EKE7HNrCLlcGIlNDOvJP0CgYEAyVlaKs5nxJICVTfVcfH5VMhiqIQTbbnG2bRbWNrL/Gy81xFfUaitDW1aS6xID7rAb3UDStTUkY2FPngz9XaW3X028eWKVikiDBfvoAHbQaHkqzKK/DVkabjkcde5B8UutIkfo5c61DWJh+ad3HkIVvTQVIUvSedaO9HaFu77/MECgYAbSDxFOR2up0H4pzHoTYAgSA9xqkQWfpT0n8txCpdXNgGcAwnJmuLBQnP+f++/kDykuWidNr21daA6RqLBB9bglO1D3Ht4MgOfITt4J6W+duJsaiYGQ4x7Ngkufl0u+dJVBgigAjdPJ9eS7z6on+NqYAL4trh4nEihchXIVDDhxQKBgQCwOvhI1ovPHe7WwiPFfPNTyop6PUw+Y5pvM/wPSOhzBpnmYcxiQjQd61ZrzghHp1IbFCPfvPeSnfXQLfBfVUEdOQEHedOpstKKeproyPbfEMlo1wMOMJWt23+06sazq0y183Z55L7JvgiOqIZItGsxe/waSNiinrHI1txbY+2mdQ==", + "exported_keys": "a2V5czo6QXdHd3VxMU96WVVmYVFEU1VLTnhLL0RqcUh6ZTUzSytNckUwTnFyQ1pRb2kvVUd3NXdJak02UDdPeHBMQVB3SnZMTy9IZ2dpRHNMQ1czbFJ4OVNQb21FU3dibjZmMmlqc0FiZ2w3Nzc0QjZMazRXL2EzQkZzQ0RSVDNSLzhoVzFrYy9vTVVvaHAySGNvUXJnNXRaTUdNdUJSUzk0YlJpdW84RExMUTVFZTIvTVFTbS9xWjNZT1YrcDVPL3VYTFU4OGlVTWdCb3V2MWVyb3Y0enFBc1JqRVlXeUFzRGVOMjdwTUUwaU1VT1BYeDVVQStHWFlpcTVMOHYrUDlCdThnSVpiMjA5V2JJVnh2RW9zZzZrWnp1V0xQWCtCS0ZIQjVCenlHbWhsWEwxVDN5Wmt3YkdyRzBTa1RQa0NHTFAwMHBUelBtUkhRR0dsVFo2aWxsaVY2YTFoazlXWU9kT0lRQnI3eXduN2o4OGlGNUJxWmthNE41WCsrbVBWQ29jSVFBWnF6cTQyUjZtN3dUZTFQRUNxVEFoQnMvSjlvUEYzOXZBdkVaOFFCWU05OU9HMVdoSllmR1ROaWhIWnMvbU92MFZZbFV6YS9aMFJucDNlVHB1dkFSMnppNWlTM0txKzhnc3hneE9tRmhLYWthU1grazBXOVluT3RMUGVKcXkyZ05yZlZaQTQvZXJhT0FwZGlqMmtrSldRc2xpV0NZM3ZnekNnNWxnZFd1aVJvclJralgzMTYxL2R1MVlQSVJXbjlpUFRvd2lyeC9SVUJZK1U5ZmQyOWJpNVhTdDk2SVlBSXExRm85cGc5V1B2eGN2aUJJYTU4SWNIU0drdk1WRHBTSHhVT2M1RnU4QXdnSUpoTTJjR2E5OGpmc1VQWHF2MUxkMjJVTUJVWlIzRkpkVzZGOUVGS2ZjQ28weGkybnh1OFY0Q0tKUkNrQnhTU2FIWTVNRURvd2RKVlFWWGVtZlpXbVBEYnhUNDhCTjhack9LYUVZdDVoZE5YZ1A2ODMyc1A0SVJJTXVFZWVvNThvb2ZCaEZFN3k2bVJUTDloUlBJd0dPSHp4SDFiUWxnR0pVRTlrZGk4dURKTVRUbjJBejcrK0dFWlNKR2JHdWtsQTJBdmNMaEZCREc2ZzlJWXUwMVhWVjlEUE0vWGdxbTJpV0JHRE9ZWkdIblZwVjE4Wm5PcmVPV1lpQVFsQWhUbXc1dUxLRVJpVDFqbEx2endKcjErbTFMWjY3OUNpVzJ3bWVja2cyUTVjUnFBTitzNm0wM1E1UzlHZnhnZ0hZQnB0UHdJVHpyUkhQS1RQb0FPSURsY1AyQ2hXQStIbkFkUGtwRUJlbjg0NHh4WEN3Q0k0cFNrRVBSTXZYWmdBamZKY05NbWNlV1lQMExhTFh1Z2N5OWN1OU5wSXZlcWJGOFM0ZjhzT2crVTJncUlQNWh0ZUZ0amtiZ0hYTHRuQmM4Y1FkdXBzRzdwZDR1WFBEU1NWQjBtT0U0N2s2RE5PVXJMRzNFejBFeUF5UDdvampIL1FxcGpYVEJVMmZ4S1M0MUhTc1A4TUlsOGNnOHhjWXk5WVYvK1NXOEhhWkxPOU03cmxMZTJ6MHI4eGhoL1gzMGNOMFZaNU9oeGRwRm55T1Y0TU9oUkUyYU0rZytobGtYb29XaEpWV0RiRWJ2SjhmL2hvWlBmdTZ2Q3pLNzM2VnZMQ1U4WERrVEwzU3QvY2wxVlcrMityZEQrTUpnWlZpUU1UQngyZU5HdHBQdXZjbWhmSjR3Rm15YmlVQ2ppQmFjOUVBako5YVBwSmsyK2loQVlXVUhDQktJMHZ0MXpoT3RqTXkydm5HSGFTTWhSZFNpWXM5VjFodkJKT3VzYmRlcHVNN2FoY1hoS3VzSitnN3ZDSVJJV0FkVlAzN0N2VUxRTU8rR0dYcFUyRGlUcmtvS01NOThuSVYydm9UM0JERFBFRDZJcFFUanpONVdVQ0M1QUJQY3JMdTVwRGw0VUkrTE1pTGxrVTlRdzBuOUdwVHdXR1VxN2p5SEYxSlJiN3ZUSUtJcDBNYzNBRjhCSkQyVmJhc2Y1anpvTVd6TGpYMzFIUmtpZlhtN0Z0VisyZXRCR0E3WG9zcmZXQ1NpTExIZmE0UjRzZDEvSW83UXBsd3dPT1ZFZjRyaEp5R2F4THpMN0Vvb21OaWswOFowQkxIZmVSQXVsRDJaV2RvUmcxakpzNnNRVU95SG93eHhwTkpyMlp0SGlFcjZDNTZkemNDaHhMOGhSb2Z2cUtVZWlLR1VPdDh6NXFTMU9MSkdsNTRNYVEreEVYODRVY2I1RHNLTm9UWWRZZUl0TVFrZ0ZPMzFtbm81NVoxTDdYNjh2UHdpNUFEVVpiYllpNzlxaitLVHVtQ1hCRStjNnc0QU1JSU1FdnF5b2svZExMUFFHYVRzelZuYTk0b3JCMCs1VnFyQllyVVhmdDdEWlFDR0lML2tVVDhBR1liMHdjcy9Hc1g4NHczZWJsSXdrbVVVd1FpL21mK29GaENRWFNqT3cxYU1tMEdQTVFQd3A0SEZKVmJOMDhpQ0JzR2tDcVpSVEZyWE13bnBFWHlQaEo4cmVZZ21NSGdMSDljbEFlYWFxK1k2TGJMc2tadFErRkovVHFCcWRlczlFNWdRalZyK1o4V3RpYm8zVEF0UGRWanVMRUdSbzAzeGZVdHIyb2ZmWGdVd09GMG1DUTJGbTk2NGVTalp3dWpVVHB4OEtUQmlXZWVna1NLcVpES290ZmdURUZxeDkwdms0bGcrVXd0bTc1Uzc2ZzROZ3kyWVF5S2NoeXNTTU55Q2w0TnA1aTIxaUlaZ2pqOFlPM09saWF1SllUUDEyb2pOY0dnbWxWVlhUV3ZMeUFVc2k1QkJUQUhiTUVZcjJCek90ZitMT3BQMGpNZnVBbXh1bU5SVEE1eWFYd0dpWnZ5RnphVXdiLzVBZjlHRnAwYzZrbUt2QWtsVnppajdvaW9peDFma0ZNNW1jSFZqcDROZjNLVExUbGZpR1FuUGw1akRxQmNHRitxVmErSmFrQ2ZEUlNxMVV4dTh5TmIzSzIwdGsvZnBCazV6RGRlOWhSSGFTNHFGeEU1SmkzV3Rsa3VmZU1HdUJlSUVFZjluMWZmWmFYOUlJNUZzQXVWM0RaZnoxZHhzOCtWTFFSZWhyU1BrbkhlU1k0ay9TTHZMOVd1cjhxZi8ybXFLa2J3RzVMaW1Ea2VvRUFxektLOVZDMzU5alV4aGVNWTFENlI3cWlFeENVNUlSVTVtNzcybDlwVEpVOTVEVVpaYUI1anNtVUNNTkNxRDVGSGdhWCtRTXZwTndBa0tYb3lTc01PeWpVbWgwSk9wdjBUNHV0WXM4aGxXTEs1aExDL3FlWXUvZmRZTnJIRGdLSU1NbDAwNGJSa3QrSWg0ZEZvNGp4b3p5L1NVNTNRcncya3p1UjFBUlhLcHV4YURmRUtEUW5BZjkvS01uS01mL050S0x3NzZ2Rzh2cURidnNEeHJTeWFXLzB4dUVrNlVKaW83c1UyUzZtQ3JtMkxtaVZJbmdWV0owUTVGTVJIZUJLMThmbThxeDZFRXlXdkRHeUd2dVZCejRnczhRQ3FaZGprT2R2NFVQcEtwcVJFYk5UZjlURWpuQjBNTkNwVEk0QWIvYVlObE9RMVJKdU04RT0=", + "pin": "111111" + }, + { + "alias": "dave", + "pubkey": "037ec785c6004d512ebaeb0020f81a2bcdb6fccc9539f7b891f704289ebc65a4e3", + "ip": "http://host.docker.internal:3004", + "external_ip": "http://localhost:3004", + "proxy_ip": "http://proxy.sphinx:5050", + "admin_token": "r46bnf8ibrhbb424heba", + "authToken": "t5wp5GNZ4tdqfNGdSMP3", + "transportToken": "MIIBCgKCAQEAxnVZ6sgu482p4rHuOXm8vXt4U96p3LOwowkMSjmPFaML5eGa13TO\nE3cvjsVMLKHahamGCNaiOuKxbmKgvO7wdxqyi+18gt1Ziu4twm94noJ4sfREVjup\ni1vJgExjBOFzFg6w5Ezhgfd1Ft+shXZwstaxHzRypMjk9gw3G41fBGuySdU5gLnz\naxLDRHvLxHiKOIJECu3WTIWqS1lzGADObPoO7JyIKBTSX3hcHr9PMYHJqCNcHa34\nEGCldEsB+qCRrKDvc13bJd5U1peadUthJ3cYdMj+n14iJNkSa8PGu29N+OloOQLo\nQRRqAhBQSJV8F3c5Dn5mlUhBVPXTDdcAmQIDAQAB", + "contact_key": "MIIBCgKCAQEA36o7z8BpTLrUCok3BDlW0/guvwSTaTHLGgE54PcA9MEd4OB1Ez18sM6mPHNdrIWKrZRMRO4b5IqLmIlfWnsk3oougHQcvu5pEmta7wpFPqgPye7WR5u82j6dQG0KNxRkSLiLar1v0SWoJjYffSDrhjTWX96C3j8iW4F5VHY4BuM/ipnnus9A4Wh3JVwoInnxYHdd/jhpbF+QMRsfzdswYRmb6TQ+NLmnoj5C5HwnGQaclPdUmE/JRs1ox/louLZrZ8X45Kv5wR4Zt72yiklwdinXAUOAovcz9oB4Oj2oJnrrB6pM3R4KOew/dFr+0EyKpbPMTeEpXSyAVwtstGaXFwIDAQAB", + "privkey": "MIIEpAIBAAKCAQEA36o7z8BpTLrUCok3BDlW0/guvwSTaTHLGgE54PcA9MEd4OB1Ez18sM6mPHNdrIWKrZRMRO4b5IqLmIlfWnsk3oougHQcvu5pEmta7wpFPqgPye7WR5u82j6dQG0KNxRkSLiLar1v0SWoJjYffSDrhjTWX96C3j8iW4F5VHY4BuM/ipnnus9A4Wh3JVwoInnxYHdd/jhpbF+QMRsfzdswYRmb6TQ+NLmnoj5C5HwnGQaclPdUmE/JRs1ox/louLZrZ8X45Kv5wR4Zt72yiklwdinXAUOAovcz9oB4Oj2oJnrrB6pM3R4KOew/dFr+0EyKpbPMTeEpXSyAVwtstGaXFwIDAQABAoIBAQCWKrRnorbQFmvA+yleA6VhQbMY+tiB+zVyqzoR6aTRr0sBLZJNLa4nA0enNInDCBH4wqWGbht6EO7ypeDIXf9+DmZ0RgD6zBTtkfiGn22oSKv5Fwr1HwHnwbxQgiUmn+FI1eZ87t1BHbhMl3AC0fRvsc/wo/NXhinqJ/6vD4REUlN9TtXo/iM+Gt+jCYaN0DoadvQ2yLdN13KftyFpmZd5ChyMwn6szWLQKBCi0A71ovqSkI0ULG7kUs85WSBjdFt4P2C6HRCJrEE33PgLyxghNYYKNZ+Qxbcfum3Mz/7+CSsquEZi+NsdU3q14wK9mLm+twifnuHM8W9JCIOxv+9RAoGBAPNqtIKcBn1jRc2vQH/+slZAL5zNH8fpINo1n7cuwkvQw5PwBbl5VE/J8O1kAt3xWuu7LA051lPhGjJpL1URPtVhkf0WrroyuN33c6uVCzlurh/MJNTBpsIfS/ZAK8pa3XZz2JwewHgUBun9NjOZH31ug6yMMrxlceuJ+t7pj5QvAoGBAOs6I7AF14vCnPhyncMsnN90fwioCnOpx4OG+51OM/syu1xV+Tj9rLucFIWeKkE0FjTac2YzUyb0NAnMGke18Cdm8kxIafLsIxawgPM5e2vZe2HwkVQ6mipx3PRjKxDEYd2g9x+EkU3yoqcpCznEPldD4OFXsOVYGnwSVGfSfKmZAoGAM+yjLOlTiRPQJBwqSiNur29puK0ZBm/4jhO6Sj0zPTD/R2OAFRyIm6ycNEeNRQLjPj3jG78mtSXjjLVbX24aVTJHDhH0m8uOG+tZRVS53Dp78lR91tSoWeiLL7BopvXTIB1+K29z5yl+gBN/qGoViZA1jm0ptX5+WpxIY5y3AAkCgYBaZQhL36LaiZpK+7jWxTEvyhP7XqBNnIQYbmoJJIFjWjaYIE3a8dlMa4mTY5m3Xu3dt8k7ECQ3RwcscKv0vN0iNzSLzhQxDz/Yu1GCpqdgZb49f/ZJWQ/fmcwgem+VTPKS+gWdrhMs0j5hYKt4soqGfIZR8qH/MKFU5rJbB49ymQKBgQCylg8G1cBTd7InfEu4rj82zC0v3vAGRGWb8pIghRtgIU8jo+c3ZxPlVxPMe9hoVNG5vIBzN6lwLvpkC2osmnhYs25S71k/ADlVpielEymMGO5AaL68IoO/CT3rBJZcIF0Q5lm9GteolWTTet0+Fpasb5InXKdzOHRIFGAEZgAREw==", + "exported_keys": "a2V5czo6QXdGaHU3ZkQ4bTVULzQwMDZ1ODBTVmZBUnFsSkJ0VWRXR3VnRlVFRzdwMmRvN3dwcU93TnE5aXNOL2dkN2d0WVRKeEZ3KzhoVFdnMVRDU0dPVEJabmlDVEQ2N3BJcW1EUTg5Mk8zMGVwRG1yaVpVYllpUXF6ZUJNQzRkcUpxM01TUjRaSGpBM2ZaQ0xKOFFGcjlrUWFZbHI5a3k5WDlpY01Qck9BQW1qR2cvV2EvcmRoVHdqVzF2N0FCREJJV3hVamVSTHhMZVNFY3A3OENFZ1FWZHRhVUUxMmg5ZXZBTDBzRTVVZzhZczdFaWl2eDJOdGFadThjR3dna0dpVlI4VnFFNk5mRDVVR0hLMUxmaGVRN1FrZ1pVVkprUmNQcEFsVkFNUmVzNmFScmpCMUdSdHhNQmVFUjU5Zm05cmR3SkZPNUZVWGpZUjBCMFVMUER5aW1BVkRpWFJwQ0NBd3JnaHArR1pWdXpGVEk1bDZraDgvT1FFRFhnWlE5ek80VTJObktEUFYyYWpEMkZFVU1mZXJYNVhteEJTb281TTN0bU9TZ0JVVTI2dk42aEZiZHgwSUV6aHRWa2JpTXd6eFlhOFdDVndtcHFML0NMNVQ1dmxCSWw3Z2dSalI3RFhNNFJCR2poNU1WdEtoVTd6YWx0SDUzWERKdGdlbDF5ZUpMdW1Zc0VWQS9GQlFPQyswalorQlhQZHBYUUJBS2lsajFxNi8xT3k0eEFiOVZQOEJobHk3aXBzenhHN1puK0JlV0xFQVkrMDAzN2duSEtvZWNBaDFLb3dXQnZEbVRVUEsxU016MklicEROcHhwWHlQMlZsZ0p1dUxEZFZxN3pxSFErOGlyQWxCZkJqbElVY3JXUlozMXhqWkV1QlA4cG5HNXh3OFFUenV5K3hsL0dodXJWV3lyYkVYdkFGUlkzR0E0TnM5K1VqNXRadVdJQy9jNUp5MXJpNmp3aGhjQWhsYzRDN3BZYzdZY0REUWJCbGpXeWpsWGVPbzh0bjZTa3Z3elNKa3Q3V0hZSmpNZVdVVDJUbk5BUCtKcnFqY2JvcHROREwvTWdxTFFRWm5NR0pTc3pZVGthZ1NzYyt0cE53blFzNzZiTlEyTG8wZ2FvbWNOVzc0QWhZUUFOclRlaVYwV2hveDdXazQyRlh3T0M2ODR1Z0l5SGRzVWRDOXFJb3hacDAxc1hHajFUTmlEWDRHSm9keW1Ma010OXlqOC9xeStkWUwrOG53V2d1aStya2NzNjZrOG9SUmt3cW9ReVhBYjEvNVB3d2UzQld2dzFFZTZSQThkdVlnKzJhZ0NYaGZrRDh1Ulkva0tnR3RjOEhvcmkvTnRwb1lNSmcvOExWSHl4OGtTYjFUb2hQQkFIeTF6YTRuSFBjY3JkQXJkWDdYVmkyQWZJb0U4cS9iSnRNREdxY0NPSi9GUm1SSzcwV3ZMbjlOcTNXNnFDeXVmOEhQNkRRSUdZdXhSUkFUaEs0TU50aGl5MFc1Q1V1eDdGT2M1WnVJait3S0lYSzJVVUNGRXp0VWtDZnE0ZnBCOEdUOVUzZ0Z6dndxNmdNNzU4c2puUG04VHQrL2VtTHExWUJmUCsyY1RxWDF5LzZKNjY0OVBMYmRuNzZUMDBxc2J1SHNXWTgvTG5IamlxdWhlZzhXc0tRTDc1a3Nxb1RyWDIwN1o0OUU3TllLY2dMaDhGaThuT3EvdVQ4Y0hhV0szbnUvVnFUYklWNE9TRWV6cGtoaDdDQ1NCL3dmTDRJMU0vdG1WSmNLNkJCWWFBQ3dpUHJta2d5RHUzYnVDRE1Kc3kwcTAzbU9XOG5JM0JWSWRwZEJ5TDdXTWV1dlJUNGZWWVVzZW1MQjhqbXVYVTNYdnN6VmNITW5nV2t3Qy9vRmFWeGg1dFQ1SUR0TmRYaytObmVONlZMZEN5aHVRZmVUMlFJVVk5TnlLTlRPUSt5ci9rWkJXOUxyT2ErZlRwQVR1R2lKMWV2eWY5YlVXMVNnZThyakVTSkhObXNRZllYQ05pY1psd3Ixb3Y5eWM2bmV2Uk5vbW5CNUgzMkVPam9Nb3hGNUNuUXgrU29zUENQSXNqMDdmOEVIWnBLZ0ZobjNVdVNSNmJXbXh1eEhEbTRwRVdieFoxOU4xOHVjQkQ1dUZHQndpRjBRU2ZQeDFkeTZGTEZDU2hwK0FoU2JGQ3ZBdjQ5R0J0N3B6Q3NPc2MyZE9jK3lIVmRJU21hTnA3R2dseWxybXBWeHJ6eWcrbUVJbE9NK1BNSTJmZk85MXpkbnJNbXd1YVMwV3ZVME1MZUQzSk90aTR1anF0eUtHSEMxREdlU2hrSmlYYytqVmxEei92UHcvSk1iQ3lnQXpDSjJ4N1RJNi9Yb2tYRStFaWlVMG81c3RCUUlmMW8zbSszVTZyZFlsRXprR1BFYzdQbURTTXdrQ2tvZEc0UEthT2FVRm1ZLzh6aEtOMkQ2UGNEc3NyaE4xczdtS2Q0QURaOTkvZFl0NWRsM3lnc3JNNU5WSjlYdWx6QjcvdEhaUENBWUR3ZUd3QlhoY2xFTytScjBwQzJwNk5ycFJ2QXdZQzRVMUs2eXZaa0NXYkJkTGFKeW5pUnRvV3B5b05rb0VpTnJKaGIyK2RUcDJvNnJRR2lVelNwZm1xSEFJVENvbXhxOFJNYkRMd0RYM3dEZHAwNmIwcmFoWEFlOS9YUW9hZ2RLd2lyWmJJb1hlOHpsUkxRbU5SdDUvdzlxY2U2UTBVOFBHQVVobE91MmZKNHhsSFc4dXY5bms1NjQ3S2gvRWFUZ2EzdmNsT1ppTjB6aGtkcldZTGxCeFUwM0hoOWg4TklDd0JicUdNZmlLdVM1QlpTMTdURDlVUFM2WjgzdUxidUVBenpFTXdKblhYM3hYVDhvdDB0R2cvbzBZWVZBbHl6QlJSbVhjYXJGVUJHZFNxTnU5Mm1CRDI1Vm1mS2hwb0ZhT2x6SmdsL0lEYlFGR2krWjJGVGwvSENlckV0T0RHRFpoQytjS3BxM1dzaEtFQ3lid0NTUkgzVlVpOXIvYnl2dlF3WWpNN3ZzZktoeVJOWnpiVGhSNWNUdW81aEErZkc4YmJ1aHJXNEQ5aFhYQzVMVUlRUFFPaURqRVhuc3JQVTBGZ01IZzhiMEFmQWUwNjVpMHlScVNrYlJ6cXBRSE5FSHFLRFJHbEwwU1Q4bHJLbmZ5VURrUlQvV2RnOVdEblRVRFVUQlRxS2JIT2VDQytzKzc3VUp5M2drUzZ5MWZscFJUb3IraUFHclEyTWNyeFl0dVRkVUthckZMNDRWbXFpc3h5Mmg3WmFiSGN3S3REZGtJblNMemE3ckcySFpabitjSHYxUDM2MHI0dEt2YXZLUkFsMnBnaE9vRVUvMFBJL285TTVrN3lrWWQ1VHI3UWhDNG1nS2tXUTZCQ0hHV3VYSDhuaU1tWUMydFFZYmR5S1k3bHAyWWJucExHRzlGT1BVZHNJQmxnV2xZK1VmcStJUWd2ZWhxRHUvNW94NVJnSFVYSXppdk9QQzBSS0JvV3EvazVYaDJocjZDK0VPOWkveWRGRmVWRCtJS2RITWZDR3h2bGljdjlTajFrNWljb05tTXBCSFVQWnRmVWtxNjNVeUlsZzNUM0xsalI2RUt5Tkl0OXBGTDYwUlhTekFVSlBLSys1VWN1MXB3QT0=", + "pin": "111111" + }, + { + "pubkey": "027d21ae024366d3d01e7ba96ec27e50c2ff900c42fe3edcc771fd8a5d3fb01df1", + "routeHint": "037ec785c6004d512ebaeb0020f81a2bcdb6fccc9539f7b891f704289ebc65a4e3:2199023386625", + "alias": "virtualNode0", + "ip": "http://host.docker.internal:3004", + "external_ip": "http://localhost:3004", + "authToken": "f3yEOUCABYORB/A+I7RY", + "transportToken": "MIIBCgKCAQEAxnVZ6sgu482p4rHuOXm8vXt4U96p3LOwowkMSjmPFaML5eGa13TO\nE3cvjsVMLKHahamGCNaiOuKxbmKgvO7wdxqyi+18gt1Ziu4twm94noJ4sfREVjup\ni1vJgExjBOFzFg6w5Ezhgfd1Ft+shXZwstaxHzRypMjk9gw3G41fBGuySdU5gLnz\naxLDRHvLxHiKOIJECu3WTIWqS1lzGADObPoO7JyIKBTSX3hcHr9PMYHJqCNcHa34\nEGCldEsB+qCRrKDvc13bJd5U1peadUthJ3cYdMj+n14iJNkSa8PGu29N+OloOQLo\nQRRqAhBQSJV8F3c5Dn5mlUhBVPXTDdcAmQIDAQAB", + "contact_key": "MIIBCgKCAQEA2h1Kn3+L6WZkDrGWEdN1mmJd7xBfGEssR+5jSLpBD1EhG2x3Sj80RUqU42DTORHWt5Do7JBrrPJLjZciwEekJkDo0X7iNhvLqURU+i06cblrDEJCXAlTF7c3LZvaZVgHqP2NGl5s05aAq8+pz01LpXHW5R5qqLFmI7b2KErijAksw7xG9GJ5ZPM7V7fdpQrZrLWGBUOsV4VJ9kgau84DhbwyqV+DH0B2aAJn9p38siAadpSwRLmrNS1wk47S1/iYYs0P6K+yMatajz5cMMpSWt6GlwlQebnEnjYU07Zq+lhjocwr9Bz+8UVUUmBq5tM7BS8eMhBqX5AaXlatl8FvZQIDAQAB", + "privkey": "MIIEpAIBAAKCAQEA2h1Kn3+L6WZkDrGWEdN1mmJd7xBfGEssR+5jSLpBD1EhG2x3Sj80RUqU42DTORHWt5Do7JBrrPJLjZciwEekJkDo0X7iNhvLqURU+i06cblrDEJCXAlTF7c3LZvaZVgHqP2NGl5s05aAq8+pz01LpXHW5R5qqLFmI7b2KErijAksw7xG9GJ5ZPM7V7fdpQrZrLWGBUOsV4VJ9kgau84DhbwyqV+DH0B2aAJn9p38siAadpSwRLmrNS1wk47S1/iYYs0P6K+yMatajz5cMMpSWt6GlwlQebnEnjYU07Zq+lhjocwr9Bz+8UVUUmBq5tM7BS8eMhBqX5AaXlatl8FvZQIDAQABAoIBAQDXkYOjR+f78dqKOzHaxGfDAd1c3Y1e8Uz+erlds9eBT+mstPLhSr5ajW/BmnyoNt1D59CNnd8Nuxq5AdqytxuhQx3Xj9P7LlWHIaXq7LCKnXsTTplPZVfeZJIAXbzn1K0ddBr1KMXeCS16oW9vFzHgfjapk/pOZ6ZPPhDjmb92LfgbpCVCQbtupcQeujcfeOgkhiH+n3ehQS8tWLxx7aZ/qr3gZW0IQ0kI22lERJg8rWXLofh10a9jNXH/eFEMP5jT+F53joRKvHspUCHV1tMqb7nZzbJrEO0jQO0CdNmguZSlRW86jUS23DtVwGpWEHVd5m6SJ6XBU9wJPemS7ryxAoGBAO2W6VXy5kYgjajoOOtK9f3F0x/1T5NeiTJhOpem50KkL9n/9Wpw+duD68+FwiJ/1Xgyx2LJ8lHhK9nPP2SOnck+gCTbIKal4ArLj0AT4oGAxWKrr230OaKeujXw2p7hvacQ5gcKNIXabYeHyn0jmBrp9dCqw0UHDQCKUjSHiFtzAoGBAOsEDQFj+yh3yb6e3fwhlDRVXdfzFHdR1GzEv/HMqRBZZMUBngY5gc5FSDZkkU86SNp6iOEvzXJRsduc219oYsXU8uf8exgoLT4hQxaWcd/dpNSE3HgC3vC8SUOYBpvG03iC8m0RQWc5ZfrqQK9GQ2FPdWRi7mKiciHSxtJBkAPHAoGBAJsAjZIpOdoeeszrU9cNvJanbSm4XQYD8vYPQK6XkOCFRUKwHmgm9Jsl4b4twY3IYHheiH4GyjRo9rbO4siz0nTsdaWV4CNYrGXej8J6NpfObvgEkhrl7oQNkeaHD9n/5D8OY0PMgJ+i9ToqeQxTIHTOljRgc6yhAPaNRzxF/8vJAoGAMwDzDZ00MckleIAj7wcekekA78/qXibdMinU+lYPTuQHsZWzROiQGkMA9AUJYCdnDjtPn4dvT+MY9W9qUJ9n6EVZ3iz2TfzSLMytMaa+2fXRQun+qvD8j0RdphTFQmN5G4tXr4HyLsPPNRBHr4JRNzo2YO3zjGZy3JJQ4eqmpZsCgYB07nENm29IMLUVixmjk23uTFmgs8ujXDGi+V8KShFRT2+Z96qz8/PNrl7d21apFxwE2R+VczxjNLqN5dEwAYslCtl//r70Ky4Fs8V2qTBdhYgKiTmgPFeXK1217CTxx6sUOy9UV6DlXnDGLC7Fi6q9BgC1g/YjaoSfwNGi6PCPiw==", + "exported_keys": "a2V5czo6QXdHRFYvejQrVDBEYzFjNDRqRDdkamtRa1prQTVCVUJxaC9LMlZJYmk5YlROMDBDMThDWjhtWHBZd0JwWXBvbHllRnNlVnlJOFRTWWpORGh5TU9lUmtUN3lPK3d5cDRqSzJtd2U3Rm9NeXZMSC9aWDMzUHZkaFFSNWQ3WVhUc0dtbjUxOTg3YXRxdE0zdDFBOUI5V0wzZnFYMmgyaWxCY1NNK3BSZG9MVG9ZM1p5b0U0V281S0Y4a2pxWGU3REx5UUtmVkMwSnhRaVRyR1EzUnRtSWNTakVZbEp0OWtOb1g3VVRzOG8xSnl2WFJmOE4yMFBncDVta3B6UTV6UnRJYjFmL1RoNXlnNEk1VFlWWEEzODFzVmplRHdRMnpIeGxVZkRQZXBkbW85Qnp6NGRwTFJxU0hncXhoeG1qK3JkWUlIZjMydGptRDhBeEdYSGRzeDJNK2hkOU9tdlRXZ2hYRkFPbzRQRnRVNWVnanBndU5FelcrOGV3TksvalhQaVJYSjhHc05CTTQwRjNqNkhvVjFtR0lZQ0ZhbTc0QWtLMzIxV1l4MG1wWjVJVHJRd0VqYzB0cTBOOC9PaGw5YXBoQkQ2Z2oyY3pXUDZidDJ1Y1BIMnl0Mlk4b0JmQ0R4N1RRUyt5QWJ3RktUODB3NjYrYVJJSmJVSkVacDNRWTF5ZDFZVm1FZ29PMjJpS1JZemFYZkZqSzZ6TmNxTXM3bEpvc2l5Z3Urb3FVR3E3YTFtYktiSkxuVlR3SFFOTDVFcnNHY3dhNG9va2FQTGZZK09pZnkrRm1iT1JROWdtaHp6eGVGVDdZNkgwKzU2NlpmT1ZadVpITjlXS2NUWGZlWHZsem9PSmdYYm1TRjAzaEo3QTFVK3ZZdXBqekRRNEg5VlhJVkt2MVlCa3JtUlp1TVAvaG1OdC8rTDR0ZDJrd3BmeE54TlYvU1J4RkVaVHhOb0NaMVpidUYwUGk2eTBBUXgzek5JYy9BemtZcE4rMnlnM0wvVTM5ZmVUeWZrQzZPSXppVCtsVzNIZkh1NzVhZ1VBVFZ2b2xIbFhjSXNnUUxCZmpiT3RhYTlnT1hDWG5lOXdVcEtESGx2SDAzYTZuRzFTazl4YktuOVhIU2xxRjhaV1FiTUphRElFVHY1SVkwcy9EWVMxYmJUOXU1S2U5b24vekZ6b252WE5saXpzVEVOc1E0NVcyQnNxc08vSXdDMzRGK3ZWeTEvMXZNWHVMdUhweEk5M0grS1FDclkwSmwvd2x2LzJ4T3hTWW1yeFQvV3JoenFkRldkTGdFMW5YL2gvd3pMRXM2L0kwZTFjbTdZdnl6WVdCSTVCRTZNNUd0MGxEZUNEUC9ycFJ2Tkl0ZTh1MVJCcGN3MDFMWTZ5VGRBd0pmY1hKSGV4KzVWOU1maThzbzJGL3EvdDFIZjRpQXFwRU5QTzN4d0hSNlVKdnZrT3FXbnpteVM4dzBBdVhWcThMR2VpLzFUV2lKV3JtWCs5Z0VJZXA4aTZJdkR5UHJFSDZoclpkVmVNeUVwWnZ5RUViSGtTM2huWThLL1UwUjZtMXRkeUhHaGJpR1hHVDN5Rk5FU0tKWGJtZy9malNJUW9GVS9NenZSYWlqVmFNUEJ1Uk1kcFZoSm5vdjlLM09WYnc0ZjJuOUc5YndwZUp2MjdZdlYyekxLUmRKb2xuYkVCandkb1RlSFVNd2NXODh3Zng2NFM1L1ZaSk1xN0ZGWm11Y1IyUVF3V0k0Z2VQZDJyODE0WU95WENRYTRUOGRpTGREdzlVYjlIWnQ5Y0RVdlY0bFp6QUJNSmZadjZGYkpOM0pKQVd3RHZQYjJWK2h4WHJ0N0FEUVFaeE05cXlMa3VZK1hyZHh6MXc0RWlpRFdKSTVvWXVqajk3OEErRVZWbzBGS1VvaEVCWFp6U3E5UGpHK01lZmpJM0ZxSkdEeTBFZ1ptR1JadnZIaHcydmxkcTZ4SzVqaEVyYzBJZUM3amd5WDV0RGs0NE9nbDJlTGVaREk3cWFySVRsdjBaa1hNdWVZWE1JVDFYazBkYkZxRE5YbmFxNzdxcXlwd3pZSSswTTlDdFVpczh5eTBoQXdkMlQ5VHl5bTdPcXRybHNDK0VPM3NSLzkxTHdManBzbDZXRmd5eWVRNUhsV01qUHlHU3VZamNnQ0phSE84T2tVRU1MOG1lVENJelFBc3BROXFLcVVZeHlpL1dpU1hlWFQwL3doWDVjZkpMVERxKzQzZ1RIVnJaaWp6ZVdEUjFUM1pVRGE0YnpOT3lkNHdqRHlxeitaN0hhN1BUcUhtbzFHMmd5Uy82UGNvaWxJMVdiaGR1WG1iaTFKK3JrVDFZVmpCTmRBWFIrYlNvbkdTQ2E5VjMrRkhybUhPN1MzOWFOeXBrWHZmeEdBcWhJeXBwWll1dGF2SWpPOXVtaXVTc0QzNWwzSDJ0alVhWDNpZHB1MTkwZkk2dGFpZVp3QXNxZ1RQSVE4WWpydDZuQTUwMnhOVVJiUmV6aW5kNTd6cTA4TG1hUWRqQkVscy9VQm9yVmxrK1F2THd0Q1Z2RFE4QzhXVGRlN2FTaHRXRHFKSjJVRGM2WEVPZHVqdUdNNFQ2UDZzWXpjaUhPb0ozUTFvUDhwNXJwSSt6WWNmcEUybXM1K3ZnSld4RVJFSzdqcjZzQXVmaDdjN1lKeUZDR291TWxPcUxKbE1HWlZGNzEyQnBYRzZTQ3NYa0JPR0E0enVqREpLcC9nTkMxUGE2K3lBZHNZSGFrSWJBT1F1S0pGellXVitVQXhSSkdDcXJOVU44Y25qNXFUakZXL3c5dGt2K3JqdEhvSDkweXN4MW42SlBoSnd0WkN4bGlZdnRPL0o0d3ZvM0dPN3IyODlrdUxOS24rZW1qM2YrS0ZPL2xVWHVBeERZWGtSVUgweUwrZU5QOEhDVkJnWmdvNnRlTS9vQjg3TGpmdmZKUjh1bWZCZ1dUTzk5U0VtbGxwVm5kdG9Cd3JYREh6aTlwamJPZ09CTllGVm1ONEtuS0VxNW4wTlhvUWZrWFJhaXZYaHJReU85Uno4b25DUnN5MXdpL2dJQVFvQnBuSXp1eFpCSzQrWjQzeDQvdnlZWHZ6SFB4YThJMmg5Z2ptZUcycEk4dmpwRTY1aExTeWpxWGNsdUpPMEdNKzh2VGFLZU15VFhzeXh4Q2xjS1pvcVZUZ0ZzcExVQlF6aDJPQTkxTmt5ei9nV25jOFdJYWlhWi9HNDk0cExndVFrMWVXMGgvM0RjUW9Ka1JrWTFjYlZhNmFUNXJST0NpNldxUTNHNWRBVTJpYjh5SEZhYVBzSk1pTFU5TTZJNkdRbDlPVTVISkJvVk0yMHE0UzhobjdWK0JGd3kwTmRwSE9oMkFpeFYweHBreFNRd3ZRL1ovUzlRTEdteUVMdkpUK1dGTzlOVmRXUTVwaGU1K3V6aVVYN2hIbXczbDNKVFNJSjM1VkVsTGtaVXhOMEdlMjRIYWx0LzNEOE0wZVZ6SFhDL3EwTFVhRWhLSkdQczRlNDI1SVhnNndUR2doTGpCU3pFV2JvbkVBdmYxcEVXTWFvUDI4cE9JSDEyYWwveFlnUEphZU9OTWxzYUl3M05OTkVGU2RpYzhRa05qalNsN2VpUDVYekoxNTBWT0hBeGNKakxLRXBDNGw2ZjNuVG5SVXZrV3U5QT0=", + "pin": "111111" + }, + { + "pubkey": "0281a5e8939fd42864dd8172e49040ddf633ae7e51e100e2e8031124c1fc81ceb6", + "routeHint": "037ec785c6004d512ebaeb0020f81a2bcdb6fccc9539f7b891f704289ebc65a4e3:2199023452161", + "alias": "virtualNode1", + "ip": "http://host.docker.internal:3004", + "external_ip": "http://localhost:3004", + "authToken": "D61EUMjild9adIE0X8pq", + "transportToken": "MIIBCgKCAQEAxnVZ6sgu482p4rHuOXm8vXt4U96p3LOwowkMSjmPFaML5eGa13TO\nE3cvjsVMLKHahamGCNaiOuKxbmKgvO7wdxqyi+18gt1Ziu4twm94noJ4sfREVjup\ni1vJgExjBOFzFg6w5Ezhgfd1Ft+shXZwstaxHzRypMjk9gw3G41fBGuySdU5gLnz\naxLDRHvLxHiKOIJECu3WTIWqS1lzGADObPoO7JyIKBTSX3hcHr9PMYHJqCNcHa34\nEGCldEsB+qCRrKDvc13bJd5U1peadUthJ3cYdMj+n14iJNkSa8PGu29N+OloOQLo\nQRRqAhBQSJV8F3c5Dn5mlUhBVPXTDdcAmQIDAQAB", + "contact_key": "MIIBCgKCAQEAuoZfr8R02CVQZCzkHSn2bNUWS43IjzSilU1mZ+9VPMrEU4lZ3TwKffl2Kh7Mxg+66frWgCQRaE9iY0z0TXlnaskHLI55dVR90x+IrN2kDmpOyjx1ppNuTeZ2tCt6oSsnZ4KmTxkScwZfBB+a0CLlhD4h8OgGKGDdav/HGUdksGBAD74f1uTIqZEifsoy4jlUWm/uDzNanQsxUW56WNje+3lProc6AY5iCszLslOAHX3pH8/bkPVS8d9H4szktnKT4/PwCa4eFE+qk5FLMzUulN06+U05uj0NqJmy6Yu+sWfZgM88nZFNhdBnF0C8/hizuWppTDy6hrW3nVlBqRONRwIDAQAB", + "privkey": "MIIEogIBAAKCAQEAuoZfr8R02CVQZCzkHSn2bNUWS43IjzSilU1mZ+9VPMrEU4lZ3TwKffl2Kh7Mxg+66frWgCQRaE9iY0z0TXlnaskHLI55dVR90x+IrN2kDmpOyjx1ppNuTeZ2tCt6oSsnZ4KmTxkScwZfBB+a0CLlhD4h8OgGKGDdav/HGUdksGBAD74f1uTIqZEifsoy4jlUWm/uDzNanQsxUW56WNje+3lProc6AY5iCszLslOAHX3pH8/bkPVS8d9H4szktnKT4/PwCa4eFE+qk5FLMzUulN06+U05uj0NqJmy6Yu+sWfZgM88nZFNhdBnF0C8/hizuWppTDy6hrW3nVlBqRONRwIDAQABAoIBAG8tXuVubNLU0ukS1NkJRQezrzlThmLNVcc2Pj7fKeg1V/YO3VB/1CUoRyVt/FJl19xVFfuFBBcvkg5sNQXkwh6lOjB1r7GerezkU9vttDafaN0kUl/6annmT4SukcZ06WTKPATTheqntoTHrcg3tKQxQJvOQLVanz+Cu5K2ui5h+eXDCVYhzLs3ZwJD3EEHgs3zTCpWV3EYW7Td3/5v2VJH0ljG7PEPDCgD02Z0RP7EXl2LourIUaqRgkAeWZLfzuUE5me4uY6BMMOUGRhJKPcENRieLzJ4GunuL33AxR26vAwDFAPbeyFxkxGQLItaX2Br6CBUNb5aEWRDOAMAwYkCgYEA95AtmCrBAmAVKkf8NeDhxiUj8GW48kXOkcBxKh7GuAioF6hB4TWPAsWh1m2onjeId3wzDxAQF/N1Y8pyEkhTmE+uT1Dcuc1jFPfsyFqACKNqDytI5YfDpgXWmS2nRC56sO7pe9nJs47t7IYCQEYafH1Li/XP/WonRVHm3qblEpMCgYEAwOGtfUOrVBDSWZn8hXuh1YpJ6aMKDjhzH6dC1y5tJIriVR/uw36o2emLEAtH0Qd/TYRGCKfNVwYgQBUtztMCiRIbfhNzxC+uNM64vMbuzEAmYgDj2CXerivJ90GdguqT6gZaRjpAO2knWlYVeysr71MQBG2CtlGEQebBLYl0Rv0CgYBRdvJqBnepDnEojrOiDzR8fbBL5U1s/Cezsr4KfEIsQTz/O/Eh6Pv8j4hoBYHdPqz7lLVAmaqSFx1kDzRma8KGdoIHu7ZGth2KwuL6Mz26mfvGrhm43mo1cepiUbGfMCRToOrYRJypJ7mHgbmv6OHCYYDAt80PuSTfHMp6LjVnXQKBgBdmidTLs+qEC/Eg9HkBUdYFbAgzZpHpGVZ6xWoz0LwBOYpYUHBZWoTth5iPtcvPXAt8g76jFQ98x8beiusvwHv+vWUjWQUxP7JabiFBBVG0arOzJfFgTs7UszETPdfXO9DFqoggoxBSJpsYHI0P5MmpSyUuYBBcfW49X6x1o6zFAoGAZCAw7xNQBbY8nZt2wLsyfa2+l7qwUMJOSuNMWM42Y8HGy3SJiO3Uu2XE4uZ1C7/5Wcu0Zbo9b7GDX6X8XfBrdIK2Tasv4CFfUBbTDyPxwzMZh7Hadh+u486s25HxNXXyGUUwHzUw2HJvFXHQxDiIVEeZo8gBPAUb/OU7eBpJrrE=", + "exported_keys": "a2V5czo6QXdHL3NJY1FuU3JadzByVjdvTi9CVEp2d2tiN1VkcmFDZ2VsbTEvRDBMSkJscWdtSHlSZ3lQZkt0NjA4TERzUlZUaTdydHorS01ZL3FlUGxyWktlL2dYOHQxeG5ieEJFbDkybGc3U3lBMVNHaXNON3BWOXcza3pWQVJNbkpBT245YUhNYnVybVcrUmhRblNNK2VPeUhWUGJIVUNYaTNhSmw5emdQQUlpLzBmeDZTNy9lMVRxVnRGK2xOWlRjbXo5UHlibzBreS9YNnRKNFVRMXoxVkYzNEhrMjRrb2VhYjhFNlRsUXZrL0x2bHlsNkp4RktjalJnSEgwV0o3VEdORXJHODFlc0lncDB0Zi91MDM3TnhybW5lR1hadzczalhpdlRnRWw4OHI3N0JYVHg3TGxJZFlGQk5oZWFUNVhWUmVTTE9memErK3dMRW5CbWRJRzJoQzREUG1pZnFqYWtRVzRMcnZnMmxNK3VFQ0o0enI3RUNnVkFBcE1wdjB1MzhuMVBiVDNvR1RMZzFGdjBPV3U5SE45VGhuMHFMbVd1eTNuUkoreUNTdEpWNFAza2U1Z3JWL2V4MHZRUVYwZ0RWMk5uVFFlVWdBTzBWR2dzWXJvaldFdVRaU2Qwb3ZVbnZQRUZiL3VlNHpJdzViSCtlYy95bXhFT0hXb3dKTUtjU2FhWTJXMVlDOUVYWDV2RHpPQlZ5ei9JdGQwM1c3blRnZHA3dUNBc3pHL282SUV6VDBqSXVLV3VIZzNRZi9oRVArdUVXeE5USmV3WnhFemE5SWVTZjIrbjNTOU9NbkhkWS9JSWxQQmVGT3EyMnJRQjYzWVN2RVAxdnB6VVkvMGdEZTZEekl0ai9pWEgyWGN5SGJUSHZHdk5wSW9scUxtMHlqWnVFVUZBWWxMaWxXQ0ZRTUpGYnJNYjE0QjI1aURVYWVNTWZGMzhvb2tGK1lNWHQ1djg2UGxQdWZ5TExORmtpTVgwb05adExWR2JXaWZ6Sjh5enc0UWZON293NzF3bTNyNnhzTWd2SW5PeGZPZ2cwV3dST3hFUXU5R21sdUxaSFRGdHg3Q0RGQTZpdlFRWGwzdkFGbXdsay9VRHRtS3M2RnRWMDREWmFKUHIrWXZMNFZ1S2t5R3FrWGIxL0ZIV3JHWmcwTE1FT2lNNDR4MldqUzl0UGR6cWVqaVV3MEpkMmZBZlhVMFlOQnZIb0tjakx5d1g5UC8zdGxQYWsxUzhmTURZNlJPUzhuZFJvZy9pRjluWFd3N3FXd09vcUpBc29DUEZ6ZithWjRSVFdVZ0luNTJaNkpjMEc4QmZ1dXYxaEtBRkh3aWxsMExCUnJzTDN1d3Y2YTRMTENPUitqVXAyNngzVTlrRnRNZWNKWGdlaDRoRHU4TmFXUVIydkI5cUdza0FkNG0zbXQrR0d6ckJsdjNGZy9aZTRvWms4S0ZacHUyNERYQkQvVFpzZEQwUlJleUhiK0E2Q1Q5UVY1ZDFoekR1TmxvZ1JtcEVnTjRndDlCMGxQUFhOS1pEZUJzWHhjUkdqTCtQczlFSFNtcnRnd2s5S1ZHdkFqMHA4UEVzMmxXVlZRVHdranZvQnZvM2N2STV3TDlVRG9HTDQyUXhaOXBva2RLSFlOdTdIVTFubU1pejBvV1UxSkMxdzU4cFU5UVlBYnkrR1F6U0gxenlVSktEYTladk1NWUllNUF1L1JXV0NGTXJnZzNzSFRpV0hxMDdQMXcyUWQxWkpNNk1aL1pZQW1abE5QYjZLengyWXhXaU1Oa2FvZE1VQlpnSmV2K1UwQ1ZtOTNjMEgvTlZYTDRjWllXUG1yb2FvUGM0djVTQ2huaWdFT2N3dXh4M2JWTkpnVlJ0NlR6K25yQ0tlVE9CbitnZVJiKzA1RGlvempPSTd6Zm44cXU4MXZidU8xM21LLzgycWl3U25vb01BZHpibHpMWHhpaXZRYXRWdzdHY3Z6RkpaQTQrYnR5OGZjWmFDdU8rVjBod2tYbUZVVS9SOW5KQmhmY0N4NGM3SXU3TEtBSkhrR0xIcVN0KzIxM1BmSWdkdFpwTFErZGR3RExFaUM4NVU5OEhXaFVlZTlMS2xja2o1aWhZMktlajZ3Q1FqNGNSVS9LL0srUktKNW9UT2xpQVlFWkRFdStMd1F4OUdGS2pIZ0pkN0EyQ3VLOGhCWHljRmxadktidWxzTzlIS0R4VWtUSUl1MkFIbkt6T0EyUi9lWmVLSE94Vk0zUDA5eEl6Y1ZyZlZmRHBFY0Fwak1zRGhaMFRacFQxZ0xITTJvREgyOFdtVDYyTEg0UGNQYkJ1WkpieDh2cGVBbkR4Nm1wdGxwd2wxMHBid1QySUhmMGl5cm9xMDBvb1ZRVm1rSENwSDhWcGRyY2pPZmtDMnVNWW0xVkFMNzVTQVlFT1A0LzlvWllHWE5RWEtieTdRSHVwV2VJTXlsSmhXVFk2b0RlQ0VtWmIwc0JmamxndUZLWWVUSVhrZ0FIN0g5emJ2VGxrNnQ4UXJlTG5tMlp4ZHV5NDQ3WU0zSDlJNHZMUkh5dEpwWlhtaTNKQ0JxNTBXSjBaM1Z1SUhSWXBUc2FkZi82RnNsbnp3MndPSkt0Z2d0Vk5ORlV0SXUvcm1DMGRZZHQvMHFjUTdPQUlkbURNWVZoNzRwMUNOcVFsVXhEWkMwK2hyTFVwU0RhVzFHMTBnTm5SM3VPZDQ1d3dBZVZaaWh5YTU3bUhRWmUwcjNjbnhkM1FwV21jcW55OHpwZjhNUWxIS3pIYnpWeHFpL0JvMXJiSDMvWFhOall2WFF5ZExOZ1E4V3pSR1ZCdHY4MDVuTndlb2QweVE0eHRlalNYTDdRbXhkZ2tmSUtCQkkzODRoSzgrZVN3blRhaFkwUDh5bk1TeTMvQWV5QUIwM3pFMkowSGhuVmVmTXJtMmNIdmlpa3puSEJ2Wk1URUtJVGhoQk55MDRlTmhZcnU5Z1QyTkNCOFN1QW5veldpNXc2aDVLUktQOFp0aytITm5NN1dQT1VESXByL3BPWENuUzRPNWd2dXdvOUM4eWJDS2JiUkRNUWVaYmRZM3dvMGFiTEErTEFjTnEySExlcDJhaEZmclZUdG1jaDVJNy9FM2d5Y1dpcklXWnBYcDgyWUIyNkJTR2d1N2EzT3dSaG05elUxcUc4YjdRdkVycmNQdTB4OHhuemNsc1pMdXBTaWhCOHgxODBqajFpU2RkVjh6ODNrR0Q2VDdvOC9iQ1l5R0w4Mys5QVRMa1pLVlB6ZXBQa1RxSHBOTVFjOEJONkxRb2VvN2Fyb1g4dUpWSkF0bCtRT3BDZ3lpcE83c0Q5L3JlQVIwRWdwTnIybFJFaGo0c2w1b2Y4b2pQZXoyQ1pMT2lpcU5PNFRDV25lczFteks5UUVYVUZUenpCMmZGblRzbGxSN0Jtb29OLzZjRFF1TFB2ZlNJY1FOR2xaN3V3U0VKK1FZQU9HdDhjeEFSODFNa1BoRTJSemxFY25DQndiOG51YlJBVGp0QlBRcWlXNlIrSHZ5NjVsSnBha0JvTXViMmhjT3NhSjlmTUpkbCt2ZFZoUFhmQUlWekdlcDBtckJnWDQvNlIxc2JHbVZyMXBIWitmK1grVFFOZEpPc01mdVVyVUN6Vkk5eXJnOEtqUSt0d0JaeUNxQm8weDN0QjlGcU9Lcz0=", + "pin": "111111" + } +] diff --git a/cypress/support/e2e.ts b/cypress/support/e2e.ts index ae0281a3d..f07bc73ce 100644 --- a/cypress/support/e2e.ts +++ b/cypress/support/e2e.ts @@ -14,7 +14,7 @@ // *********************************************************** // Import commands.js using ES2015 syntax: -import nodes from '../../relay/nodes.json' +import nodes from '../fixtures/nodes.json' import './commands' // Alternatively you can use CommonJS syntax: From a6c0d9c4038504351cb277187b1d2839955e09bc Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 20:39:45 +0100 Subject: [PATCH 19/25] fix: added little logs to see --- cypress/e2e/admin/signin.cy.ts | 6 ++++++ src/components/SettingsModal/SettingsView/index.tsx | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/cypress/e2e/admin/signin.cy.ts b/cypress/e2e/admin/signin.cy.ts index 762170706..05256f5e2 100644 --- a/cypress/e2e/admin/signin.cy.ts +++ b/cypress/e2e/admin/signin.cy.ts @@ -8,6 +8,12 @@ describe('Admin Login', () => { let title = `Testing NavFiber` cy.wait(30000) cy.get('div[data-testid="settings-modal"]').click() + cy.get('[data-testid="setting-label"]').should('have.text', 'Settings') + cy.get('[data-testid="setting-label"]').should('have.text', 'Admin Settings') + // .invoke('text') + // .then((value) => { + // console.log(value) + // }) cy.get('#cy-about-title-id').click() cy.get('#cy-about-title-id').type('{selectAll}') cy.get('#cy-about-title-id').type(title) diff --git a/src/components/SettingsModal/SettingsView/index.tsx b/src/components/SettingsModal/SettingsView/index.tsx index 0f2ab6cf2..9c5cb507b 100644 --- a/src/components/SettingsModal/SettingsView/index.tsx +++ b/src/components/SettingsModal/SettingsView/index.tsx @@ -55,7 +55,7 @@ export const SettingsView: React.FC = ({ onClose }) => { const SettingsHeader = ({ children }: { children: React.ReactNode }) => ( - {getSettingsLabel()} + {getSettingsLabel()} {resolveAdminActions()} {children} From 6bdadf957e762cd070fd34983afbab65cea44213 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 21:02:18 +0100 Subject: [PATCH 20/25] fix: added videos to artifact --- .github/workflows/e2e-test.yml | 7 +++++++ cypress/e2e/admin/signin.cy.ts | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 689a65646..57318231d 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -82,6 +82,13 @@ jobs: sleep 100 yarn run cy-run + - name: Upload Cypress logs + if: failure() + uses: actions/upload-artifact@v2 + with: + name: cypress-logs + path: cypress/videos + - name: Stop Stack working-directory: ./stack run: docker-compose down diff --git a/cypress/e2e/admin/signin.cy.ts b/cypress/e2e/admin/signin.cy.ts index 05256f5e2..08b40e6e9 100644 --- a/cypress/e2e/admin/signin.cy.ts +++ b/cypress/e2e/admin/signin.cy.ts @@ -8,7 +8,7 @@ describe('Admin Login', () => { let title = `Testing NavFiber` cy.wait(30000) cy.get('div[data-testid="settings-modal"]').click() - cy.get('[data-testid="setting-label"]').should('have.text', 'Settings') + // cy.get('[data-testid="setting-label"]').should('have.text', 'Settings') cy.get('[data-testid="setting-label"]').should('have.text', 'Admin Settings') // .invoke('text') // .then((value) => { From 355c0b5e3fbf8b11616866d2630f3248b0489ed1 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 21:28:12 +0100 Subject: [PATCH 21/25] fix: setup boltwall local endpoint for E2E test --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 9157d4d4e..d2b4988a5 100644 --- a/package.json +++ b/package.json @@ -68,7 +68,7 @@ }, "scripts": { "start": "vite --port 3000", - "start-e2e": "VITE_APP_IS_E2E=true vite --host --port 3000", + "start-e2e": "VITE_APP_IS_E2E=true VITE_APP_API_URL=http://localhost:8444/api vite --host --port 3000", "dev-tribe": "vite --port 3004", "build": "tsc && vite build", "build-docker": "tsc && vite build", From 4db89d67391a5bafd74b7f790b8e575620a92794 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 22:31:03 +0100 Subject: [PATCH 22/25] chore: added stack to the previous e2e test --- .github/workflows/e2e-test.yml | 3 -- .github/workflows/test.yml | 58 ++++++++++++++++++++++++++++++++-- 2 files changed, 55 insertions(+), 6 deletions(-) diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml index 57318231d..3ae655621 100644 --- a/.github/workflows/e2e-test.yml +++ b/.github/workflows/e2e-test.yml @@ -68,9 +68,6 @@ jobs: source: "stack/relay/NODES.json" target: "cypress/fixtures/nodes.json" - - name: View relay nodes - run: cat relay/nodes.json - - name: Install Frontend Dependencies run: yarn install diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 316d804a3..9b9f4db71 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -7,14 +7,62 @@ jobs: cypress-run: runs-on: ubuntu-latest steps: + - name: Enable docker.host.internal for Ubuntu + run: | + pwd && sudo bash -c 'echo "172.17.0.1 host.docker.internal" >> /etc/hosts' + - name: Checkout uses: actions/checkout@v4 - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version-file: '.nvmrc' - cache: 'yarn' + node-version-file: ".nvmrc" + cache: "yarn" + - name: Clone Stack + run: | + git clone -b feat/second-brain-compose https://github.com/stakwork/sphinx-stack.git stack + + - name: Give Permissions to Sphinx Nav Fiber + run: pwd && ls && chmod 777 -R relay + + - name: Give Permissions to Sphinx Tribes Frontend Cypress + run: chmod 777 -R cypress + + - name: Give Permissions to Stack + working-directory: ./stack + run: | + chmod 777 ./bitcoind; + chmod 777 -R ./relay; + chmod 777 -R ./lnd; + chmod 777 -R ./proxy; + chmod 777 -R ./cln; + + - name: Check for NODES + uses: nick-fields/retry@v2 + with: + timeout_minutes: 10 + max_attempts: 3 + command: | + GITACTION_ENV=gitactionenv docker-compose -f ./stack/alts/navfiber.yml --project-dir ./stack up -d; + sleep 240; + docker ps + docker logs meme.sphinx + docker logs dave.sphinx + docker wait stack_relaysetup_1 + cat stack/relay/NODES.json; + + - name: Copy Node.json + uses: canastro/copy-file-action@master + with: + source: "stack/relay/NODES.json" + target: "relay/nodes.json" + + - name: Copy Node.json 2 + uses: canastro/copy-file-action@master + with: + source: "stack/relay/NODES.json" + target: "cypress/fixtures/nodes.json" - name: Install run: yarn --immutable @@ -26,7 +74,7 @@ jobs: install-command: yarn --immutable browser: chrome start: yarn run start-e2e - wait-on: 'http://localhost:3000' # Waits for above + wait-on: "http://localhost:3000" # Waits for above wait-on-timeout: 120 # Waits for 2 minutes # Records to Cypress Dashboard record: true @@ -40,3 +88,7 @@ jobs: - name: Check the coverage value run: yarn test-coverage + + - name: Stop Stack + working-directory: ./stack + run: docker-compose down From 292c8193dca074ac2b1249c4f76776bfbf4b9227 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 22:57:11 +0100 Subject: [PATCH 23/25] fix: added video logs to artifact --- .github/workflows/test.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 9b9f4db71..5106b680d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -86,6 +86,13 @@ jobs: run: yarn run cy-comp continue-on-error: false + - name: Upload Cypress logs + if: failure() + uses: actions/upload-artifact@v2 + with: + name: cypress-logs + path: cypress/videos + - name: Check the coverage value run: yarn test-coverage From fd2f16df5344495e4df6a15f1123c7c83fbc09d7 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 23:01:02 +0100 Subject: [PATCH 24/25] chore: ensured we have only one nodes.json file --- .github/workflows/test.yml | 11 +----- cypress/fixtures/nodes.json | 78 ------------------------------------ cypress/support/e2e.ts | 2 +- relay/nodes.json | 79 +------------------------------------ 4 files changed, 3 insertions(+), 167 deletions(-) delete mode 100644 cypress/fixtures/nodes.json diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 5106b680d..0f00ac225 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -24,10 +24,7 @@ jobs: git clone -b feat/second-brain-compose https://github.com/stakwork/sphinx-stack.git stack - name: Give Permissions to Sphinx Nav Fiber - run: pwd && ls && chmod 777 -R relay - - - name: Give Permissions to Sphinx Tribes Frontend Cypress - run: chmod 777 -R cypress + run: chmod 777 -R relay - name: Give Permissions to Stack working-directory: ./stack @@ -58,12 +55,6 @@ jobs: source: "stack/relay/NODES.json" target: "relay/nodes.json" - - name: Copy Node.json 2 - uses: canastro/copy-file-action@master - with: - source: "stack/relay/NODES.json" - target: "cypress/fixtures/nodes.json" - - name: Install run: yarn --immutable diff --git a/cypress/fixtures/nodes.json b/cypress/fixtures/nodes.json deleted file mode 100644 index 39dfcdea9..000000000 --- a/cypress/fixtures/nodes.json +++ /dev/null @@ -1,78 +0,0 @@ -[ - { - "alias": "alice", - "pubkey": "03a394d0ebf0d003124ab130c6b12b8b990a50a30a464354800a51981ba745bb07", - "ip": "http://alice.sphinx:3001", - "external_ip": "http://localhost:3001", - "authToken": "N4IsKsD5YqIvgYbUWXzp", - "transportToken": "MIIBCgKCAQEA0+Gfk/qD4NqyIBnT3spJIvRLzsLhgtkigDslnsyg1g6+mXtonHZD\nsh+TOXvIOTReJI/k+JvlX/Kw8rbBGkwgpf7XhcUcK8xORN8gq67z7BxqxyjqTyE3\nP4ICK+ih9/HroyZaB8y60uDTR02cVFC49YO+lfK/Rork+3LOUgn6Mr7vkpWLKl4r\nNMFVlwZDVpDfA0tK028Z3b+68z25ERYQIHweLnqc5XrD0rADdLVXFnJyFhDKKYM1\nvtRHezNU/yfhkheFuG3Yw8nVZkuJj1h7rGy8ZrLaIGYJ2RBCOVLFqqFrR7KbpyJd\nGt4Gl0WnZllFBreYZTUPtx7RQwfbe1TJIQIDAQAB", - "contact_key": "MIIBCgKCAQEA1zRRFrfkxa5fMQfyFvk8W1IowaqlPPH3CEhZi73WWnOEMvLwAoMDb+MZyUUxx4tlS7Bs4rVGmNODzQXR6/jRqXuGVlbRQedXI3BhJrrFhKNxb85dRjWCGG121MSBCouH/vwmOMYwzT4jzBaBuGABkT7GnmqFw5BvFrlIxlqJR4/qWm0ivHIRe728JxveWKwMPj1Lzi1RQ0O7+p894pmj5HhrnTLQMtxTg64lII2eQJRGYWIGLprpYEJay1ow/7kVLbyW2B7KFGuKwSTp/9Bn93XxNnvI10Ny+d6YePc5O7phLxY+Mxauys2F9/HCOeBglaXZFSMwCWQpyqTLJBrdnQIDAQAB", - "privkey": "MIIEpQIBAAKCAQEA1zRRFrfkxa5fMQfyFvk8W1IowaqlPPH3CEhZi73WWnOEMvLwAoMDb+MZyUUxx4tlS7Bs4rVGmNODzQXR6/jRqXuGVlbRQedXI3BhJrrFhKNxb85dRjWCGG121MSBCouH/vwmOMYwzT4jzBaBuGABkT7GnmqFw5BvFrlIxlqJR4/qWm0ivHIRe728JxveWKwMPj1Lzi1RQ0O7+p894pmj5HhrnTLQMtxTg64lII2eQJRGYWIGLprpYEJay1ow/7kVLbyW2B7KFGuKwSTp/9Bn93XxNnvI10Ny+d6YePc5O7phLxY+Mxauys2F9/HCOeBglaXZFSMwCWQpyqTLJBrdnQIDAQABAoIBAANPWq/uxCYGOJCYfrC7xKHi8Z2I8mGtlw8ZjccIdHOPs0jVU7u2KCdgZtUhq1JWYoh3fjU+dIeFOVG99Syb9x2UOMy7KRzKYhy5bcUauk7/9I6zrduWlxmpFVrQauuumbjiR/Q3mCiP/Bz3e6dKUrvZK1TkbopDfnHrB6OFYPcoyEaYu93IFtFEQ1fOpDMS2/Fn48ATwSRaCMCLlp1funaFwhi2e9xVmivRxSVwQX8y703fjMt+Bl3Hv2rsmgasm/E4Ft9kUB8d3IfHl8x5GG0GGJ1kMZ3edN2vmBDOj8qF00L+pqYi1zRo5LHMoDmKcUtDuUY35L/zAWUF9pQ53gECgYEA+HHO5I3ozr8Z9AQBAS8XNJ9Uwvt3L7Qk26oWTcbqfudxWQK4lmCStt2Mlg+/B5xiwI0W4sIfIMtILDd+Es+gkXnQa2O2JOl4zuvjnrfkxiSVbh4/DEZQmyW5I+wBfLyYsYg9RsXNLizJkE50FcsTg3VDdYV0LuvIU/deDMPQn5UCgYEA3b+6D9QigWBtySKZ2KnSC1zrSdjutdl9EnQBBjaEhOy3rWeJUXyVKoKXJ6XIw3pu2vUXqscyKyvOMfZlBPmV0XXyPd9IQsXfhZMxJa1H2SiV7+xZbtYCZwfWycg6qe97pUjmxXMBCO9Cqc26HKT6372WD8Q2YKXMQYAjSgK3Y+kCgYEAkZAsxiCXLLsu+5d09zqeAAjyYqNvO5XymnlXRA6tydjUwnAjsoe2rkm0Wx+yr0TjXynLJOTT1CUGjlGdHmxkCZgzkxgC2jGoxKPU42OfOLCqlLBIBGsWQzCg/vkCDhF57VqDfHncM5euKUyuGy62qikEc1DTt8IRx5CBnD0GeNkCgYEAstof/QJRrl4TToYs5hbahjW0xMRGjL/VZBvSc6tnKTswTplSpTnBqh7YQa8yhY/rd4j1RNYTPcTAM4YTJncUAnSKJKNByjGEvlzg6A2iBKH6hR/xZjcQiv9Em013G3dAGCj7kMfYTteDwidfdBkRC4MDVMYiQcOYQkBStjAIsHkCgYEAwgEnj/Le6PY1h7KX7dArND4iF+XHiM/X9pyzrvbnkJ5CsyM0WjiKOgoLAvCIjCWGVtc5eZ6Gchs0QzlYiP85ypQ+QEPVYCcFC50AlomJWPYPOQNbo/Gppdiz0XuHGYD5++SDGjiEVk66vr2XNsfH/rsV+2ku+vel5sKDq4Ty5C8=", - "exported_keys": "a2V5czo6QXdHd1NvZldPYUZVLzlvaG5SZVh4YWUzMlpvMWEyUTZtQ0p0YmRUclExRkpPSVhxZmtFZVR1dnlHdkVtbDJudmk5SzlQMWkvUVdLNkdMLzk3YWZyMHEvcERiSEVyNnVWTWZ5MTAzVUxTM1JPQmNmWjlaTERsTjZaNTVpTnBxTGZENHlOa0NhaStSNkNXczZMMit6VU9aN3A4a3FybHJmSTVFbFhkN3dpR29KS1JqM2RYeEFhQjdYM3d3RXhOZGN2WkdkdDQwUE9MSGRXYkx3blI3dENpMUU4b0RpQnd2R3p0cXZHNGtrNXBCd3pEYzdOVmdJVU8yWHAvMkRrWU5mSkEzRHNuRXJmNnFBeENMSEVoUzQvL0l6VGdWeVY0bWxvOVU5SjZ1Y2pJTVB0SWNvT1JEemRFR01tc2VWSjZXRWhOYXRvZHZMOVlPaHJveGxneWp0bWlsRXBkWVhKTDJQQzl4cnN3TTZvZFN4WU1YeEVSVnNJSjd0ak54ZDUxUXdPaS9GdlJydm93bzRuOVFQSDJWSEJLRHo2VlZRQTdjOGZyaVI4VGRVYWZFdkl4cEFObEU3dmVNUDZPOTIycU5rR21jT1NiUXJkS1pYUVNHY3l1UzhqekRUbEhZbW4valB2T21VNmdoM3N3eXVkNnVaYmV6R0F3UjJqTjVUZDRGTE1iTjBPMFNMNmdzN2haeWlBMThQa2dUb3kzRGdhME5xS2N5d214L3BhV1BSY1MvdWxKd2ZZUEV1N01QeDRBNm5uVW9SWThjL21PWURrVENSNkQyWG03aEZteWNZUUs2VlZvY0FiOUkyOWx2QWMxWm5Zb1JEUzM5RkpRdDBHOTFFNkNOQ0dmRmo3MlpHSitQaUtuc3NZMDZ4NlZHMDhqTERTcmFNenVtYnllT1N2M1E5UndRNnlHMGRvS09KeElORGZ4QnFsRHN2ZkdiSXVXK1E1c0RwN0FHc25oUU5NcWVPK0NiRlNhT3RTVUxYUXlxQmxxS2RyOERFdlBKZTBnNFdoREJQYS9wVGRCeURxWGlPdDQwL2o4L0RTUXJ3K3JvcUhkT3dDdk1RTUFaajRDeWY1R2J4UEFQV3B1MUJDQ0x0czZvSy8zMjcwSGJZMUt2dEZ5M2d6TXlrK1ppa3BSWnBEcFdPMVhqSUFLLy81R1RWT01RREFNbm9hd3p1aXo0d295bHBqREpOazdCQXZIRFBqMnVUVXcxNUxwUllBV2ZYVDQ4djhuQnZnLzFTQitJU2VYTVJmbHEwZjh2UlNpRThwTWNDeVRJSU9yaFpXWDdTYWNza2dnR203TkZ3YXh2VjBmb3JjTE04THovRWk0UEptZ1VlSGR1U1RKcS8xMlVDbzR1YjBickNuYVF3WnR6b3BKZDdJc2w5WmxZTUZDei80b0l2dXJZbFMrTTVVL2R1ZUVzMjgrOGo5MTQxb0pwRHFDU2FtdGdYU0RSQlkvWmd2UGdvUnpETjlDdDV5Q0M0cGo1K1kzdllZK2NFS1MzMVNtaHduZE96MVZ0cmx0YnFYZkEwM3JoS2poT1dLc01ocWJHTkdWd2VEZ0l5RzJRVHJ4TFA2TVpFMVpsVXBCL2RpYXNicGVWaFlvY1l3eGN1cXBFbmo4MzJ2ZEszcTlGWlFUaUU1UnE0LzQwd0NmUFJUYmJVZTRvNkg2eCtpV3ZWbjZnazZGdlBxUDQ2Z3JSaURSY1hJMFBEcUtwclgxd013c1ljQW91dFoyMFUrMmFxVTgxS3JUVUc5cnN5MnAwRUhjU2VRaXRONVBrZy9tMGF4bGFjWnk3aTVSeDUxdDFzWjZSSmRWdlhKTHg0T0UyL2tsdHlGTkg1UjVYNU1jUExveVFQTFdBQ1daZjFoNUM3OVY4ajV0M2lnUm1ZR3FRM293TGxFSDJveWFvYVZrc2dMTEs3bHRzVHJzVFpJV2NyYVNZbWNuWjVlYmhJRXc3L0NoRUJOZzA4VlpwV0VzTlhxb0hULzNtd25Ga3pXYmI1UkNSM3FhUFdUTzFZTVptVlBjaHFHRXo3YXBCSHdxUlNqV0t4MHR2T3pwaVA3ZnFDUm1nZWNzT3lHQS9zRjNwZG1wV2E5Ry85bWZpZWpsdFJrZlRDbUxiUkdyWEJiL2JXZUNoK051aWJHdkZCUFJMS0l1Q0xtUk9pcEZYSEorclJhRUFNL05ZY3Bnd2U0bWJ0MlBySUpDVmhaeG4zZzE5ZWJwYU1NZ0hZVXZRWUFDclQ1Z0dlK0tsVGpYbDJUU2dQNmY1SFhYWEMrbUV5ZlBia1ZHMjZDelFJYzlLREpZV3owSW4xNlVFSll4eFoxNENVc3kzSTVrN0FCRFpHdDgySThIQmRDQUpQUkVTYTBDekdHRU81RktDQmxrU2E4YUJtTDFONkhxODZnN2FJeWl4Z1lOdENycW9YSHh6M2tSM3MwY0FTcGZFQlNGekJNU2x1RzMrcHloTGRiWi9Yd1hCN3ZLWWhNWDZVS0w2M2pUWGF0QndCZ3pxdnNGa1p1aXJVY3MweGJGelpHc011VWVzSWF5Vy9EQXZDY1poWFJwV3RxV2dhYXFzWkxHMkphVllzUGhhaXFVYnBXSUVHaEdFRGpxV2psQXBwWis0K2xoTzVoYjFZcThPZUVDOEpDUElzQ2k4VEEyV3dNMWtndmtIcHFGQXlzR1d2ZmE1aWd4d3ZIVHRWSVpHd1BmSGJDZjJrcXdPcDFodGRGS2F2R2dOeUpuWEVpU3VBczlZMmx3ZTZIb0I0ZkNRajZZQXRHOFdrNkJ5Q045YWlMUE5NMUxjTzRBYzVXc0lqRmV1WnVkSTdwcm5TYU5UdEg4S3lxNXZMZnhybGtuVURZb2puZS96TWlKTnRCRmlqVjEvVUo4bnFmYzhTWit5T09DQWVPRXd2T2wzc0pGYVhnYVNDS3JvWktJbVBtL2t6dVhCZHJ1TFczMUJZczlSRTBuem9zUFd5ZHVwRmZ3N2pvOTY1dnpzV09Pai9lTU4yYVpwejEyVWhDN3VCS2dqSmdqT0E2N0wrNTIzTTJIK1RleTVIWTNSQnExdzBNTHBadUswL054ZkxIbHdNbzdYMVYxZUl5L3B0cGtPNUhab0d0U21BczVQS2VEUXF3dVNpWVV6cU5mOU4xUHVkaEtIY3ltTTVMSkdGYVpZSzVZYVB5amJiWENOekZwTWJWc0lmS3hoaTBmSXJXdDQ1c1lPK2ZVN0dkM21BVm9RZitqc0lCRGlmTVJ4WFg2ZGR5dVlZTEhVeGlQUWs1bUx1d29JSjhEeUZUWmpYV2hhQk5ESExnTEphRjRKeU1xczl1VkNDb0hGdVh5ZUFDQzMybU03bCtENTNSZWRNNmxGd2xGTHNyS2hjRnl5L3RDN2N5eWF6SC9GQVh1R1RNazR0a2IvbFBJTkl4RXRMYy91MkNOS2JEcXBIZ2NHR0hiTC9DU3pRYVFGajUwbUVnaFA4MXl3ekNCcTA3Y0hzancvbVNuMEU0U0xUYXVHN2ZOdlp1OGtpckxZKy93cS8xR0t0NkxvSXNBd1hyR2RkQjVCMVY2em14b2xKQ0k4R1JXRG1LY2R5VDdZZ21nSXRINHBTSGJuakRTdDlvRVJubzMycSt6aDdZQURCNUVpZEh0VUtGTXpWUjFMY3dWV1RSUzBaNkM4UlNqdmpvUndiNWRlND0=", - "pin": "111111" - }, - { - "alias": "bob", - "pubkey": "02a38857848aca6b32ebcc3c85d07ee41354988f4f1e0b4e6ccd255eee6ed75b8d", - "ip": "http://bob.sphinx:3002", - "external_ip": "http://localhost:3002", - "authToken": "KGxi+fUsk+6t300DGsgH", - "transportToken": "MIIBCgKCAQEAzZJJHpJDSphEh/beeDIo1z35MFFFjUcFZFUdd63YmfwldO6we88H\nxP5VuluX01KWahjlFqpW7SPvMwOcJ/gZeg/HQVGgowApGrV8rpxGb7Ly8VtNTRa8\nghSbQ2Hg/NOoaQysqpXleR6JkRR2tixy4OeM4pDas2IolV8Z8GET89l4zYdQ2sqJ\nBoDFXW1PJvhJySiur/1Px2x6Yu2lkbwVpCNRH/v/lHhWDcOsxhCBp9JRaXt31vzv\nvOJgD4um+NAVke/yV1TA6ArysMU4Zvedt8Q32jMGhypKJbVPKfjF0/gwJzai2G4n\nHFhEpI7VXiNnw4HzimwIp7ttSWZPQ6LQQwIDAQAB", - "contact_key": "MIIBCgKCAQEAprL1Q8VYvEbbGOEZIO9Of8SijSFSyTtr5Wqvqxw0oIaWdSLi8kL1bLP6pUxXdOOXgZfKEX/APMJcWfCRbYWvrml1vK9XO3qtH5U+lldcgLy4xWeyIlm4yr2FY++UkuUZBQCxrFv99YTDqYAZ0BiN4CtGBKDbAbDm1uDk0ZRAWSMvZWTlkj5156LtW/zkveHHhP5AkqZowrwkfng5X4Qhny1YEUgiMiecvkOcNokKygXd1kD1QM0bUNhtxomOuip/bXjJEN7/q7PHMXYTV2gy7oP9RqCEncAm75DLJUKkn+ERhV8XW/o3W17M4OPAyOKquu0PJblHt9TMa+DfJa8ZqQIDAQAB", - "privkey": "MIIEpAIBAAKCAQEAprL1Q8VYvEbbGOEZIO9Of8SijSFSyTtr5Wqvqxw0oIaWdSLi8kL1bLP6pUxXdOOXgZfKEX/APMJcWfCRbYWvrml1vK9XO3qtH5U+lldcgLy4xWeyIlm4yr2FY++UkuUZBQCxrFv99YTDqYAZ0BiN4CtGBKDbAbDm1uDk0ZRAWSMvZWTlkj5156LtW/zkveHHhP5AkqZowrwkfng5X4Qhny1YEUgiMiecvkOcNokKygXd1kD1QM0bUNhtxomOuip/bXjJEN7/q7PHMXYTV2gy7oP9RqCEncAm75DLJUKkn+ERhV8XW/o3W17M4OPAyOKquu0PJblHt9TMa+DfJa8ZqQIDAQABAoIBACwDpG64dK2Bp+fxx0jC5t8ldCX/XnRzlBGHEcsEL4ETCDb1dyawN0z0WIG8nnrmfOJiyZ/FM2TXjLrSohNg8PoELmobgdTal0t3hIb9mhcDvWWh847OUdR2Jfo1D+2ZP/nqLP9taqig3WirwiUH1q4RvvMJ5cmUg97IkqIjmrnt+y2D9SLc9kPA8f3Eq87a7TQBjACzznMQEpW3IuOjwufvonjp7on1iVB999H0wNMgRBUSbZOQUKkBAEwXR30s0Q2ML2RmOymJ1Z/EYS54WeghwVKAFTNzQt6USvKpI7ERi4MEPD99GN7kfMkJA/YBz7kuLXu64N3yDKgw7py+seECgYEA143W0awN25dvXis1Ja0x4YDE9IX5HBbVPqmqkVLSOESygpLq6TMrxOZwuGB89tVkY3hYpEoi4Rd7aZc7hcOj806TXcV2Z0ADm8oYYDMsey+E7wNjSFdr58FEa5L4DQIjmbvYzTGelgdl4Wu+TBrpEw6uw/kyRM95QsU1e1jGBGcCgYEAxfpdKIKfe+K8Sq66lfGycTd9Wb7NgR59mO8NcLy1IOzYpzWC3grgksDfquit8f1fcraTp2RKxYHjzW4J7az2xfX8ix+Iy1D8DAQn1aimHNA4yoBKBalELO1VlRU/umEvBSclfKXICYn7HTP3OUe//NJEHN6G0zLgpclDurTsp28CgYB855wLc3+0N1Q5ZSAu7OVynoOCjf+D31dCMF6+Rxe5s1UdhLTK3PQH7OB0drTy80Rwv1PeH3eGp2zECvZa1Ls0SdvrAnlR6y4sIDdvxzeHSknlljj5um60pLFZBJjoMM0gUFGY1Z/nn/HRZfWndBCLEn8C4GvYo8DIiC4tg4t7EQKBgQCuqbpkkhFYP+o0zUCqJwlyHy2E7vPpVVgjg8vMyX/XY32kz238rYYBkw4Bf7RuyUXbM77CsJXS+ExdIha6TJ2Oev3qU9Dg5zrm8wed1WNwCjgAV/x2UCZoqJ6Xn56QtUrBdg75kF0SJVyZIA6dx3JW/7695Yj3bWyKdy083H/pGwKBgQCJEyihly8HvRnSPYD+tPFmc8QkQB3xZ+0H9G+jlD8dPg3WxDsh4cWKmgjj97TCr/Ufu7ixal28aKda2x6JlNqwng70xnDkA24gdyoHr5/MVS+4yYa28WwZ5n16DLfVX3s4DluS4AiYXsTD5KULTv7q1ZBivvbmzBKn3z+D0zSTPQ==", - "exported_keys": "a2V5czo6QXdGdDdtbnRXVVJYMDcyQkRtZUo5VWdVZlBmdEJzSDNSTGU2cGZaSVpPNTN1dGh6QWFiaUU2MWFQUUNaNC9zeWFiWC9CaTBDVUQ1MmtBNFdiODcweTZRclZWb3FXSjNQdkN4UW1vcFBEMDhlMWdYQk03L3Jod3Z2clEyUm9ldFczWXNtTjJkYW8rRVFDNk9iMm5PUGpNYWdLSFN4Z0cyZ3cvTDhHd2pHT1N6S20wbnJ5MS9FNktiVHUrM2xZNXZJdWxjM2NUTzg1cmwxZnZCRTU3aGVrRmNLbnZYd214MjVvbHRLR05VaU5IQ1dFUGFBZ3RVdi9xczdvc2RjQ2d1YzlhMU1OZUErU3lUbllWQlBMQWVnWGpSRkkrM00yaTVUMUVLaE50aUZsMXcwVzhTVXZJZzZRQW1SdDA1NWhib08rZXdmVldpcTNRQW10OXZ5bGFsUnVvdERBaStBWFdOUTFuWTkvK0lsUUppdUZyVHcwNnd4NVJQMzM1SjQ0STUzTklsblpnYTkwVTgxbExqWlZINS9TVUdkenM4N0RlRE93MGlJTHJEQ3JKV1gxaUJsaC9OQWtGVTJKM0pjU2Q0elFxSUNlOFhNYVI3em1oS0g0TUtycTlHSmtHYVdJelNYcVFhTS9jdmlvVE42M0RtRFFXU1Ezbmc2QkhXMkRTQ0szUEJsRnFBaHF1VmExTDBCNnV2bVgxMlRnTWZSN0FqeUtaSVBOVnNVQmlHWFc0aHFycUJDTjNJZDZtQ1lobFBJeWRUOFBSTFliSjJrODd3b1FkZ0Y5UVVwazhEVllkRTZMK0JlUWl6UzhKMXdDTzA5dFhVanJlMURrRHB1V3YrRmgxMkdkcUNNSTJnWXhibHlURUhRUHEyV2lCajhscTVxSG4zSmZTMm96L3dNWXJyZzJqTkNBM29sUVlvRVVTNkd0SmpjbkhMbE5ManFZTFZGR0VSazBVSUZ4cnV1aUh6VXF5RHpjOTlBem5lUU5kVWRpLzJ5c2J0ckZVMVJuUm8vU2w2UGtIdGVOcmlHcWNLSE02WXNtZVB6SjNXbkJBUUxNKzBVcHN5YzVSUjNIZHJBT2ZoeVFHYnRJN1lXWUNReHRGZFd3WFU2aUw1dlEyUW9IREhscW9NSDdReGorTExTbWZQRDluSENuTmV1R3ZOMWttanpFQTRLNTY3NTVlcHVvWlRVWVJGUmdOOVUwYWY0NWJkanRTWGRIc3BvRWpoaVZBUzNBQVI2RC9rcmRRcGE0VkZQM2l4MUlqQTlHNzNmK3E4Y2hVcXNCZ1FiWWpJT1dKVVZsY1haQTBpZmcwckx0Y3NLU1NCcWV2MnYrT0VUa0djaW95Zy82R2xFZHViU1hNRzlpUjdvSE5qd043a2k5dVprODRPUVZYU1haeFdpMEpGcVZxNHhSMmFMWWgxWG01VWI0TXp2OTA1WFFDNmlzWG1JL1piZ05TdTZGbUlCM2t2T1g0QVlnWnpBYWJVd3kvQkVMMVprMDdzSzNxNGpOZEViZWNqTHYwMk9MMmV2VkMvWVBKOHZ0MExNb2FiT2FvVkptZ0k2bCtYc21Bem5ZOWZHbWFIVS9mWEFMWFVlRWNOaFZvdEdEd09sYTBoRzBqdXEyU1l3OVNDN085YzJYMXZPS3R6S0NYakorYzBCVmRmdVF2N3ZaTm5jaHBsc2d5UG9CTklJcyszQXB3eS8wYXZkYVI0d2xTcUMwS3kyMFdkM1RRL1ZRVTNLLzNETWVQT0FydktpaG50N3RjV29lbGhLaW01QlBJOWxITEVhYmRVV0ZoeW1xMFZBVUN2Y1RGYVNmTEFuR1Bwdk5sKy9QYnI4ODZqVjJLcVNhZ1ZOU29vWGpweXdGaEEwRUF6cUhDY2F1ZXJ3d2FPaDJnSTlCczdYMkIyeFdKZnAvVXo1a1EvVnJjUlBoQ0dYaXgrR1MwN0ZZdjVkNzBObFYrK2ZMYVJPU214OTBaWmFQR200dG5EYmtBT1p2V1Eyc05DRng5M0xsMVQ4djlMaHF5OWsvL0E4dXBTVklDNVhHTXZrNVJIK3JuNDQvZ2RtYXVTbW1uRU9wTUJSVm9pZ0pNTzdZRml5QWFVZUxFN1Vjc0IrTWs4c0VyU3ZDeHZ6bjVhdm0rQS9lcjF5dzRGdzQveHpXNm5LdDFaQnRkZ1FVbWFkemZzVXRNY0RvcEVCeEtlRTVxR1gxb25tQzdXazZYdzc1OHFFcTFXcldWUzBIQlN5cG40d1BCbjBJWFIvQ0NRV1BrcVZQNGZhZ1ZCcmVzbVFkdEpEUWpjVXpIOHhieUg2ZGIwM1ROU1VZbUhUR3NnYlpMYkNtcTdsWFNuQXJHRlcxUUxSem5hZmZNcEJFQU5pZ040a3lqY244ZUlPVkFwdThjVzFhaGk5bzRhd0NKdmJDUEtTSWdDcE9iVGYySWltMHRtRjhnbkdvWDdEYTAxRnF2VHhsMGNOb29DejEwWE9OMUp1S0JFYnpTMisxaFpFL0l0WUgyejcwTzVjemNGM0xHaFlWcUZCQXVLdnlEVXZtRHZzdHF6NWZrWWNHV2dUV3l1a2Z1cDF2UEZIUG1lNks4Q1o3NU9hOUNoUmZsUXVEdUJvdEo4KzRMc2U0ejVMbkJpOExwcUpybHFUS2pRUkpYTGFPN3FOcERKZU90b2R5bXF1RFdHL1pSeUZieitsOHJKRWJUSDJERnhiN1plVXIrZmJOYVVBbjFUM2oxYXgrcUlVcGN6OXNqYXB3akxHdmNGTXF2K3NXdlplblExUUJ3aFZBUWVSUGlrb1NTdUtjTFcxK1lNMTVTN0Y4WHhYaEVrV2YyNGc2NTlDRGNKTE1tMjN0OFdXeU9qMHpBUmZPc2pRYWpCbEZTaGlXV3U4c0ZiN00zaGJ5aXNBMzFrUU9MUUtxbjdkWjZuN0t4NUkxVVNNblhoUXI2QzRSTVVvOHZsdGxyd0N0aFN2SFk2ZTM0bEt1K25zdHZobzhrZ2lSdnZOQWFySUl5aXVRQWw3Qi9SZ0RGTDB5dWh6Vm5NQ1BSZ09Oc1ovZE0rV1U4QU10QzNhWTZJQi9WM09hb3d0V0tBbUhHSklGbjdWSm5YbURwb1JJK25LdUk0dTUxYXRjUTVsbDMwZzRjRHZvamhlQzR3MGlNdS9tN3RBNE12V2NyekRiK213RzZZaGs4WDlJeWJ4ZnlIZERrdlVWZlVXVUk2TU9NYmZ3MXVmUityQVVSV2pmVlpMYWNxZFJsanNCK09NYzdIbXR2ZkdkNXdSL0F5S2tGS3B0dlM0b0V5bzh4MklCRW5RUW1YTHZHeFNLclczWDFJcTN1UnBRL053V2YzUjJ6K1RNVDVZWTFWaWhSaWswQ2RDMFdaT0hkV3NMOERmQ1F3M3JsV3F2Tk1vN3JiVTNwVzJJNlhPOTRKdTVvaHVQd0xwV1ZIcFVUV1J2bnlCQ0xEcUtpdkRBWnJiRko4NHA0WUlPQUYyYnZIblM0SXJZdE96eFBhRUN2cVRJQ2lBSWVzUi9hR293OHlyNmF1WU9NWWlVYzhkcjFKUndhZGs2ZlA2b0M1R1R3KzFNbnUrVWZDRkVkcEhwZkQ0bURiRElGcWxhcytrM0YvTGZEejBRYTZnSVpucCtTRFNnOXdZM1d5RDVTVmRaWnhLaytUUkNxSGEwQkRsc0tZNllBaz0=", - "pin": "111111" - }, - { - "alias": "carol", - "pubkey": "0364c05cbcbb9612036cc66297445a88bcfc21941fd816e17a56b54b0b52ff02b9", - "ip": "http://carol.sphinx:3003", - "external_ip": "http://localhost:3003", - "authToken": "X4BG0sDvdSSP6RlF08DV", - "transportToken": "MIIBCgKCAQEAwHJUGBDTzx7wzGGK+ZQaxWxYgJxhnmghlRE31hh4pXUlKhRtVLn/\nnCWo+DKsDCtCdhNPvVFHcenZxmTjNCsXq1bwkq8zprcFD7q9jy1/0jM8v5pPFdn8\nVrHYbl4+AC8ldNwLm++fjdNyqqsNvc70THdwXSSbSmycOLaFR4AS0PmsS5+bZ0eB\nmEZnWhmWFe4ySqgVA2NyrbcRyfeTmINRcG3VSHOvy/QCIkm9aydnxt8Z5LcMoKCh\neUP+XznQuuvt0FiZfFZib+6RrVOs9F+SBJmJqRsZghAktSCpCRuUuCzPM9VFEdnM\n9sPUVU3ENSpnVBa95Up0ZL77AA7JMul9zQIDAQAB", - "contact_key": "MIIBCgKCAQEAyV0VMXwmVwUCoC9f+GJi9KCTWs4z9Mfty5wuplBNTDG883aRp5p9CMkk/DJBFBfo22UYDLB5T8Bjob8gbtsIBJEBaUstZAA1Bw9KIzNKbhHT/l3D6bwE/aZEaeYujN0I8OGYCNbZjFv5O7cCgi0m4KcbCIsDgas/lDJYQ41BH1AqOtJ98HxddVibQLp7abe7C2TCxf2lWtWATijMma7U0LAupGrQ4qOpPtHQcHK/EycCTxX1Z3V5i6Sp0sPgSir+R/JqNEah3kU2UbaEc+RVcFxAbnzgkSIsZhiBkg92iWMYiiLah2zFd4sMtRF9EOU/SfKHOAaR3US+V7HZmQWgeQIDAQAB", - "privkey": "MIIEpAIBAAKCAQEAyV0VMXwmVwUCoC9f+GJi9KCTWs4z9Mfty5wuplBNTDG883aRp5p9CMkk/DJBFBfo22UYDLB5T8Bjob8gbtsIBJEBaUstZAA1Bw9KIzNKbhHT/l3D6bwE/aZEaeYujN0I8OGYCNbZjFv5O7cCgi0m4KcbCIsDgas/lDJYQ41BH1AqOtJ98HxddVibQLp7abe7C2TCxf2lWtWATijMma7U0LAupGrQ4qOpPtHQcHK/EycCTxX1Z3V5i6Sp0sPgSir+R/JqNEah3kU2UbaEc+RVcFxAbnzgkSIsZhiBkg92iWMYiiLah2zFd4sMtRF9EOU/SfKHOAaR3US+V7HZmQWgeQIDAQABAoIBACDprgUgncOrdfpow+79Zd9GP8+f1K4135BgPt/AUGIb3x6MStJyVe2RsxHlxO1b2xvBMmUgkzON5rsRWmPEOVNFwE1NlGW8Au7ceOm4AHptP5FcEiGqMcaj3prQnNs5ZbS5qvgG5hgjEGHKUAanCqu9pJWI41HWg9XdRMAF3pcXYKWvxwhYZ0I9NLETFfHO2KRh81ZLGdMAIQEPC7HDJaM2rzpMPtUZntncuSk1vezYipj04Czf2pCVlpYmMoZhrYkN0W3timknRtwY1n2zKbqbIAQyGRGl47rk1e76nYm4AyGdM9bEeaXYmx8nKu9dcXuQG7VClPuzBHekZ3d/24ECgYEA/ThfmROBY961ITgYGYC5NvMlawHx8ICIi5HoA2j0ZxZeLnGbuKun62Eb3mQ7t2MxpY7of3NNnAf40+SUnvsb2Ct8z/VKujhlf4nDwLv834Yzd/qbYs1OXBsbpC0rdpk5HH3b6A+OFhagLJEfsOI7+ME8BIHdpbimzf2/59X2oC0CgYEAy5L582P44aB5P/QuvMxkjTHN+bIchzRNoALM0A3ExF/5/wcindKZYHu8wYkWKpzgWFFNK7suYQp0aT8iPP5HErxnNEDrpVZMsMYLLLcZkLv3lc3hLJyoqv4d66RaC7AsvIjsYpmz2WJko4os0xmfH1EKE7HNrCLlcGIlNDOvJP0CgYEAyVlaKs5nxJICVTfVcfH5VMhiqIQTbbnG2bRbWNrL/Gy81xFfUaitDW1aS6xID7rAb3UDStTUkY2FPngz9XaW3X028eWKVikiDBfvoAHbQaHkqzKK/DVkabjkcde5B8UutIkfo5c61DWJh+ad3HkIVvTQVIUvSedaO9HaFu77/MECgYAbSDxFOR2up0H4pzHoTYAgSA9xqkQWfpT0n8txCpdXNgGcAwnJmuLBQnP+f++/kDykuWidNr21daA6RqLBB9bglO1D3Ht4MgOfITt4J6W+duJsaiYGQ4x7Ngkufl0u+dJVBgigAjdPJ9eS7z6on+NqYAL4trh4nEihchXIVDDhxQKBgQCwOvhI1ovPHe7WwiPFfPNTyop6PUw+Y5pvM/wPSOhzBpnmYcxiQjQd61ZrzghHp1IbFCPfvPeSnfXQLfBfVUEdOQEHedOpstKKeproyPbfEMlo1wMOMJWt23+06sazq0y183Z55L7JvgiOqIZItGsxe/waSNiinrHI1txbY+2mdQ==", - "exported_keys": "a2V5czo6QXdHd3VxMU96WVVmYVFEU1VLTnhLL0RqcUh6ZTUzSytNckUwTnFyQ1pRb2kvVUd3NXdJak02UDdPeHBMQVB3SnZMTy9IZ2dpRHNMQ1czbFJ4OVNQb21FU3dibjZmMmlqc0FiZ2w3Nzc0QjZMazRXL2EzQkZzQ0RSVDNSLzhoVzFrYy9vTVVvaHAySGNvUXJnNXRaTUdNdUJSUzk0YlJpdW84RExMUTVFZTIvTVFTbS9xWjNZT1YrcDVPL3VYTFU4OGlVTWdCb3V2MWVyb3Y0enFBc1JqRVlXeUFzRGVOMjdwTUUwaU1VT1BYeDVVQStHWFlpcTVMOHYrUDlCdThnSVpiMjA5V2JJVnh2RW9zZzZrWnp1V0xQWCtCS0ZIQjVCenlHbWhsWEwxVDN5Wmt3YkdyRzBTa1RQa0NHTFAwMHBUelBtUkhRR0dsVFo2aWxsaVY2YTFoazlXWU9kT0lRQnI3eXduN2o4OGlGNUJxWmthNE41WCsrbVBWQ29jSVFBWnF6cTQyUjZtN3dUZTFQRUNxVEFoQnMvSjlvUEYzOXZBdkVaOFFCWU05OU9HMVdoSllmR1ROaWhIWnMvbU92MFZZbFV6YS9aMFJucDNlVHB1dkFSMnppNWlTM0txKzhnc3hneE9tRmhLYWthU1grazBXOVluT3RMUGVKcXkyZ05yZlZaQTQvZXJhT0FwZGlqMmtrSldRc2xpV0NZM3ZnekNnNWxnZFd1aVJvclJralgzMTYxL2R1MVlQSVJXbjlpUFRvd2lyeC9SVUJZK1U5ZmQyOWJpNVhTdDk2SVlBSXExRm85cGc5V1B2eGN2aUJJYTU4SWNIU0drdk1WRHBTSHhVT2M1RnU4QXdnSUpoTTJjR2E5OGpmc1VQWHF2MUxkMjJVTUJVWlIzRkpkVzZGOUVGS2ZjQ28weGkybnh1OFY0Q0tKUkNrQnhTU2FIWTVNRURvd2RKVlFWWGVtZlpXbVBEYnhUNDhCTjhack9LYUVZdDVoZE5YZ1A2ODMyc1A0SVJJTXVFZWVvNThvb2ZCaEZFN3k2bVJUTDloUlBJd0dPSHp4SDFiUWxnR0pVRTlrZGk4dURKTVRUbjJBejcrK0dFWlNKR2JHdWtsQTJBdmNMaEZCREc2ZzlJWXUwMVhWVjlEUE0vWGdxbTJpV0JHRE9ZWkdIblZwVjE4Wm5PcmVPV1lpQVFsQWhUbXc1dUxLRVJpVDFqbEx2endKcjErbTFMWjY3OUNpVzJ3bWVja2cyUTVjUnFBTitzNm0wM1E1UzlHZnhnZ0hZQnB0UHdJVHpyUkhQS1RQb0FPSURsY1AyQ2hXQStIbkFkUGtwRUJlbjg0NHh4WEN3Q0k0cFNrRVBSTXZYWmdBamZKY05NbWNlV1lQMExhTFh1Z2N5OWN1OU5wSXZlcWJGOFM0ZjhzT2crVTJncUlQNWh0ZUZ0amtiZ0hYTHRuQmM4Y1FkdXBzRzdwZDR1WFBEU1NWQjBtT0U0N2s2RE5PVXJMRzNFejBFeUF5UDdvampIL1FxcGpYVEJVMmZ4S1M0MUhTc1A4TUlsOGNnOHhjWXk5WVYvK1NXOEhhWkxPOU03cmxMZTJ6MHI4eGhoL1gzMGNOMFZaNU9oeGRwRm55T1Y0TU9oUkUyYU0rZytobGtYb29XaEpWV0RiRWJ2SjhmL2hvWlBmdTZ2Q3pLNzM2VnZMQ1U4WERrVEwzU3QvY2wxVlcrMityZEQrTUpnWlZpUU1UQngyZU5HdHBQdXZjbWhmSjR3Rm15YmlVQ2ppQmFjOUVBako5YVBwSmsyK2loQVlXVUhDQktJMHZ0MXpoT3RqTXkydm5HSGFTTWhSZFNpWXM5VjFodkJKT3VzYmRlcHVNN2FoY1hoS3VzSitnN3ZDSVJJV0FkVlAzN0N2VUxRTU8rR0dYcFUyRGlUcmtvS01NOThuSVYydm9UM0JERFBFRDZJcFFUanpONVdVQ0M1QUJQY3JMdTVwRGw0VUkrTE1pTGxrVTlRdzBuOUdwVHdXR1VxN2p5SEYxSlJiN3ZUSUtJcDBNYzNBRjhCSkQyVmJhc2Y1anpvTVd6TGpYMzFIUmtpZlhtN0Z0VisyZXRCR0E3WG9zcmZXQ1NpTExIZmE0UjRzZDEvSW83UXBsd3dPT1ZFZjRyaEp5R2F4THpMN0Vvb21OaWswOFowQkxIZmVSQXVsRDJaV2RvUmcxakpzNnNRVU95SG93eHhwTkpyMlp0SGlFcjZDNTZkemNDaHhMOGhSb2Z2cUtVZWlLR1VPdDh6NXFTMU9MSkdsNTRNYVEreEVYODRVY2I1RHNLTm9UWWRZZUl0TVFrZ0ZPMzFtbm81NVoxTDdYNjh2UHdpNUFEVVpiYllpNzlxaitLVHVtQ1hCRStjNnc0QU1JSU1FdnF5b2svZExMUFFHYVRzelZuYTk0b3JCMCs1VnFyQllyVVhmdDdEWlFDR0lML2tVVDhBR1liMHdjcy9Hc1g4NHczZWJsSXdrbVVVd1FpL21mK29GaENRWFNqT3cxYU1tMEdQTVFQd3A0SEZKVmJOMDhpQ0JzR2tDcVpSVEZyWE13bnBFWHlQaEo4cmVZZ21NSGdMSDljbEFlYWFxK1k2TGJMc2tadFErRkovVHFCcWRlczlFNWdRalZyK1o4V3RpYm8zVEF0UGRWanVMRUdSbzAzeGZVdHIyb2ZmWGdVd09GMG1DUTJGbTk2NGVTalp3dWpVVHB4OEtUQmlXZWVna1NLcVpES290ZmdURUZxeDkwdms0bGcrVXd0bTc1Uzc2ZzROZ3kyWVF5S2NoeXNTTU55Q2w0TnA1aTIxaUlaZ2pqOFlPM09saWF1SllUUDEyb2pOY0dnbWxWVlhUV3ZMeUFVc2k1QkJUQUhiTUVZcjJCek90ZitMT3BQMGpNZnVBbXh1bU5SVEE1eWFYd0dpWnZ5RnphVXdiLzVBZjlHRnAwYzZrbUt2QWtsVnppajdvaW9peDFma0ZNNW1jSFZqcDROZjNLVExUbGZpR1FuUGw1akRxQmNHRitxVmErSmFrQ2ZEUlNxMVV4dTh5TmIzSzIwdGsvZnBCazV6RGRlOWhSSGFTNHFGeEU1SmkzV3Rsa3VmZU1HdUJlSUVFZjluMWZmWmFYOUlJNUZzQXVWM0RaZnoxZHhzOCtWTFFSZWhyU1BrbkhlU1k0ay9TTHZMOVd1cjhxZi8ybXFLa2J3RzVMaW1Ea2VvRUFxektLOVZDMzU5alV4aGVNWTFENlI3cWlFeENVNUlSVTVtNzcybDlwVEpVOTVEVVpaYUI1anNtVUNNTkNxRDVGSGdhWCtRTXZwTndBa0tYb3lTc01PeWpVbWgwSk9wdjBUNHV0WXM4aGxXTEs1aExDL3FlWXUvZmRZTnJIRGdLSU1NbDAwNGJSa3QrSWg0ZEZvNGp4b3p5L1NVNTNRcncya3p1UjFBUlhLcHV4YURmRUtEUW5BZjkvS01uS01mL050S0x3NzZ2Rzh2cURidnNEeHJTeWFXLzB4dUVrNlVKaW83c1UyUzZtQ3JtMkxtaVZJbmdWV0owUTVGTVJIZUJLMThmbThxeDZFRXlXdkRHeUd2dVZCejRnczhRQ3FaZGprT2R2NFVQcEtwcVJFYk5UZjlURWpuQjBNTkNwVEk0QWIvYVlObE9RMVJKdU04RT0=", - "pin": "111111" - }, - { - "alias": "dave", - "pubkey": "037ec785c6004d512ebaeb0020f81a2bcdb6fccc9539f7b891f704289ebc65a4e3", - "ip": "http://host.docker.internal:3004", - "external_ip": "http://localhost:3004", - "proxy_ip": "http://proxy.sphinx:5050", - "admin_token": "r46bnf8ibrhbb424heba", - "authToken": "t5wp5GNZ4tdqfNGdSMP3", - "transportToken": "MIIBCgKCAQEAxnVZ6sgu482p4rHuOXm8vXt4U96p3LOwowkMSjmPFaML5eGa13TO\nE3cvjsVMLKHahamGCNaiOuKxbmKgvO7wdxqyi+18gt1Ziu4twm94noJ4sfREVjup\ni1vJgExjBOFzFg6w5Ezhgfd1Ft+shXZwstaxHzRypMjk9gw3G41fBGuySdU5gLnz\naxLDRHvLxHiKOIJECu3WTIWqS1lzGADObPoO7JyIKBTSX3hcHr9PMYHJqCNcHa34\nEGCldEsB+qCRrKDvc13bJd5U1peadUthJ3cYdMj+n14iJNkSa8PGu29N+OloOQLo\nQRRqAhBQSJV8F3c5Dn5mlUhBVPXTDdcAmQIDAQAB", - "contact_key": "MIIBCgKCAQEA36o7z8BpTLrUCok3BDlW0/guvwSTaTHLGgE54PcA9MEd4OB1Ez18sM6mPHNdrIWKrZRMRO4b5IqLmIlfWnsk3oougHQcvu5pEmta7wpFPqgPye7WR5u82j6dQG0KNxRkSLiLar1v0SWoJjYffSDrhjTWX96C3j8iW4F5VHY4BuM/ipnnus9A4Wh3JVwoInnxYHdd/jhpbF+QMRsfzdswYRmb6TQ+NLmnoj5C5HwnGQaclPdUmE/JRs1ox/louLZrZ8X45Kv5wR4Zt72yiklwdinXAUOAovcz9oB4Oj2oJnrrB6pM3R4KOew/dFr+0EyKpbPMTeEpXSyAVwtstGaXFwIDAQAB", - "privkey": "MIIEpAIBAAKCAQEA36o7z8BpTLrUCok3BDlW0/guvwSTaTHLGgE54PcA9MEd4OB1Ez18sM6mPHNdrIWKrZRMRO4b5IqLmIlfWnsk3oougHQcvu5pEmta7wpFPqgPye7WR5u82j6dQG0KNxRkSLiLar1v0SWoJjYffSDrhjTWX96C3j8iW4F5VHY4BuM/ipnnus9A4Wh3JVwoInnxYHdd/jhpbF+QMRsfzdswYRmb6TQ+NLmnoj5C5HwnGQaclPdUmE/JRs1ox/louLZrZ8X45Kv5wR4Zt72yiklwdinXAUOAovcz9oB4Oj2oJnrrB6pM3R4KOew/dFr+0EyKpbPMTeEpXSyAVwtstGaXFwIDAQABAoIBAQCWKrRnorbQFmvA+yleA6VhQbMY+tiB+zVyqzoR6aTRr0sBLZJNLa4nA0enNInDCBH4wqWGbht6EO7ypeDIXf9+DmZ0RgD6zBTtkfiGn22oSKv5Fwr1HwHnwbxQgiUmn+FI1eZ87t1BHbhMl3AC0fRvsc/wo/NXhinqJ/6vD4REUlN9TtXo/iM+Gt+jCYaN0DoadvQ2yLdN13KftyFpmZd5ChyMwn6szWLQKBCi0A71ovqSkI0ULG7kUs85WSBjdFt4P2C6HRCJrEE33PgLyxghNYYKNZ+Qxbcfum3Mz/7+CSsquEZi+NsdU3q14wK9mLm+twifnuHM8W9JCIOxv+9RAoGBAPNqtIKcBn1jRc2vQH/+slZAL5zNH8fpINo1n7cuwkvQw5PwBbl5VE/J8O1kAt3xWuu7LA051lPhGjJpL1URPtVhkf0WrroyuN33c6uVCzlurh/MJNTBpsIfS/ZAK8pa3XZz2JwewHgUBun9NjOZH31ug6yMMrxlceuJ+t7pj5QvAoGBAOs6I7AF14vCnPhyncMsnN90fwioCnOpx4OG+51OM/syu1xV+Tj9rLucFIWeKkE0FjTac2YzUyb0NAnMGke18Cdm8kxIafLsIxawgPM5e2vZe2HwkVQ6mipx3PRjKxDEYd2g9x+EkU3yoqcpCznEPldD4OFXsOVYGnwSVGfSfKmZAoGAM+yjLOlTiRPQJBwqSiNur29puK0ZBm/4jhO6Sj0zPTD/R2OAFRyIm6ycNEeNRQLjPj3jG78mtSXjjLVbX24aVTJHDhH0m8uOG+tZRVS53Dp78lR91tSoWeiLL7BopvXTIB1+K29z5yl+gBN/qGoViZA1jm0ptX5+WpxIY5y3AAkCgYBaZQhL36LaiZpK+7jWxTEvyhP7XqBNnIQYbmoJJIFjWjaYIE3a8dlMa4mTY5m3Xu3dt8k7ECQ3RwcscKv0vN0iNzSLzhQxDz/Yu1GCpqdgZb49f/ZJWQ/fmcwgem+VTPKS+gWdrhMs0j5hYKt4soqGfIZR8qH/MKFU5rJbB49ymQKBgQCylg8G1cBTd7InfEu4rj82zC0v3vAGRGWb8pIghRtgIU8jo+c3ZxPlVxPMe9hoVNG5vIBzN6lwLvpkC2osmnhYs25S71k/ADlVpielEymMGO5AaL68IoO/CT3rBJZcIF0Q5lm9GteolWTTet0+Fpasb5InXKdzOHRIFGAEZgAREw==", - "exported_keys": "a2V5czo6QXdGaHU3ZkQ4bTVULzQwMDZ1ODBTVmZBUnFsSkJ0VWRXR3VnRlVFRzdwMmRvN3dwcU93TnE5aXNOL2dkN2d0WVRKeEZ3KzhoVFdnMVRDU0dPVEJabmlDVEQ2N3BJcW1EUTg5Mk8zMGVwRG1yaVpVYllpUXF6ZUJNQzRkcUpxM01TUjRaSGpBM2ZaQ0xKOFFGcjlrUWFZbHI5a3k5WDlpY01Qck9BQW1qR2cvV2EvcmRoVHdqVzF2N0FCREJJV3hVamVSTHhMZVNFY3A3OENFZ1FWZHRhVUUxMmg5ZXZBTDBzRTVVZzhZczdFaWl2eDJOdGFadThjR3dna0dpVlI4VnFFNk5mRDVVR0hLMUxmaGVRN1FrZ1pVVkprUmNQcEFsVkFNUmVzNmFScmpCMUdSdHhNQmVFUjU5Zm05cmR3SkZPNUZVWGpZUjBCMFVMUER5aW1BVkRpWFJwQ0NBd3JnaHArR1pWdXpGVEk1bDZraDgvT1FFRFhnWlE5ek80VTJObktEUFYyYWpEMkZFVU1mZXJYNVhteEJTb281TTN0bU9TZ0JVVTI2dk42aEZiZHgwSUV6aHRWa2JpTXd6eFlhOFdDVndtcHFML0NMNVQ1dmxCSWw3Z2dSalI3RFhNNFJCR2poNU1WdEtoVTd6YWx0SDUzWERKdGdlbDF5ZUpMdW1Zc0VWQS9GQlFPQyswalorQlhQZHBYUUJBS2lsajFxNi8xT3k0eEFiOVZQOEJobHk3aXBzenhHN1puK0JlV0xFQVkrMDAzN2duSEtvZWNBaDFLb3dXQnZEbVRVUEsxU016MklicEROcHhwWHlQMlZsZ0p1dUxEZFZxN3pxSFErOGlyQWxCZkJqbElVY3JXUlozMXhqWkV1QlA4cG5HNXh3OFFUenV5K3hsL0dodXJWV3lyYkVYdkFGUlkzR0E0TnM5K1VqNXRadVdJQy9jNUp5MXJpNmp3aGhjQWhsYzRDN3BZYzdZY0REUWJCbGpXeWpsWGVPbzh0bjZTa3Z3elNKa3Q3V0hZSmpNZVdVVDJUbk5BUCtKcnFqY2JvcHROREwvTWdxTFFRWm5NR0pTc3pZVGthZ1NzYyt0cE53blFzNzZiTlEyTG8wZ2FvbWNOVzc0QWhZUUFOclRlaVYwV2hveDdXazQyRlh3T0M2ODR1Z0l5SGRzVWRDOXFJb3hacDAxc1hHajFUTmlEWDRHSm9keW1Ma010OXlqOC9xeStkWUwrOG53V2d1aStya2NzNjZrOG9SUmt3cW9ReVhBYjEvNVB3d2UzQld2dzFFZTZSQThkdVlnKzJhZ0NYaGZrRDh1Ulkva0tnR3RjOEhvcmkvTnRwb1lNSmcvOExWSHl4OGtTYjFUb2hQQkFIeTF6YTRuSFBjY3JkQXJkWDdYVmkyQWZJb0U4cS9iSnRNREdxY0NPSi9GUm1SSzcwV3ZMbjlOcTNXNnFDeXVmOEhQNkRRSUdZdXhSUkFUaEs0TU50aGl5MFc1Q1V1eDdGT2M1WnVJait3S0lYSzJVVUNGRXp0VWtDZnE0ZnBCOEdUOVUzZ0Z6dndxNmdNNzU4c2puUG04VHQrL2VtTHExWUJmUCsyY1RxWDF5LzZKNjY0OVBMYmRuNzZUMDBxc2J1SHNXWTgvTG5IamlxdWhlZzhXc0tRTDc1a3Nxb1RyWDIwN1o0OUU3TllLY2dMaDhGaThuT3EvdVQ4Y0hhV0szbnUvVnFUYklWNE9TRWV6cGtoaDdDQ1NCL3dmTDRJMU0vdG1WSmNLNkJCWWFBQ3dpUHJta2d5RHUzYnVDRE1Kc3kwcTAzbU9XOG5JM0JWSWRwZEJ5TDdXTWV1dlJUNGZWWVVzZW1MQjhqbXVYVTNYdnN6VmNITW5nV2t3Qy9vRmFWeGg1dFQ1SUR0TmRYaytObmVONlZMZEN5aHVRZmVUMlFJVVk5TnlLTlRPUSt5ci9rWkJXOUxyT2ErZlRwQVR1R2lKMWV2eWY5YlVXMVNnZThyakVTSkhObXNRZllYQ05pY1psd3Ixb3Y5eWM2bmV2Uk5vbW5CNUgzMkVPam9Nb3hGNUNuUXgrU29zUENQSXNqMDdmOEVIWnBLZ0ZobjNVdVNSNmJXbXh1eEhEbTRwRVdieFoxOU4xOHVjQkQ1dUZHQndpRjBRU2ZQeDFkeTZGTEZDU2hwK0FoU2JGQ3ZBdjQ5R0J0N3B6Q3NPc2MyZE9jK3lIVmRJU21hTnA3R2dseWxybXBWeHJ6eWcrbUVJbE9NK1BNSTJmZk85MXpkbnJNbXd1YVMwV3ZVME1MZUQzSk90aTR1anF0eUtHSEMxREdlU2hrSmlYYytqVmxEei92UHcvSk1iQ3lnQXpDSjJ4N1RJNi9Yb2tYRStFaWlVMG81c3RCUUlmMW8zbSszVTZyZFlsRXprR1BFYzdQbURTTXdrQ2tvZEc0UEthT2FVRm1ZLzh6aEtOMkQ2UGNEc3NyaE4xczdtS2Q0QURaOTkvZFl0NWRsM3lnc3JNNU5WSjlYdWx6QjcvdEhaUENBWUR3ZUd3QlhoY2xFTytScjBwQzJwNk5ycFJ2QXdZQzRVMUs2eXZaa0NXYkJkTGFKeW5pUnRvV3B5b05rb0VpTnJKaGIyK2RUcDJvNnJRR2lVelNwZm1xSEFJVENvbXhxOFJNYkRMd0RYM3dEZHAwNmIwcmFoWEFlOS9YUW9hZ2RLd2lyWmJJb1hlOHpsUkxRbU5SdDUvdzlxY2U2UTBVOFBHQVVobE91MmZKNHhsSFc4dXY5bms1NjQ3S2gvRWFUZ2EzdmNsT1ppTjB6aGtkcldZTGxCeFUwM0hoOWg4TklDd0JicUdNZmlLdVM1QlpTMTdURDlVUFM2WjgzdUxidUVBenpFTXdKblhYM3hYVDhvdDB0R2cvbzBZWVZBbHl6QlJSbVhjYXJGVUJHZFNxTnU5Mm1CRDI1Vm1mS2hwb0ZhT2x6SmdsL0lEYlFGR2krWjJGVGwvSENlckV0T0RHRFpoQytjS3BxM1dzaEtFQ3lid0NTUkgzVlVpOXIvYnl2dlF3WWpNN3ZzZktoeVJOWnpiVGhSNWNUdW81aEErZkc4YmJ1aHJXNEQ5aFhYQzVMVUlRUFFPaURqRVhuc3JQVTBGZ01IZzhiMEFmQWUwNjVpMHlScVNrYlJ6cXBRSE5FSHFLRFJHbEwwU1Q4bHJLbmZ5VURrUlQvV2RnOVdEblRVRFVUQlRxS2JIT2VDQytzKzc3VUp5M2drUzZ5MWZscFJUb3IraUFHclEyTWNyeFl0dVRkVUthckZMNDRWbXFpc3h5Mmg3WmFiSGN3S3REZGtJblNMemE3ckcySFpabitjSHYxUDM2MHI0dEt2YXZLUkFsMnBnaE9vRVUvMFBJL285TTVrN3lrWWQ1VHI3UWhDNG1nS2tXUTZCQ0hHV3VYSDhuaU1tWUMydFFZYmR5S1k3bHAyWWJucExHRzlGT1BVZHNJQmxnV2xZK1VmcStJUWd2ZWhxRHUvNW94NVJnSFVYSXppdk9QQzBSS0JvV3EvazVYaDJocjZDK0VPOWkveWRGRmVWRCtJS2RITWZDR3h2bGljdjlTajFrNWljb05tTXBCSFVQWnRmVWtxNjNVeUlsZzNUM0xsalI2RUt5Tkl0OXBGTDYwUlhTekFVSlBLSys1VWN1MXB3QT0=", - "pin": "111111" - }, - { - "pubkey": "027d21ae024366d3d01e7ba96ec27e50c2ff900c42fe3edcc771fd8a5d3fb01df1", - "routeHint": "037ec785c6004d512ebaeb0020f81a2bcdb6fccc9539f7b891f704289ebc65a4e3:2199023386625", - "alias": "virtualNode0", - "ip": "http://host.docker.internal:3004", - "external_ip": "http://localhost:3004", - "authToken": "f3yEOUCABYORB/A+I7RY", - "transportToken": "MIIBCgKCAQEAxnVZ6sgu482p4rHuOXm8vXt4U96p3LOwowkMSjmPFaML5eGa13TO\nE3cvjsVMLKHahamGCNaiOuKxbmKgvO7wdxqyi+18gt1Ziu4twm94noJ4sfREVjup\ni1vJgExjBOFzFg6w5Ezhgfd1Ft+shXZwstaxHzRypMjk9gw3G41fBGuySdU5gLnz\naxLDRHvLxHiKOIJECu3WTIWqS1lzGADObPoO7JyIKBTSX3hcHr9PMYHJqCNcHa34\nEGCldEsB+qCRrKDvc13bJd5U1peadUthJ3cYdMj+n14iJNkSa8PGu29N+OloOQLo\nQRRqAhBQSJV8F3c5Dn5mlUhBVPXTDdcAmQIDAQAB", - "contact_key": "MIIBCgKCAQEA2h1Kn3+L6WZkDrGWEdN1mmJd7xBfGEssR+5jSLpBD1EhG2x3Sj80RUqU42DTORHWt5Do7JBrrPJLjZciwEekJkDo0X7iNhvLqURU+i06cblrDEJCXAlTF7c3LZvaZVgHqP2NGl5s05aAq8+pz01LpXHW5R5qqLFmI7b2KErijAksw7xG9GJ5ZPM7V7fdpQrZrLWGBUOsV4VJ9kgau84DhbwyqV+DH0B2aAJn9p38siAadpSwRLmrNS1wk47S1/iYYs0P6K+yMatajz5cMMpSWt6GlwlQebnEnjYU07Zq+lhjocwr9Bz+8UVUUmBq5tM7BS8eMhBqX5AaXlatl8FvZQIDAQAB", - "privkey": "MIIEpAIBAAKCAQEA2h1Kn3+L6WZkDrGWEdN1mmJd7xBfGEssR+5jSLpBD1EhG2x3Sj80RUqU42DTORHWt5Do7JBrrPJLjZciwEekJkDo0X7iNhvLqURU+i06cblrDEJCXAlTF7c3LZvaZVgHqP2NGl5s05aAq8+pz01LpXHW5R5qqLFmI7b2KErijAksw7xG9GJ5ZPM7V7fdpQrZrLWGBUOsV4VJ9kgau84DhbwyqV+DH0B2aAJn9p38siAadpSwRLmrNS1wk47S1/iYYs0P6K+yMatajz5cMMpSWt6GlwlQebnEnjYU07Zq+lhjocwr9Bz+8UVUUmBq5tM7BS8eMhBqX5AaXlatl8FvZQIDAQABAoIBAQDXkYOjR+f78dqKOzHaxGfDAd1c3Y1e8Uz+erlds9eBT+mstPLhSr5ajW/BmnyoNt1D59CNnd8Nuxq5AdqytxuhQx3Xj9P7LlWHIaXq7LCKnXsTTplPZVfeZJIAXbzn1K0ddBr1KMXeCS16oW9vFzHgfjapk/pOZ6ZPPhDjmb92LfgbpCVCQbtupcQeujcfeOgkhiH+n3ehQS8tWLxx7aZ/qr3gZW0IQ0kI22lERJg8rWXLofh10a9jNXH/eFEMP5jT+F53joRKvHspUCHV1tMqb7nZzbJrEO0jQO0CdNmguZSlRW86jUS23DtVwGpWEHVd5m6SJ6XBU9wJPemS7ryxAoGBAO2W6VXy5kYgjajoOOtK9f3F0x/1T5NeiTJhOpem50KkL9n/9Wpw+duD68+FwiJ/1Xgyx2LJ8lHhK9nPP2SOnck+gCTbIKal4ArLj0AT4oGAxWKrr230OaKeujXw2p7hvacQ5gcKNIXabYeHyn0jmBrp9dCqw0UHDQCKUjSHiFtzAoGBAOsEDQFj+yh3yb6e3fwhlDRVXdfzFHdR1GzEv/HMqRBZZMUBngY5gc5FSDZkkU86SNp6iOEvzXJRsduc219oYsXU8uf8exgoLT4hQxaWcd/dpNSE3HgC3vC8SUOYBpvG03iC8m0RQWc5ZfrqQK9GQ2FPdWRi7mKiciHSxtJBkAPHAoGBAJsAjZIpOdoeeszrU9cNvJanbSm4XQYD8vYPQK6XkOCFRUKwHmgm9Jsl4b4twY3IYHheiH4GyjRo9rbO4siz0nTsdaWV4CNYrGXej8J6NpfObvgEkhrl7oQNkeaHD9n/5D8OY0PMgJ+i9ToqeQxTIHTOljRgc6yhAPaNRzxF/8vJAoGAMwDzDZ00MckleIAj7wcekekA78/qXibdMinU+lYPTuQHsZWzROiQGkMA9AUJYCdnDjtPn4dvT+MY9W9qUJ9n6EVZ3iz2TfzSLMytMaa+2fXRQun+qvD8j0RdphTFQmN5G4tXr4HyLsPPNRBHr4JRNzo2YO3zjGZy3JJQ4eqmpZsCgYB07nENm29IMLUVixmjk23uTFmgs8ujXDGi+V8KShFRT2+Z96qz8/PNrl7d21apFxwE2R+VczxjNLqN5dEwAYslCtl//r70Ky4Fs8V2qTBdhYgKiTmgPFeXK1217CTxx6sUOy9UV6DlXnDGLC7Fi6q9BgC1g/YjaoSfwNGi6PCPiw==", - "exported_keys": "a2V5czo6QXdHRFYvejQrVDBEYzFjNDRqRDdkamtRa1prQTVCVUJxaC9LMlZJYmk5YlROMDBDMThDWjhtWHBZd0JwWXBvbHllRnNlVnlJOFRTWWpORGh5TU9lUmtUN3lPK3d5cDRqSzJtd2U3Rm9NeXZMSC9aWDMzUHZkaFFSNWQ3WVhUc0dtbjUxOTg3YXRxdE0zdDFBOUI5V0wzZnFYMmgyaWxCY1NNK3BSZG9MVG9ZM1p5b0U0V281S0Y4a2pxWGU3REx5UUtmVkMwSnhRaVRyR1EzUnRtSWNTakVZbEp0OWtOb1g3VVRzOG8xSnl2WFJmOE4yMFBncDVta3B6UTV6UnRJYjFmL1RoNXlnNEk1VFlWWEEzODFzVmplRHdRMnpIeGxVZkRQZXBkbW85Qnp6NGRwTFJxU0hncXhoeG1qK3JkWUlIZjMydGptRDhBeEdYSGRzeDJNK2hkOU9tdlRXZ2hYRkFPbzRQRnRVNWVnanBndU5FelcrOGV3TksvalhQaVJYSjhHc05CTTQwRjNqNkhvVjFtR0lZQ0ZhbTc0QWtLMzIxV1l4MG1wWjVJVHJRd0VqYzB0cTBOOC9PaGw5YXBoQkQ2Z2oyY3pXUDZidDJ1Y1BIMnl0Mlk4b0JmQ0R4N1RRUyt5QWJ3RktUODB3NjYrYVJJSmJVSkVacDNRWTF5ZDFZVm1FZ29PMjJpS1JZemFYZkZqSzZ6TmNxTXM3bEpvc2l5Z3Urb3FVR3E3YTFtYktiSkxuVlR3SFFOTDVFcnNHY3dhNG9va2FQTGZZK09pZnkrRm1iT1JROWdtaHp6eGVGVDdZNkgwKzU2NlpmT1ZadVpITjlXS2NUWGZlWHZsem9PSmdYYm1TRjAzaEo3QTFVK3ZZdXBqekRRNEg5VlhJVkt2MVlCa3JtUlp1TVAvaG1OdC8rTDR0ZDJrd3BmeE54TlYvU1J4RkVaVHhOb0NaMVpidUYwUGk2eTBBUXgzek5JYy9BemtZcE4rMnlnM0wvVTM5ZmVUeWZrQzZPSXppVCtsVzNIZkh1NzVhZ1VBVFZ2b2xIbFhjSXNnUUxCZmpiT3RhYTlnT1hDWG5lOXdVcEtESGx2SDAzYTZuRzFTazl4YktuOVhIU2xxRjhaV1FiTUphRElFVHY1SVkwcy9EWVMxYmJUOXU1S2U5b24vekZ6b252WE5saXpzVEVOc1E0NVcyQnNxc08vSXdDMzRGK3ZWeTEvMXZNWHVMdUhweEk5M0grS1FDclkwSmwvd2x2LzJ4T3hTWW1yeFQvV3JoenFkRldkTGdFMW5YL2gvd3pMRXM2L0kwZTFjbTdZdnl6WVdCSTVCRTZNNUd0MGxEZUNEUC9ycFJ2Tkl0ZTh1MVJCcGN3MDFMWTZ5VGRBd0pmY1hKSGV4KzVWOU1maThzbzJGL3EvdDFIZjRpQXFwRU5QTzN4d0hSNlVKdnZrT3FXbnpteVM4dzBBdVhWcThMR2VpLzFUV2lKV3JtWCs5Z0VJZXA4aTZJdkR5UHJFSDZoclpkVmVNeUVwWnZ5RUViSGtTM2huWThLL1UwUjZtMXRkeUhHaGJpR1hHVDN5Rk5FU0tKWGJtZy9malNJUW9GVS9NenZSYWlqVmFNUEJ1Uk1kcFZoSm5vdjlLM09WYnc0ZjJuOUc5YndwZUp2MjdZdlYyekxLUmRKb2xuYkVCandkb1RlSFVNd2NXODh3Zng2NFM1L1ZaSk1xN0ZGWm11Y1IyUVF3V0k0Z2VQZDJyODE0WU95WENRYTRUOGRpTGREdzlVYjlIWnQ5Y0RVdlY0bFp6QUJNSmZadjZGYkpOM0pKQVd3RHZQYjJWK2h4WHJ0N0FEUVFaeE05cXlMa3VZK1hyZHh6MXc0RWlpRFdKSTVvWXVqajk3OEErRVZWbzBGS1VvaEVCWFp6U3E5UGpHK01lZmpJM0ZxSkdEeTBFZ1ptR1JadnZIaHcydmxkcTZ4SzVqaEVyYzBJZUM3amd5WDV0RGs0NE9nbDJlTGVaREk3cWFySVRsdjBaa1hNdWVZWE1JVDFYazBkYkZxRE5YbmFxNzdxcXlwd3pZSSswTTlDdFVpczh5eTBoQXdkMlQ5VHl5bTdPcXRybHNDK0VPM3NSLzkxTHdManBzbDZXRmd5eWVRNUhsV01qUHlHU3VZamNnQ0phSE84T2tVRU1MOG1lVENJelFBc3BROXFLcVVZeHlpL1dpU1hlWFQwL3doWDVjZkpMVERxKzQzZ1RIVnJaaWp6ZVdEUjFUM1pVRGE0YnpOT3lkNHdqRHlxeitaN0hhN1BUcUhtbzFHMmd5Uy82UGNvaWxJMVdiaGR1WG1iaTFKK3JrVDFZVmpCTmRBWFIrYlNvbkdTQ2E5VjMrRkhybUhPN1MzOWFOeXBrWHZmeEdBcWhJeXBwWll1dGF2SWpPOXVtaXVTc0QzNWwzSDJ0alVhWDNpZHB1MTkwZkk2dGFpZVp3QXNxZ1RQSVE4WWpydDZuQTUwMnhOVVJiUmV6aW5kNTd6cTA4TG1hUWRqQkVscy9VQm9yVmxrK1F2THd0Q1Z2RFE4QzhXVGRlN2FTaHRXRHFKSjJVRGM2WEVPZHVqdUdNNFQ2UDZzWXpjaUhPb0ozUTFvUDhwNXJwSSt6WWNmcEUybXM1K3ZnSld4RVJFSzdqcjZzQXVmaDdjN1lKeUZDR291TWxPcUxKbE1HWlZGNzEyQnBYRzZTQ3NYa0JPR0E0enVqREpLcC9nTkMxUGE2K3lBZHNZSGFrSWJBT1F1S0pGellXVitVQXhSSkdDcXJOVU44Y25qNXFUakZXL3c5dGt2K3JqdEhvSDkweXN4MW42SlBoSnd0WkN4bGlZdnRPL0o0d3ZvM0dPN3IyODlrdUxOS24rZW1qM2YrS0ZPL2xVWHVBeERZWGtSVUgweUwrZU5QOEhDVkJnWmdvNnRlTS9vQjg3TGpmdmZKUjh1bWZCZ1dUTzk5U0VtbGxwVm5kdG9Cd3JYREh6aTlwamJPZ09CTllGVm1ONEtuS0VxNW4wTlhvUWZrWFJhaXZYaHJReU85Uno4b25DUnN5MXdpL2dJQVFvQnBuSXp1eFpCSzQrWjQzeDQvdnlZWHZ6SFB4YThJMmg5Z2ptZUcycEk4dmpwRTY1aExTeWpxWGNsdUpPMEdNKzh2VGFLZU15VFhzeXh4Q2xjS1pvcVZUZ0ZzcExVQlF6aDJPQTkxTmt5ei9nV25jOFdJYWlhWi9HNDk0cExndVFrMWVXMGgvM0RjUW9Ka1JrWTFjYlZhNmFUNXJST0NpNldxUTNHNWRBVTJpYjh5SEZhYVBzSk1pTFU5TTZJNkdRbDlPVTVISkJvVk0yMHE0UzhobjdWK0JGd3kwTmRwSE9oMkFpeFYweHBreFNRd3ZRL1ovUzlRTEdteUVMdkpUK1dGTzlOVmRXUTVwaGU1K3V6aVVYN2hIbXczbDNKVFNJSjM1VkVsTGtaVXhOMEdlMjRIYWx0LzNEOE0wZVZ6SFhDL3EwTFVhRWhLSkdQczRlNDI1SVhnNndUR2doTGpCU3pFV2JvbkVBdmYxcEVXTWFvUDI4cE9JSDEyYWwveFlnUEphZU9OTWxzYUl3M05OTkVGU2RpYzhRa05qalNsN2VpUDVYekoxNTBWT0hBeGNKakxLRXBDNGw2ZjNuVG5SVXZrV3U5QT0=", - "pin": "111111" - }, - { - "pubkey": "0281a5e8939fd42864dd8172e49040ddf633ae7e51e100e2e8031124c1fc81ceb6", - "routeHint": "037ec785c6004d512ebaeb0020f81a2bcdb6fccc9539f7b891f704289ebc65a4e3:2199023452161", - "alias": "virtualNode1", - "ip": "http://host.docker.internal:3004", - "external_ip": "http://localhost:3004", - "authToken": "D61EUMjild9adIE0X8pq", - "transportToken": "MIIBCgKCAQEAxnVZ6sgu482p4rHuOXm8vXt4U96p3LOwowkMSjmPFaML5eGa13TO\nE3cvjsVMLKHahamGCNaiOuKxbmKgvO7wdxqyi+18gt1Ziu4twm94noJ4sfREVjup\ni1vJgExjBOFzFg6w5Ezhgfd1Ft+shXZwstaxHzRypMjk9gw3G41fBGuySdU5gLnz\naxLDRHvLxHiKOIJECu3WTIWqS1lzGADObPoO7JyIKBTSX3hcHr9PMYHJqCNcHa34\nEGCldEsB+qCRrKDvc13bJd5U1peadUthJ3cYdMj+n14iJNkSa8PGu29N+OloOQLo\nQRRqAhBQSJV8F3c5Dn5mlUhBVPXTDdcAmQIDAQAB", - "contact_key": "MIIBCgKCAQEAuoZfr8R02CVQZCzkHSn2bNUWS43IjzSilU1mZ+9VPMrEU4lZ3TwKffl2Kh7Mxg+66frWgCQRaE9iY0z0TXlnaskHLI55dVR90x+IrN2kDmpOyjx1ppNuTeZ2tCt6oSsnZ4KmTxkScwZfBB+a0CLlhD4h8OgGKGDdav/HGUdksGBAD74f1uTIqZEifsoy4jlUWm/uDzNanQsxUW56WNje+3lProc6AY5iCszLslOAHX3pH8/bkPVS8d9H4szktnKT4/PwCa4eFE+qk5FLMzUulN06+U05uj0NqJmy6Yu+sWfZgM88nZFNhdBnF0C8/hizuWppTDy6hrW3nVlBqRONRwIDAQAB", - "privkey": "MIIEogIBAAKCAQEAuoZfr8R02CVQZCzkHSn2bNUWS43IjzSilU1mZ+9VPMrEU4lZ3TwKffl2Kh7Mxg+66frWgCQRaE9iY0z0TXlnaskHLI55dVR90x+IrN2kDmpOyjx1ppNuTeZ2tCt6oSsnZ4KmTxkScwZfBB+a0CLlhD4h8OgGKGDdav/HGUdksGBAD74f1uTIqZEifsoy4jlUWm/uDzNanQsxUW56WNje+3lProc6AY5iCszLslOAHX3pH8/bkPVS8d9H4szktnKT4/PwCa4eFE+qk5FLMzUulN06+U05uj0NqJmy6Yu+sWfZgM88nZFNhdBnF0C8/hizuWppTDy6hrW3nVlBqRONRwIDAQABAoIBAG8tXuVubNLU0ukS1NkJRQezrzlThmLNVcc2Pj7fKeg1V/YO3VB/1CUoRyVt/FJl19xVFfuFBBcvkg5sNQXkwh6lOjB1r7GerezkU9vttDafaN0kUl/6annmT4SukcZ06WTKPATTheqntoTHrcg3tKQxQJvOQLVanz+Cu5K2ui5h+eXDCVYhzLs3ZwJD3EEHgs3zTCpWV3EYW7Td3/5v2VJH0ljG7PEPDCgD02Z0RP7EXl2LourIUaqRgkAeWZLfzuUE5me4uY6BMMOUGRhJKPcENRieLzJ4GunuL33AxR26vAwDFAPbeyFxkxGQLItaX2Br6CBUNb5aEWRDOAMAwYkCgYEA95AtmCrBAmAVKkf8NeDhxiUj8GW48kXOkcBxKh7GuAioF6hB4TWPAsWh1m2onjeId3wzDxAQF/N1Y8pyEkhTmE+uT1Dcuc1jFPfsyFqACKNqDytI5YfDpgXWmS2nRC56sO7pe9nJs47t7IYCQEYafH1Li/XP/WonRVHm3qblEpMCgYEAwOGtfUOrVBDSWZn8hXuh1YpJ6aMKDjhzH6dC1y5tJIriVR/uw36o2emLEAtH0Qd/TYRGCKfNVwYgQBUtztMCiRIbfhNzxC+uNM64vMbuzEAmYgDj2CXerivJ90GdguqT6gZaRjpAO2knWlYVeysr71MQBG2CtlGEQebBLYl0Rv0CgYBRdvJqBnepDnEojrOiDzR8fbBL5U1s/Cezsr4KfEIsQTz/O/Eh6Pv8j4hoBYHdPqz7lLVAmaqSFx1kDzRma8KGdoIHu7ZGth2KwuL6Mz26mfvGrhm43mo1cepiUbGfMCRToOrYRJypJ7mHgbmv6OHCYYDAt80PuSTfHMp6LjVnXQKBgBdmidTLs+qEC/Eg9HkBUdYFbAgzZpHpGVZ6xWoz0LwBOYpYUHBZWoTth5iPtcvPXAt8g76jFQ98x8beiusvwHv+vWUjWQUxP7JabiFBBVG0arOzJfFgTs7UszETPdfXO9DFqoggoxBSJpsYHI0P5MmpSyUuYBBcfW49X6x1o6zFAoGAZCAw7xNQBbY8nZt2wLsyfa2+l7qwUMJOSuNMWM42Y8HGy3SJiO3Uu2XE4uZ1C7/5Wcu0Zbo9b7GDX6X8XfBrdIK2Tasv4CFfUBbTDyPxwzMZh7Hadh+u486s25HxNXXyGUUwHzUw2HJvFXHQxDiIVEeZo8gBPAUb/OU7eBpJrrE=", - "exported_keys": "a2V5czo6QXdHL3NJY1FuU3JadzByVjdvTi9CVEp2d2tiN1VkcmFDZ2VsbTEvRDBMSkJscWdtSHlSZ3lQZkt0NjA4TERzUlZUaTdydHorS01ZL3FlUGxyWktlL2dYOHQxeG5ieEJFbDkybGc3U3lBMVNHaXNON3BWOXcza3pWQVJNbkpBT245YUhNYnVybVcrUmhRblNNK2VPeUhWUGJIVUNYaTNhSmw5emdQQUlpLzBmeDZTNy9lMVRxVnRGK2xOWlRjbXo5UHlibzBreS9YNnRKNFVRMXoxVkYzNEhrMjRrb2VhYjhFNlRsUXZrL0x2bHlsNkp4RktjalJnSEgwV0o3VEdORXJHODFlc0lncDB0Zi91MDM3TnhybW5lR1hadzczalhpdlRnRWw4OHI3N0JYVHg3TGxJZFlGQk5oZWFUNVhWUmVTTE9memErK3dMRW5CbWRJRzJoQzREUG1pZnFqYWtRVzRMcnZnMmxNK3VFQ0o0enI3RUNnVkFBcE1wdjB1MzhuMVBiVDNvR1RMZzFGdjBPV3U5SE45VGhuMHFMbVd1eTNuUkoreUNTdEpWNFAza2U1Z3JWL2V4MHZRUVYwZ0RWMk5uVFFlVWdBTzBWR2dzWXJvaldFdVRaU2Qwb3ZVbnZQRUZiL3VlNHpJdzViSCtlYy95bXhFT0hXb3dKTUtjU2FhWTJXMVlDOUVYWDV2RHpPQlZ5ei9JdGQwM1c3blRnZHA3dUNBc3pHL282SUV6VDBqSXVLV3VIZzNRZi9oRVArdUVXeE5USmV3WnhFemE5SWVTZjIrbjNTOU9NbkhkWS9JSWxQQmVGT3EyMnJRQjYzWVN2RVAxdnB6VVkvMGdEZTZEekl0ai9pWEgyWGN5SGJUSHZHdk5wSW9scUxtMHlqWnVFVUZBWWxMaWxXQ0ZRTUpGYnJNYjE0QjI1aURVYWVNTWZGMzhvb2tGK1lNWHQ1djg2UGxQdWZ5TExORmtpTVgwb05adExWR2JXaWZ6Sjh5enc0UWZON293NzF3bTNyNnhzTWd2SW5PeGZPZ2cwV3dST3hFUXU5R21sdUxaSFRGdHg3Q0RGQTZpdlFRWGwzdkFGbXdsay9VRHRtS3M2RnRWMDREWmFKUHIrWXZMNFZ1S2t5R3FrWGIxL0ZIV3JHWmcwTE1FT2lNNDR4MldqUzl0UGR6cWVqaVV3MEpkMmZBZlhVMFlOQnZIb0tjakx5d1g5UC8zdGxQYWsxUzhmTURZNlJPUzhuZFJvZy9pRjluWFd3N3FXd09vcUpBc29DUEZ6ZithWjRSVFdVZ0luNTJaNkpjMEc4QmZ1dXYxaEtBRkh3aWxsMExCUnJzTDN1d3Y2YTRMTENPUitqVXAyNngzVTlrRnRNZWNKWGdlaDRoRHU4TmFXUVIydkI5cUdza0FkNG0zbXQrR0d6ckJsdjNGZy9aZTRvWms4S0ZacHUyNERYQkQvVFpzZEQwUlJleUhiK0E2Q1Q5UVY1ZDFoekR1TmxvZ1JtcEVnTjRndDlCMGxQUFhOS1pEZUJzWHhjUkdqTCtQczlFSFNtcnRnd2s5S1ZHdkFqMHA4UEVzMmxXVlZRVHdranZvQnZvM2N2STV3TDlVRG9HTDQyUXhaOXBva2RLSFlOdTdIVTFubU1pejBvV1UxSkMxdzU4cFU5UVlBYnkrR1F6U0gxenlVSktEYTladk1NWUllNUF1L1JXV0NGTXJnZzNzSFRpV0hxMDdQMXcyUWQxWkpNNk1aL1pZQW1abE5QYjZLengyWXhXaU1Oa2FvZE1VQlpnSmV2K1UwQ1ZtOTNjMEgvTlZYTDRjWllXUG1yb2FvUGM0djVTQ2huaWdFT2N3dXh4M2JWTkpnVlJ0NlR6K25yQ0tlVE9CbitnZVJiKzA1RGlvempPSTd6Zm44cXU4MXZidU8xM21LLzgycWl3U25vb01BZHpibHpMWHhpaXZRYXRWdzdHY3Z6RkpaQTQrYnR5OGZjWmFDdU8rVjBod2tYbUZVVS9SOW5KQmhmY0N4NGM3SXU3TEtBSkhrR0xIcVN0KzIxM1BmSWdkdFpwTFErZGR3RExFaUM4NVU5OEhXaFVlZTlMS2xja2o1aWhZMktlajZ3Q1FqNGNSVS9LL0srUktKNW9UT2xpQVlFWkRFdStMd1F4OUdGS2pIZ0pkN0EyQ3VLOGhCWHljRmxadktidWxzTzlIS0R4VWtUSUl1MkFIbkt6T0EyUi9lWmVLSE94Vk0zUDA5eEl6Y1ZyZlZmRHBFY0Fwak1zRGhaMFRacFQxZ0xITTJvREgyOFdtVDYyTEg0UGNQYkJ1WkpieDh2cGVBbkR4Nm1wdGxwd2wxMHBid1QySUhmMGl5cm9xMDBvb1ZRVm1rSENwSDhWcGRyY2pPZmtDMnVNWW0xVkFMNzVTQVlFT1A0LzlvWllHWE5RWEtieTdRSHVwV2VJTXlsSmhXVFk2b0RlQ0VtWmIwc0JmamxndUZLWWVUSVhrZ0FIN0g5emJ2VGxrNnQ4UXJlTG5tMlp4ZHV5NDQ3WU0zSDlJNHZMUkh5dEpwWlhtaTNKQ0JxNTBXSjBaM1Z1SUhSWXBUc2FkZi82RnNsbnp3MndPSkt0Z2d0Vk5ORlV0SXUvcm1DMGRZZHQvMHFjUTdPQUlkbURNWVZoNzRwMUNOcVFsVXhEWkMwK2hyTFVwU0RhVzFHMTBnTm5SM3VPZDQ1d3dBZVZaaWh5YTU3bUhRWmUwcjNjbnhkM1FwV21jcW55OHpwZjhNUWxIS3pIYnpWeHFpL0JvMXJiSDMvWFhOall2WFF5ZExOZ1E4V3pSR1ZCdHY4MDVuTndlb2QweVE0eHRlalNYTDdRbXhkZ2tmSUtCQkkzODRoSzgrZVN3blRhaFkwUDh5bk1TeTMvQWV5QUIwM3pFMkowSGhuVmVmTXJtMmNIdmlpa3puSEJ2Wk1URUtJVGhoQk55MDRlTmhZcnU5Z1QyTkNCOFN1QW5veldpNXc2aDVLUktQOFp0aytITm5NN1dQT1VESXByL3BPWENuUzRPNWd2dXdvOUM4eWJDS2JiUkRNUWVaYmRZM3dvMGFiTEErTEFjTnEySExlcDJhaEZmclZUdG1jaDVJNy9FM2d5Y1dpcklXWnBYcDgyWUIyNkJTR2d1N2EzT3dSaG05elUxcUc4YjdRdkVycmNQdTB4OHhuemNsc1pMdXBTaWhCOHgxODBqajFpU2RkVjh6ODNrR0Q2VDdvOC9iQ1l5R0w4Mys5QVRMa1pLVlB6ZXBQa1RxSHBOTVFjOEJONkxRb2VvN2Fyb1g4dUpWSkF0bCtRT3BDZ3lpcE83c0Q5L3JlQVIwRWdwTnIybFJFaGo0c2w1b2Y4b2pQZXoyQ1pMT2lpcU5PNFRDV25lczFteks5UUVYVUZUenpCMmZGblRzbGxSN0Jtb29OLzZjRFF1TFB2ZlNJY1FOR2xaN3V3U0VKK1FZQU9HdDhjeEFSODFNa1BoRTJSemxFY25DQndiOG51YlJBVGp0QlBRcWlXNlIrSHZ5NjVsSnBha0JvTXViMmhjT3NhSjlmTUpkbCt2ZFZoUFhmQUlWekdlcDBtckJnWDQvNlIxc2JHbVZyMXBIWitmK1grVFFOZEpPc01mdVVyVUN6Vkk5eXJnOEtqUSt0d0JaeUNxQm8weDN0QjlGcU9Lcz0=", - "pin": "111111" - } -] diff --git a/cypress/support/e2e.ts b/cypress/support/e2e.ts index f07bc73ce..ae0281a3d 100644 --- a/cypress/support/e2e.ts +++ b/cypress/support/e2e.ts @@ -14,7 +14,7 @@ // *********************************************************** // Import commands.js using ES2015 syntax: -import nodes from '../fixtures/nodes.json' +import nodes from '../../relay/nodes.json' import './commands' // Alternatively you can use CommonJS syntax: diff --git a/relay/nodes.json b/relay/nodes.json index 39dfcdea9..fe51488c7 100644 --- a/relay/nodes.json +++ b/relay/nodes.json @@ -1,78 +1 @@ -[ - { - "alias": "alice", - "pubkey": "03a394d0ebf0d003124ab130c6b12b8b990a50a30a464354800a51981ba745bb07", - "ip": "http://alice.sphinx:3001", - "external_ip": "http://localhost:3001", - "authToken": "N4IsKsD5YqIvgYbUWXzp", - "transportToken": "MIIBCgKCAQEA0+Gfk/qD4NqyIBnT3spJIvRLzsLhgtkigDslnsyg1g6+mXtonHZD\nsh+TOXvIOTReJI/k+JvlX/Kw8rbBGkwgpf7XhcUcK8xORN8gq67z7BxqxyjqTyE3\nP4ICK+ih9/HroyZaB8y60uDTR02cVFC49YO+lfK/Rork+3LOUgn6Mr7vkpWLKl4r\nNMFVlwZDVpDfA0tK028Z3b+68z25ERYQIHweLnqc5XrD0rADdLVXFnJyFhDKKYM1\nvtRHezNU/yfhkheFuG3Yw8nVZkuJj1h7rGy8ZrLaIGYJ2RBCOVLFqqFrR7KbpyJd\nGt4Gl0WnZllFBreYZTUPtx7RQwfbe1TJIQIDAQAB", - "contact_key": "MIIBCgKCAQEA1zRRFrfkxa5fMQfyFvk8W1IowaqlPPH3CEhZi73WWnOEMvLwAoMDb+MZyUUxx4tlS7Bs4rVGmNODzQXR6/jRqXuGVlbRQedXI3BhJrrFhKNxb85dRjWCGG121MSBCouH/vwmOMYwzT4jzBaBuGABkT7GnmqFw5BvFrlIxlqJR4/qWm0ivHIRe728JxveWKwMPj1Lzi1RQ0O7+p894pmj5HhrnTLQMtxTg64lII2eQJRGYWIGLprpYEJay1ow/7kVLbyW2B7KFGuKwSTp/9Bn93XxNnvI10Ny+d6YePc5O7phLxY+Mxauys2F9/HCOeBglaXZFSMwCWQpyqTLJBrdnQIDAQAB", - "privkey": "MIIEpQIBAAKCAQEA1zRRFrfkxa5fMQfyFvk8W1IowaqlPPH3CEhZi73WWnOEMvLwAoMDb+MZyUUxx4tlS7Bs4rVGmNODzQXR6/jRqXuGVlbRQedXI3BhJrrFhKNxb85dRjWCGG121MSBCouH/vwmOMYwzT4jzBaBuGABkT7GnmqFw5BvFrlIxlqJR4/qWm0ivHIRe728JxveWKwMPj1Lzi1RQ0O7+p894pmj5HhrnTLQMtxTg64lII2eQJRGYWIGLprpYEJay1ow/7kVLbyW2B7KFGuKwSTp/9Bn93XxNnvI10Ny+d6YePc5O7phLxY+Mxauys2F9/HCOeBglaXZFSMwCWQpyqTLJBrdnQIDAQABAoIBAANPWq/uxCYGOJCYfrC7xKHi8Z2I8mGtlw8ZjccIdHOPs0jVU7u2KCdgZtUhq1JWYoh3fjU+dIeFOVG99Syb9x2UOMy7KRzKYhy5bcUauk7/9I6zrduWlxmpFVrQauuumbjiR/Q3mCiP/Bz3e6dKUrvZK1TkbopDfnHrB6OFYPcoyEaYu93IFtFEQ1fOpDMS2/Fn48ATwSRaCMCLlp1funaFwhi2e9xVmivRxSVwQX8y703fjMt+Bl3Hv2rsmgasm/E4Ft9kUB8d3IfHl8x5GG0GGJ1kMZ3edN2vmBDOj8qF00L+pqYi1zRo5LHMoDmKcUtDuUY35L/zAWUF9pQ53gECgYEA+HHO5I3ozr8Z9AQBAS8XNJ9Uwvt3L7Qk26oWTcbqfudxWQK4lmCStt2Mlg+/B5xiwI0W4sIfIMtILDd+Es+gkXnQa2O2JOl4zuvjnrfkxiSVbh4/DEZQmyW5I+wBfLyYsYg9RsXNLizJkE50FcsTg3VDdYV0LuvIU/deDMPQn5UCgYEA3b+6D9QigWBtySKZ2KnSC1zrSdjutdl9EnQBBjaEhOy3rWeJUXyVKoKXJ6XIw3pu2vUXqscyKyvOMfZlBPmV0XXyPd9IQsXfhZMxJa1H2SiV7+xZbtYCZwfWycg6qe97pUjmxXMBCO9Cqc26HKT6372WD8Q2YKXMQYAjSgK3Y+kCgYEAkZAsxiCXLLsu+5d09zqeAAjyYqNvO5XymnlXRA6tydjUwnAjsoe2rkm0Wx+yr0TjXynLJOTT1CUGjlGdHmxkCZgzkxgC2jGoxKPU42OfOLCqlLBIBGsWQzCg/vkCDhF57VqDfHncM5euKUyuGy62qikEc1DTt8IRx5CBnD0GeNkCgYEAstof/QJRrl4TToYs5hbahjW0xMRGjL/VZBvSc6tnKTswTplSpTnBqh7YQa8yhY/rd4j1RNYTPcTAM4YTJncUAnSKJKNByjGEvlzg6A2iBKH6hR/xZjcQiv9Em013G3dAGCj7kMfYTteDwidfdBkRC4MDVMYiQcOYQkBStjAIsHkCgYEAwgEnj/Le6PY1h7KX7dArND4iF+XHiM/X9pyzrvbnkJ5CsyM0WjiKOgoLAvCIjCWGVtc5eZ6Gchs0QzlYiP85ypQ+QEPVYCcFC50AlomJWPYPOQNbo/Gppdiz0XuHGYD5++SDGjiEVk66vr2XNsfH/rsV+2ku+vel5sKDq4Ty5C8=", - "exported_keys": "a2V5czo6QXdHd1NvZldPYUZVLzlvaG5SZVh4YWUzMlpvMWEyUTZtQ0p0YmRUclExRkpPSVhxZmtFZVR1dnlHdkVtbDJudmk5SzlQMWkvUVdLNkdMLzk3YWZyMHEvcERiSEVyNnVWTWZ5MTAzVUxTM1JPQmNmWjlaTERsTjZaNTVpTnBxTGZENHlOa0NhaStSNkNXczZMMit6VU9aN3A4a3FybHJmSTVFbFhkN3dpR29KS1JqM2RYeEFhQjdYM3d3RXhOZGN2WkdkdDQwUE9MSGRXYkx3blI3dENpMUU4b0RpQnd2R3p0cXZHNGtrNXBCd3pEYzdOVmdJVU8yWHAvMkRrWU5mSkEzRHNuRXJmNnFBeENMSEVoUzQvL0l6VGdWeVY0bWxvOVU5SjZ1Y2pJTVB0SWNvT1JEemRFR01tc2VWSjZXRWhOYXRvZHZMOVlPaHJveGxneWp0bWlsRXBkWVhKTDJQQzl4cnN3TTZvZFN4WU1YeEVSVnNJSjd0ak54ZDUxUXdPaS9GdlJydm93bzRuOVFQSDJWSEJLRHo2VlZRQTdjOGZyaVI4VGRVYWZFdkl4cEFObEU3dmVNUDZPOTIycU5rR21jT1NiUXJkS1pYUVNHY3l1UzhqekRUbEhZbW4valB2T21VNmdoM3N3eXVkNnVaYmV6R0F3UjJqTjVUZDRGTE1iTjBPMFNMNmdzN2haeWlBMThQa2dUb3kzRGdhME5xS2N5d214L3BhV1BSY1MvdWxKd2ZZUEV1N01QeDRBNm5uVW9SWThjL21PWURrVENSNkQyWG03aEZteWNZUUs2VlZvY0FiOUkyOWx2QWMxWm5Zb1JEUzM5RkpRdDBHOTFFNkNOQ0dmRmo3MlpHSitQaUtuc3NZMDZ4NlZHMDhqTERTcmFNenVtYnllT1N2M1E5UndRNnlHMGRvS09KeElORGZ4QnFsRHN2ZkdiSXVXK1E1c0RwN0FHc25oUU5NcWVPK0NiRlNhT3RTVUxYUXlxQmxxS2RyOERFdlBKZTBnNFdoREJQYS9wVGRCeURxWGlPdDQwL2o4L0RTUXJ3K3JvcUhkT3dDdk1RTUFaajRDeWY1R2J4UEFQV3B1MUJDQ0x0czZvSy8zMjcwSGJZMUt2dEZ5M2d6TXlrK1ppa3BSWnBEcFdPMVhqSUFLLy81R1RWT01RREFNbm9hd3p1aXo0d295bHBqREpOazdCQXZIRFBqMnVUVXcxNUxwUllBV2ZYVDQ4djhuQnZnLzFTQitJU2VYTVJmbHEwZjh2UlNpRThwTWNDeVRJSU9yaFpXWDdTYWNza2dnR203TkZ3YXh2VjBmb3JjTE04THovRWk0UEptZ1VlSGR1U1RKcS8xMlVDbzR1YjBickNuYVF3WnR6b3BKZDdJc2w5WmxZTUZDei80b0l2dXJZbFMrTTVVL2R1ZUVzMjgrOGo5MTQxb0pwRHFDU2FtdGdYU0RSQlkvWmd2UGdvUnpETjlDdDV5Q0M0cGo1K1kzdllZK2NFS1MzMVNtaHduZE96MVZ0cmx0YnFYZkEwM3JoS2poT1dLc01ocWJHTkdWd2VEZ0l5RzJRVHJ4TFA2TVpFMVpsVXBCL2RpYXNicGVWaFlvY1l3eGN1cXBFbmo4MzJ2ZEszcTlGWlFUaUU1UnE0LzQwd0NmUFJUYmJVZTRvNkg2eCtpV3ZWbjZnazZGdlBxUDQ2Z3JSaURSY1hJMFBEcUtwclgxd013c1ljQW91dFoyMFUrMmFxVTgxS3JUVUc5cnN5MnAwRUhjU2VRaXRONVBrZy9tMGF4bGFjWnk3aTVSeDUxdDFzWjZSSmRWdlhKTHg0T0UyL2tsdHlGTkg1UjVYNU1jUExveVFQTFdBQ1daZjFoNUM3OVY4ajV0M2lnUm1ZR3FRM293TGxFSDJveWFvYVZrc2dMTEs3bHRzVHJzVFpJV2NyYVNZbWNuWjVlYmhJRXc3L0NoRUJOZzA4VlpwV0VzTlhxb0hULzNtd25Ga3pXYmI1UkNSM3FhUFdUTzFZTVptVlBjaHFHRXo3YXBCSHdxUlNqV0t4MHR2T3pwaVA3ZnFDUm1nZWNzT3lHQS9zRjNwZG1wV2E5Ry85bWZpZWpsdFJrZlRDbUxiUkdyWEJiL2JXZUNoK051aWJHdkZCUFJMS0l1Q0xtUk9pcEZYSEorclJhRUFNL05ZY3Bnd2U0bWJ0MlBySUpDVmhaeG4zZzE5ZWJwYU1NZ0hZVXZRWUFDclQ1Z0dlK0tsVGpYbDJUU2dQNmY1SFhYWEMrbUV5ZlBia1ZHMjZDelFJYzlLREpZV3owSW4xNlVFSll4eFoxNENVc3kzSTVrN0FCRFpHdDgySThIQmRDQUpQUkVTYTBDekdHRU81RktDQmxrU2E4YUJtTDFONkhxODZnN2FJeWl4Z1lOdENycW9YSHh6M2tSM3MwY0FTcGZFQlNGekJNU2x1RzMrcHloTGRiWi9Yd1hCN3ZLWWhNWDZVS0w2M2pUWGF0QndCZ3pxdnNGa1p1aXJVY3MweGJGelpHc011VWVzSWF5Vy9EQXZDY1poWFJwV3RxV2dhYXFzWkxHMkphVllzUGhhaXFVYnBXSUVHaEdFRGpxV2psQXBwWis0K2xoTzVoYjFZcThPZUVDOEpDUElzQ2k4VEEyV3dNMWtndmtIcHFGQXlzR1d2ZmE1aWd4d3ZIVHRWSVpHd1BmSGJDZjJrcXdPcDFodGRGS2F2R2dOeUpuWEVpU3VBczlZMmx3ZTZIb0I0ZkNRajZZQXRHOFdrNkJ5Q045YWlMUE5NMUxjTzRBYzVXc0lqRmV1WnVkSTdwcm5TYU5UdEg4S3lxNXZMZnhybGtuVURZb2puZS96TWlKTnRCRmlqVjEvVUo4bnFmYzhTWit5T09DQWVPRXd2T2wzc0pGYVhnYVNDS3JvWktJbVBtL2t6dVhCZHJ1TFczMUJZczlSRTBuem9zUFd5ZHVwRmZ3N2pvOTY1dnpzV09Pai9lTU4yYVpwejEyVWhDN3VCS2dqSmdqT0E2N0wrNTIzTTJIK1RleTVIWTNSQnExdzBNTHBadUswL054ZkxIbHdNbzdYMVYxZUl5L3B0cGtPNUhab0d0U21BczVQS2VEUXF3dVNpWVV6cU5mOU4xUHVkaEtIY3ltTTVMSkdGYVpZSzVZYVB5amJiWENOekZwTWJWc0lmS3hoaTBmSXJXdDQ1c1lPK2ZVN0dkM21BVm9RZitqc0lCRGlmTVJ4WFg2ZGR5dVlZTEhVeGlQUWs1bUx1d29JSjhEeUZUWmpYV2hhQk5ESExnTEphRjRKeU1xczl1VkNDb0hGdVh5ZUFDQzMybU03bCtENTNSZWRNNmxGd2xGTHNyS2hjRnl5L3RDN2N5eWF6SC9GQVh1R1RNazR0a2IvbFBJTkl4RXRMYy91MkNOS2JEcXBIZ2NHR0hiTC9DU3pRYVFGajUwbUVnaFA4MXl3ekNCcTA3Y0hzancvbVNuMEU0U0xUYXVHN2ZOdlp1OGtpckxZKy93cS8xR0t0NkxvSXNBd1hyR2RkQjVCMVY2em14b2xKQ0k4R1JXRG1LY2R5VDdZZ21nSXRINHBTSGJuakRTdDlvRVJubzMycSt6aDdZQURCNUVpZEh0VUtGTXpWUjFMY3dWV1RSUzBaNkM4UlNqdmpvUndiNWRlND0=", - "pin": "111111" - }, - { - "alias": "bob", - "pubkey": "02a38857848aca6b32ebcc3c85d07ee41354988f4f1e0b4e6ccd255eee6ed75b8d", - "ip": "http://bob.sphinx:3002", - "external_ip": "http://localhost:3002", - "authToken": "KGxi+fUsk+6t300DGsgH", - "transportToken": "MIIBCgKCAQEAzZJJHpJDSphEh/beeDIo1z35MFFFjUcFZFUdd63YmfwldO6we88H\nxP5VuluX01KWahjlFqpW7SPvMwOcJ/gZeg/HQVGgowApGrV8rpxGb7Ly8VtNTRa8\nghSbQ2Hg/NOoaQysqpXleR6JkRR2tixy4OeM4pDas2IolV8Z8GET89l4zYdQ2sqJ\nBoDFXW1PJvhJySiur/1Px2x6Yu2lkbwVpCNRH/v/lHhWDcOsxhCBp9JRaXt31vzv\nvOJgD4um+NAVke/yV1TA6ArysMU4Zvedt8Q32jMGhypKJbVPKfjF0/gwJzai2G4n\nHFhEpI7VXiNnw4HzimwIp7ttSWZPQ6LQQwIDAQAB", - "contact_key": "MIIBCgKCAQEAprL1Q8VYvEbbGOEZIO9Of8SijSFSyTtr5Wqvqxw0oIaWdSLi8kL1bLP6pUxXdOOXgZfKEX/APMJcWfCRbYWvrml1vK9XO3qtH5U+lldcgLy4xWeyIlm4yr2FY++UkuUZBQCxrFv99YTDqYAZ0BiN4CtGBKDbAbDm1uDk0ZRAWSMvZWTlkj5156LtW/zkveHHhP5AkqZowrwkfng5X4Qhny1YEUgiMiecvkOcNokKygXd1kD1QM0bUNhtxomOuip/bXjJEN7/q7PHMXYTV2gy7oP9RqCEncAm75DLJUKkn+ERhV8XW/o3W17M4OPAyOKquu0PJblHt9TMa+DfJa8ZqQIDAQAB", - "privkey": "MIIEpAIBAAKCAQEAprL1Q8VYvEbbGOEZIO9Of8SijSFSyTtr5Wqvqxw0oIaWdSLi8kL1bLP6pUxXdOOXgZfKEX/APMJcWfCRbYWvrml1vK9XO3qtH5U+lldcgLy4xWeyIlm4yr2FY++UkuUZBQCxrFv99YTDqYAZ0BiN4CtGBKDbAbDm1uDk0ZRAWSMvZWTlkj5156LtW/zkveHHhP5AkqZowrwkfng5X4Qhny1YEUgiMiecvkOcNokKygXd1kD1QM0bUNhtxomOuip/bXjJEN7/q7PHMXYTV2gy7oP9RqCEncAm75DLJUKkn+ERhV8XW/o3W17M4OPAyOKquu0PJblHt9TMa+DfJa8ZqQIDAQABAoIBACwDpG64dK2Bp+fxx0jC5t8ldCX/XnRzlBGHEcsEL4ETCDb1dyawN0z0WIG8nnrmfOJiyZ/FM2TXjLrSohNg8PoELmobgdTal0t3hIb9mhcDvWWh847OUdR2Jfo1D+2ZP/nqLP9taqig3WirwiUH1q4RvvMJ5cmUg97IkqIjmrnt+y2D9SLc9kPA8f3Eq87a7TQBjACzznMQEpW3IuOjwufvonjp7on1iVB999H0wNMgRBUSbZOQUKkBAEwXR30s0Q2ML2RmOymJ1Z/EYS54WeghwVKAFTNzQt6USvKpI7ERi4MEPD99GN7kfMkJA/YBz7kuLXu64N3yDKgw7py+seECgYEA143W0awN25dvXis1Ja0x4YDE9IX5HBbVPqmqkVLSOESygpLq6TMrxOZwuGB89tVkY3hYpEoi4Rd7aZc7hcOj806TXcV2Z0ADm8oYYDMsey+E7wNjSFdr58FEa5L4DQIjmbvYzTGelgdl4Wu+TBrpEw6uw/kyRM95QsU1e1jGBGcCgYEAxfpdKIKfe+K8Sq66lfGycTd9Wb7NgR59mO8NcLy1IOzYpzWC3grgksDfquit8f1fcraTp2RKxYHjzW4J7az2xfX8ix+Iy1D8DAQn1aimHNA4yoBKBalELO1VlRU/umEvBSclfKXICYn7HTP3OUe//NJEHN6G0zLgpclDurTsp28CgYB855wLc3+0N1Q5ZSAu7OVynoOCjf+D31dCMF6+Rxe5s1UdhLTK3PQH7OB0drTy80Rwv1PeH3eGp2zECvZa1Ls0SdvrAnlR6y4sIDdvxzeHSknlljj5um60pLFZBJjoMM0gUFGY1Z/nn/HRZfWndBCLEn8C4GvYo8DIiC4tg4t7EQKBgQCuqbpkkhFYP+o0zUCqJwlyHy2E7vPpVVgjg8vMyX/XY32kz238rYYBkw4Bf7RuyUXbM77CsJXS+ExdIha6TJ2Oev3qU9Dg5zrm8wed1WNwCjgAV/x2UCZoqJ6Xn56QtUrBdg75kF0SJVyZIA6dx3JW/7695Yj3bWyKdy083H/pGwKBgQCJEyihly8HvRnSPYD+tPFmc8QkQB3xZ+0H9G+jlD8dPg3WxDsh4cWKmgjj97TCr/Ufu7ixal28aKda2x6JlNqwng70xnDkA24gdyoHr5/MVS+4yYa28WwZ5n16DLfVX3s4DluS4AiYXsTD5KULTv7q1ZBivvbmzBKn3z+D0zSTPQ==", - "exported_keys": "a2V5czo6QXdGdDdtbnRXVVJYMDcyQkRtZUo5VWdVZlBmdEJzSDNSTGU2cGZaSVpPNTN1dGh6QWFiaUU2MWFQUUNaNC9zeWFiWC9CaTBDVUQ1MmtBNFdiODcweTZRclZWb3FXSjNQdkN4UW1vcFBEMDhlMWdYQk03L3Jod3Z2clEyUm9ldFczWXNtTjJkYW8rRVFDNk9iMm5PUGpNYWdLSFN4Z0cyZ3cvTDhHd2pHT1N6S20wbnJ5MS9FNktiVHUrM2xZNXZJdWxjM2NUTzg1cmwxZnZCRTU3aGVrRmNLbnZYd214MjVvbHRLR05VaU5IQ1dFUGFBZ3RVdi9xczdvc2RjQ2d1YzlhMU1OZUErU3lUbllWQlBMQWVnWGpSRkkrM00yaTVUMUVLaE50aUZsMXcwVzhTVXZJZzZRQW1SdDA1NWhib08rZXdmVldpcTNRQW10OXZ5bGFsUnVvdERBaStBWFdOUTFuWTkvK0lsUUppdUZyVHcwNnd4NVJQMzM1SjQ0STUzTklsblpnYTkwVTgxbExqWlZINS9TVUdkenM4N0RlRE93MGlJTHJEQ3JKV1gxaUJsaC9OQWtGVTJKM0pjU2Q0elFxSUNlOFhNYVI3em1oS0g0TUtycTlHSmtHYVdJelNYcVFhTS9jdmlvVE42M0RtRFFXU1Ezbmc2QkhXMkRTQ0szUEJsRnFBaHF1VmExTDBCNnV2bVgxMlRnTWZSN0FqeUtaSVBOVnNVQmlHWFc0aHFycUJDTjNJZDZtQ1lobFBJeWRUOFBSTFliSjJrODd3b1FkZ0Y5UVVwazhEVllkRTZMK0JlUWl6UzhKMXdDTzA5dFhVanJlMURrRHB1V3YrRmgxMkdkcUNNSTJnWXhibHlURUhRUHEyV2lCajhscTVxSG4zSmZTMm96L3dNWXJyZzJqTkNBM29sUVlvRVVTNkd0SmpjbkhMbE5ManFZTFZGR0VSazBVSUZ4cnV1aUh6VXF5RHpjOTlBem5lUU5kVWRpLzJ5c2J0ckZVMVJuUm8vU2w2UGtIdGVOcmlHcWNLSE02WXNtZVB6SjNXbkJBUUxNKzBVcHN5YzVSUjNIZHJBT2ZoeVFHYnRJN1lXWUNReHRGZFd3WFU2aUw1dlEyUW9IREhscW9NSDdReGorTExTbWZQRDluSENuTmV1R3ZOMWttanpFQTRLNTY3NTVlcHVvWlRVWVJGUmdOOVUwYWY0NWJkanRTWGRIc3BvRWpoaVZBUzNBQVI2RC9rcmRRcGE0VkZQM2l4MUlqQTlHNzNmK3E4Y2hVcXNCZ1FiWWpJT1dKVVZsY1haQTBpZmcwckx0Y3NLU1NCcWV2MnYrT0VUa0djaW95Zy82R2xFZHViU1hNRzlpUjdvSE5qd043a2k5dVprODRPUVZYU1haeFdpMEpGcVZxNHhSMmFMWWgxWG01VWI0TXp2OTA1WFFDNmlzWG1JL1piZ05TdTZGbUlCM2t2T1g0QVlnWnpBYWJVd3kvQkVMMVprMDdzSzNxNGpOZEViZWNqTHYwMk9MMmV2VkMvWVBKOHZ0MExNb2FiT2FvVkptZ0k2bCtYc21Bem5ZOWZHbWFIVS9mWEFMWFVlRWNOaFZvdEdEd09sYTBoRzBqdXEyU1l3OVNDN085YzJYMXZPS3R6S0NYakorYzBCVmRmdVF2N3ZaTm5jaHBsc2d5UG9CTklJcyszQXB3eS8wYXZkYVI0d2xTcUMwS3kyMFdkM1RRL1ZRVTNLLzNETWVQT0FydktpaG50N3RjV29lbGhLaW01QlBJOWxITEVhYmRVV0ZoeW1xMFZBVUN2Y1RGYVNmTEFuR1Bwdk5sKy9QYnI4ODZqVjJLcVNhZ1ZOU29vWGpweXdGaEEwRUF6cUhDY2F1ZXJ3d2FPaDJnSTlCczdYMkIyeFdKZnAvVXo1a1EvVnJjUlBoQ0dYaXgrR1MwN0ZZdjVkNzBObFYrK2ZMYVJPU214OTBaWmFQR200dG5EYmtBT1p2V1Eyc05DRng5M0xsMVQ4djlMaHF5OWsvL0E4dXBTVklDNVhHTXZrNVJIK3JuNDQvZ2RtYXVTbW1uRU9wTUJSVm9pZ0pNTzdZRml5QWFVZUxFN1Vjc0IrTWs4c0VyU3ZDeHZ6bjVhdm0rQS9lcjF5dzRGdzQveHpXNm5LdDFaQnRkZ1FVbWFkemZzVXRNY0RvcEVCeEtlRTVxR1gxb25tQzdXazZYdzc1OHFFcTFXcldWUzBIQlN5cG40d1BCbjBJWFIvQ0NRV1BrcVZQNGZhZ1ZCcmVzbVFkdEpEUWpjVXpIOHhieUg2ZGIwM1ROU1VZbUhUR3NnYlpMYkNtcTdsWFNuQXJHRlcxUUxSem5hZmZNcEJFQU5pZ040a3lqY244ZUlPVkFwdThjVzFhaGk5bzRhd0NKdmJDUEtTSWdDcE9iVGYySWltMHRtRjhnbkdvWDdEYTAxRnF2VHhsMGNOb29DejEwWE9OMUp1S0JFYnpTMisxaFpFL0l0WUgyejcwTzVjemNGM0xHaFlWcUZCQXVLdnlEVXZtRHZzdHF6NWZrWWNHV2dUV3l1a2Z1cDF2UEZIUG1lNks4Q1o3NU9hOUNoUmZsUXVEdUJvdEo4KzRMc2U0ejVMbkJpOExwcUpybHFUS2pRUkpYTGFPN3FOcERKZU90b2R5bXF1RFdHL1pSeUZieitsOHJKRWJUSDJERnhiN1plVXIrZmJOYVVBbjFUM2oxYXgrcUlVcGN6OXNqYXB3akxHdmNGTXF2K3NXdlplblExUUJ3aFZBUWVSUGlrb1NTdUtjTFcxK1lNMTVTN0Y4WHhYaEVrV2YyNGc2NTlDRGNKTE1tMjN0OFdXeU9qMHpBUmZPc2pRYWpCbEZTaGlXV3U4c0ZiN00zaGJ5aXNBMzFrUU9MUUtxbjdkWjZuN0t4NUkxVVNNblhoUXI2QzRSTVVvOHZsdGxyd0N0aFN2SFk2ZTM0bEt1K25zdHZobzhrZ2lSdnZOQWFySUl5aXVRQWw3Qi9SZ0RGTDB5dWh6Vm5NQ1BSZ09Oc1ovZE0rV1U4QU10QzNhWTZJQi9WM09hb3d0V0tBbUhHSklGbjdWSm5YbURwb1JJK25LdUk0dTUxYXRjUTVsbDMwZzRjRHZvamhlQzR3MGlNdS9tN3RBNE12V2NyekRiK213RzZZaGs4WDlJeWJ4ZnlIZERrdlVWZlVXVUk2TU9NYmZ3MXVmUityQVVSV2pmVlpMYWNxZFJsanNCK09NYzdIbXR2ZkdkNXdSL0F5S2tGS3B0dlM0b0V5bzh4MklCRW5RUW1YTHZHeFNLclczWDFJcTN1UnBRL053V2YzUjJ6K1RNVDVZWTFWaWhSaWswQ2RDMFdaT0hkV3NMOERmQ1F3M3JsV3F2Tk1vN3JiVTNwVzJJNlhPOTRKdTVvaHVQd0xwV1ZIcFVUV1J2bnlCQ0xEcUtpdkRBWnJiRko4NHA0WUlPQUYyYnZIblM0SXJZdE96eFBhRUN2cVRJQ2lBSWVzUi9hR293OHlyNmF1WU9NWWlVYzhkcjFKUndhZGs2ZlA2b0M1R1R3KzFNbnUrVWZDRkVkcEhwZkQ0bURiRElGcWxhcytrM0YvTGZEejBRYTZnSVpucCtTRFNnOXdZM1d5RDVTVmRaWnhLaytUUkNxSGEwQkRsc0tZNllBaz0=", - "pin": "111111" - }, - { - "alias": "carol", - "pubkey": "0364c05cbcbb9612036cc66297445a88bcfc21941fd816e17a56b54b0b52ff02b9", - "ip": "http://carol.sphinx:3003", - "external_ip": "http://localhost:3003", - "authToken": "X4BG0sDvdSSP6RlF08DV", - "transportToken": "MIIBCgKCAQEAwHJUGBDTzx7wzGGK+ZQaxWxYgJxhnmghlRE31hh4pXUlKhRtVLn/\nnCWo+DKsDCtCdhNPvVFHcenZxmTjNCsXq1bwkq8zprcFD7q9jy1/0jM8v5pPFdn8\nVrHYbl4+AC8ldNwLm++fjdNyqqsNvc70THdwXSSbSmycOLaFR4AS0PmsS5+bZ0eB\nmEZnWhmWFe4ySqgVA2NyrbcRyfeTmINRcG3VSHOvy/QCIkm9aydnxt8Z5LcMoKCh\neUP+XznQuuvt0FiZfFZib+6RrVOs9F+SBJmJqRsZghAktSCpCRuUuCzPM9VFEdnM\n9sPUVU3ENSpnVBa95Up0ZL77AA7JMul9zQIDAQAB", - "contact_key": "MIIBCgKCAQEAyV0VMXwmVwUCoC9f+GJi9KCTWs4z9Mfty5wuplBNTDG883aRp5p9CMkk/DJBFBfo22UYDLB5T8Bjob8gbtsIBJEBaUstZAA1Bw9KIzNKbhHT/l3D6bwE/aZEaeYujN0I8OGYCNbZjFv5O7cCgi0m4KcbCIsDgas/lDJYQ41BH1AqOtJ98HxddVibQLp7abe7C2TCxf2lWtWATijMma7U0LAupGrQ4qOpPtHQcHK/EycCTxX1Z3V5i6Sp0sPgSir+R/JqNEah3kU2UbaEc+RVcFxAbnzgkSIsZhiBkg92iWMYiiLah2zFd4sMtRF9EOU/SfKHOAaR3US+V7HZmQWgeQIDAQAB", - "privkey": "MIIEpAIBAAKCAQEAyV0VMXwmVwUCoC9f+GJi9KCTWs4z9Mfty5wuplBNTDG883aRp5p9CMkk/DJBFBfo22UYDLB5T8Bjob8gbtsIBJEBaUstZAA1Bw9KIzNKbhHT/l3D6bwE/aZEaeYujN0I8OGYCNbZjFv5O7cCgi0m4KcbCIsDgas/lDJYQ41BH1AqOtJ98HxddVibQLp7abe7C2TCxf2lWtWATijMma7U0LAupGrQ4qOpPtHQcHK/EycCTxX1Z3V5i6Sp0sPgSir+R/JqNEah3kU2UbaEc+RVcFxAbnzgkSIsZhiBkg92iWMYiiLah2zFd4sMtRF9EOU/SfKHOAaR3US+V7HZmQWgeQIDAQABAoIBACDprgUgncOrdfpow+79Zd9GP8+f1K4135BgPt/AUGIb3x6MStJyVe2RsxHlxO1b2xvBMmUgkzON5rsRWmPEOVNFwE1NlGW8Au7ceOm4AHptP5FcEiGqMcaj3prQnNs5ZbS5qvgG5hgjEGHKUAanCqu9pJWI41HWg9XdRMAF3pcXYKWvxwhYZ0I9NLETFfHO2KRh81ZLGdMAIQEPC7HDJaM2rzpMPtUZntncuSk1vezYipj04Czf2pCVlpYmMoZhrYkN0W3timknRtwY1n2zKbqbIAQyGRGl47rk1e76nYm4AyGdM9bEeaXYmx8nKu9dcXuQG7VClPuzBHekZ3d/24ECgYEA/ThfmROBY961ITgYGYC5NvMlawHx8ICIi5HoA2j0ZxZeLnGbuKun62Eb3mQ7t2MxpY7of3NNnAf40+SUnvsb2Ct8z/VKujhlf4nDwLv834Yzd/qbYs1OXBsbpC0rdpk5HH3b6A+OFhagLJEfsOI7+ME8BIHdpbimzf2/59X2oC0CgYEAy5L582P44aB5P/QuvMxkjTHN+bIchzRNoALM0A3ExF/5/wcindKZYHu8wYkWKpzgWFFNK7suYQp0aT8iPP5HErxnNEDrpVZMsMYLLLcZkLv3lc3hLJyoqv4d66RaC7AsvIjsYpmz2WJko4os0xmfH1EKE7HNrCLlcGIlNDOvJP0CgYEAyVlaKs5nxJICVTfVcfH5VMhiqIQTbbnG2bRbWNrL/Gy81xFfUaitDW1aS6xID7rAb3UDStTUkY2FPngz9XaW3X028eWKVikiDBfvoAHbQaHkqzKK/DVkabjkcde5B8UutIkfo5c61DWJh+ad3HkIVvTQVIUvSedaO9HaFu77/MECgYAbSDxFOR2up0H4pzHoTYAgSA9xqkQWfpT0n8txCpdXNgGcAwnJmuLBQnP+f++/kDykuWidNr21daA6RqLBB9bglO1D3Ht4MgOfITt4J6W+duJsaiYGQ4x7Ngkufl0u+dJVBgigAjdPJ9eS7z6on+NqYAL4trh4nEihchXIVDDhxQKBgQCwOvhI1ovPHe7WwiPFfPNTyop6PUw+Y5pvM/wPSOhzBpnmYcxiQjQd61ZrzghHp1IbFCPfvPeSnfXQLfBfVUEdOQEHedOpstKKeproyPbfEMlo1wMOMJWt23+06sazq0y183Z55L7JvgiOqIZItGsxe/waSNiinrHI1txbY+2mdQ==", - "exported_keys": "a2V5czo6QXdHd3VxMU96WVVmYVFEU1VLTnhLL0RqcUh6ZTUzSytNckUwTnFyQ1pRb2kvVUd3NXdJak02UDdPeHBMQVB3SnZMTy9IZ2dpRHNMQ1czbFJ4OVNQb21FU3dibjZmMmlqc0FiZ2w3Nzc0QjZMazRXL2EzQkZzQ0RSVDNSLzhoVzFrYy9vTVVvaHAySGNvUXJnNXRaTUdNdUJSUzk0YlJpdW84RExMUTVFZTIvTVFTbS9xWjNZT1YrcDVPL3VYTFU4OGlVTWdCb3V2MWVyb3Y0enFBc1JqRVlXeUFzRGVOMjdwTUUwaU1VT1BYeDVVQStHWFlpcTVMOHYrUDlCdThnSVpiMjA5V2JJVnh2RW9zZzZrWnp1V0xQWCtCS0ZIQjVCenlHbWhsWEwxVDN5Wmt3YkdyRzBTa1RQa0NHTFAwMHBUelBtUkhRR0dsVFo2aWxsaVY2YTFoazlXWU9kT0lRQnI3eXduN2o4OGlGNUJxWmthNE41WCsrbVBWQ29jSVFBWnF6cTQyUjZtN3dUZTFQRUNxVEFoQnMvSjlvUEYzOXZBdkVaOFFCWU05OU9HMVdoSllmR1ROaWhIWnMvbU92MFZZbFV6YS9aMFJucDNlVHB1dkFSMnppNWlTM0txKzhnc3hneE9tRmhLYWthU1grazBXOVluT3RMUGVKcXkyZ05yZlZaQTQvZXJhT0FwZGlqMmtrSldRc2xpV0NZM3ZnekNnNWxnZFd1aVJvclJralgzMTYxL2R1MVlQSVJXbjlpUFRvd2lyeC9SVUJZK1U5ZmQyOWJpNVhTdDk2SVlBSXExRm85cGc5V1B2eGN2aUJJYTU4SWNIU0drdk1WRHBTSHhVT2M1RnU4QXdnSUpoTTJjR2E5OGpmc1VQWHF2MUxkMjJVTUJVWlIzRkpkVzZGOUVGS2ZjQ28weGkybnh1OFY0Q0tKUkNrQnhTU2FIWTVNRURvd2RKVlFWWGVtZlpXbVBEYnhUNDhCTjhack9LYUVZdDVoZE5YZ1A2ODMyc1A0SVJJTXVFZWVvNThvb2ZCaEZFN3k2bVJUTDloUlBJd0dPSHp4SDFiUWxnR0pVRTlrZGk4dURKTVRUbjJBejcrK0dFWlNKR2JHdWtsQTJBdmNMaEZCREc2ZzlJWXUwMVhWVjlEUE0vWGdxbTJpV0JHRE9ZWkdIblZwVjE4Wm5PcmVPV1lpQVFsQWhUbXc1dUxLRVJpVDFqbEx2endKcjErbTFMWjY3OUNpVzJ3bWVja2cyUTVjUnFBTitzNm0wM1E1UzlHZnhnZ0hZQnB0UHdJVHpyUkhQS1RQb0FPSURsY1AyQ2hXQStIbkFkUGtwRUJlbjg0NHh4WEN3Q0k0cFNrRVBSTXZYWmdBamZKY05NbWNlV1lQMExhTFh1Z2N5OWN1OU5wSXZlcWJGOFM0ZjhzT2crVTJncUlQNWh0ZUZ0amtiZ0hYTHRuQmM4Y1FkdXBzRzdwZDR1WFBEU1NWQjBtT0U0N2s2RE5PVXJMRzNFejBFeUF5UDdvampIL1FxcGpYVEJVMmZ4S1M0MUhTc1A4TUlsOGNnOHhjWXk5WVYvK1NXOEhhWkxPOU03cmxMZTJ6MHI4eGhoL1gzMGNOMFZaNU9oeGRwRm55T1Y0TU9oUkUyYU0rZytobGtYb29XaEpWV0RiRWJ2SjhmL2hvWlBmdTZ2Q3pLNzM2VnZMQ1U4WERrVEwzU3QvY2wxVlcrMityZEQrTUpnWlZpUU1UQngyZU5HdHBQdXZjbWhmSjR3Rm15YmlVQ2ppQmFjOUVBako5YVBwSmsyK2loQVlXVUhDQktJMHZ0MXpoT3RqTXkydm5HSGFTTWhSZFNpWXM5VjFodkJKT3VzYmRlcHVNN2FoY1hoS3VzSitnN3ZDSVJJV0FkVlAzN0N2VUxRTU8rR0dYcFUyRGlUcmtvS01NOThuSVYydm9UM0JERFBFRDZJcFFUanpONVdVQ0M1QUJQY3JMdTVwRGw0VUkrTE1pTGxrVTlRdzBuOUdwVHdXR1VxN2p5SEYxSlJiN3ZUSUtJcDBNYzNBRjhCSkQyVmJhc2Y1anpvTVd6TGpYMzFIUmtpZlhtN0Z0VisyZXRCR0E3WG9zcmZXQ1NpTExIZmE0UjRzZDEvSW83UXBsd3dPT1ZFZjRyaEp5R2F4THpMN0Vvb21OaWswOFowQkxIZmVSQXVsRDJaV2RvUmcxakpzNnNRVU95SG93eHhwTkpyMlp0SGlFcjZDNTZkemNDaHhMOGhSb2Z2cUtVZWlLR1VPdDh6NXFTMU9MSkdsNTRNYVEreEVYODRVY2I1RHNLTm9UWWRZZUl0TVFrZ0ZPMzFtbm81NVoxTDdYNjh2UHdpNUFEVVpiYllpNzlxaitLVHVtQ1hCRStjNnc0QU1JSU1FdnF5b2svZExMUFFHYVRzelZuYTk0b3JCMCs1VnFyQllyVVhmdDdEWlFDR0lML2tVVDhBR1liMHdjcy9Hc1g4NHczZWJsSXdrbVVVd1FpL21mK29GaENRWFNqT3cxYU1tMEdQTVFQd3A0SEZKVmJOMDhpQ0JzR2tDcVpSVEZyWE13bnBFWHlQaEo4cmVZZ21NSGdMSDljbEFlYWFxK1k2TGJMc2tadFErRkovVHFCcWRlczlFNWdRalZyK1o4V3RpYm8zVEF0UGRWanVMRUdSbzAzeGZVdHIyb2ZmWGdVd09GMG1DUTJGbTk2NGVTalp3dWpVVHB4OEtUQmlXZWVna1NLcVpES290ZmdURUZxeDkwdms0bGcrVXd0bTc1Uzc2ZzROZ3kyWVF5S2NoeXNTTU55Q2w0TnA1aTIxaUlaZ2pqOFlPM09saWF1SllUUDEyb2pOY0dnbWxWVlhUV3ZMeUFVc2k1QkJUQUhiTUVZcjJCek90ZitMT3BQMGpNZnVBbXh1bU5SVEE1eWFYd0dpWnZ5RnphVXdiLzVBZjlHRnAwYzZrbUt2QWtsVnppajdvaW9peDFma0ZNNW1jSFZqcDROZjNLVExUbGZpR1FuUGw1akRxQmNHRitxVmErSmFrQ2ZEUlNxMVV4dTh5TmIzSzIwdGsvZnBCazV6RGRlOWhSSGFTNHFGeEU1SmkzV3Rsa3VmZU1HdUJlSUVFZjluMWZmWmFYOUlJNUZzQXVWM0RaZnoxZHhzOCtWTFFSZWhyU1BrbkhlU1k0ay9TTHZMOVd1cjhxZi8ybXFLa2J3RzVMaW1Ea2VvRUFxektLOVZDMzU5alV4aGVNWTFENlI3cWlFeENVNUlSVTVtNzcybDlwVEpVOTVEVVpaYUI1anNtVUNNTkNxRDVGSGdhWCtRTXZwTndBa0tYb3lTc01PeWpVbWgwSk9wdjBUNHV0WXM4aGxXTEs1aExDL3FlWXUvZmRZTnJIRGdLSU1NbDAwNGJSa3QrSWg0ZEZvNGp4b3p5L1NVNTNRcncya3p1UjFBUlhLcHV4YURmRUtEUW5BZjkvS01uS01mL050S0x3NzZ2Rzh2cURidnNEeHJTeWFXLzB4dUVrNlVKaW83c1UyUzZtQ3JtMkxtaVZJbmdWV0owUTVGTVJIZUJLMThmbThxeDZFRXlXdkRHeUd2dVZCejRnczhRQ3FaZGprT2R2NFVQcEtwcVJFYk5UZjlURWpuQjBNTkNwVEk0QWIvYVlObE9RMVJKdU04RT0=", - "pin": "111111" - }, - { - "alias": "dave", - "pubkey": "037ec785c6004d512ebaeb0020f81a2bcdb6fccc9539f7b891f704289ebc65a4e3", - "ip": "http://host.docker.internal:3004", - "external_ip": "http://localhost:3004", - "proxy_ip": "http://proxy.sphinx:5050", - "admin_token": "r46bnf8ibrhbb424heba", - "authToken": "t5wp5GNZ4tdqfNGdSMP3", - "transportToken": "MIIBCgKCAQEAxnVZ6sgu482p4rHuOXm8vXt4U96p3LOwowkMSjmPFaML5eGa13TO\nE3cvjsVMLKHahamGCNaiOuKxbmKgvO7wdxqyi+18gt1Ziu4twm94noJ4sfREVjup\ni1vJgExjBOFzFg6w5Ezhgfd1Ft+shXZwstaxHzRypMjk9gw3G41fBGuySdU5gLnz\naxLDRHvLxHiKOIJECu3WTIWqS1lzGADObPoO7JyIKBTSX3hcHr9PMYHJqCNcHa34\nEGCldEsB+qCRrKDvc13bJd5U1peadUthJ3cYdMj+n14iJNkSa8PGu29N+OloOQLo\nQRRqAhBQSJV8F3c5Dn5mlUhBVPXTDdcAmQIDAQAB", - "contact_key": "MIIBCgKCAQEA36o7z8BpTLrUCok3BDlW0/guvwSTaTHLGgE54PcA9MEd4OB1Ez18sM6mPHNdrIWKrZRMRO4b5IqLmIlfWnsk3oougHQcvu5pEmta7wpFPqgPye7WR5u82j6dQG0KNxRkSLiLar1v0SWoJjYffSDrhjTWX96C3j8iW4F5VHY4BuM/ipnnus9A4Wh3JVwoInnxYHdd/jhpbF+QMRsfzdswYRmb6TQ+NLmnoj5C5HwnGQaclPdUmE/JRs1ox/louLZrZ8X45Kv5wR4Zt72yiklwdinXAUOAovcz9oB4Oj2oJnrrB6pM3R4KOew/dFr+0EyKpbPMTeEpXSyAVwtstGaXFwIDAQAB", - "privkey": "MIIEpAIBAAKCAQEA36o7z8BpTLrUCok3BDlW0/guvwSTaTHLGgE54PcA9MEd4OB1Ez18sM6mPHNdrIWKrZRMRO4b5IqLmIlfWnsk3oougHQcvu5pEmta7wpFPqgPye7WR5u82j6dQG0KNxRkSLiLar1v0SWoJjYffSDrhjTWX96C3j8iW4F5VHY4BuM/ipnnus9A4Wh3JVwoInnxYHdd/jhpbF+QMRsfzdswYRmb6TQ+NLmnoj5C5HwnGQaclPdUmE/JRs1ox/louLZrZ8X45Kv5wR4Zt72yiklwdinXAUOAovcz9oB4Oj2oJnrrB6pM3R4KOew/dFr+0EyKpbPMTeEpXSyAVwtstGaXFwIDAQABAoIBAQCWKrRnorbQFmvA+yleA6VhQbMY+tiB+zVyqzoR6aTRr0sBLZJNLa4nA0enNInDCBH4wqWGbht6EO7ypeDIXf9+DmZ0RgD6zBTtkfiGn22oSKv5Fwr1HwHnwbxQgiUmn+FI1eZ87t1BHbhMl3AC0fRvsc/wo/NXhinqJ/6vD4REUlN9TtXo/iM+Gt+jCYaN0DoadvQ2yLdN13KftyFpmZd5ChyMwn6szWLQKBCi0A71ovqSkI0ULG7kUs85WSBjdFt4P2C6HRCJrEE33PgLyxghNYYKNZ+Qxbcfum3Mz/7+CSsquEZi+NsdU3q14wK9mLm+twifnuHM8W9JCIOxv+9RAoGBAPNqtIKcBn1jRc2vQH/+slZAL5zNH8fpINo1n7cuwkvQw5PwBbl5VE/J8O1kAt3xWuu7LA051lPhGjJpL1URPtVhkf0WrroyuN33c6uVCzlurh/MJNTBpsIfS/ZAK8pa3XZz2JwewHgUBun9NjOZH31ug6yMMrxlceuJ+t7pj5QvAoGBAOs6I7AF14vCnPhyncMsnN90fwioCnOpx4OG+51OM/syu1xV+Tj9rLucFIWeKkE0FjTac2YzUyb0NAnMGke18Cdm8kxIafLsIxawgPM5e2vZe2HwkVQ6mipx3PRjKxDEYd2g9x+EkU3yoqcpCznEPldD4OFXsOVYGnwSVGfSfKmZAoGAM+yjLOlTiRPQJBwqSiNur29puK0ZBm/4jhO6Sj0zPTD/R2OAFRyIm6ycNEeNRQLjPj3jG78mtSXjjLVbX24aVTJHDhH0m8uOG+tZRVS53Dp78lR91tSoWeiLL7BopvXTIB1+K29z5yl+gBN/qGoViZA1jm0ptX5+WpxIY5y3AAkCgYBaZQhL36LaiZpK+7jWxTEvyhP7XqBNnIQYbmoJJIFjWjaYIE3a8dlMa4mTY5m3Xu3dt8k7ECQ3RwcscKv0vN0iNzSLzhQxDz/Yu1GCpqdgZb49f/ZJWQ/fmcwgem+VTPKS+gWdrhMs0j5hYKt4soqGfIZR8qH/MKFU5rJbB49ymQKBgQCylg8G1cBTd7InfEu4rj82zC0v3vAGRGWb8pIghRtgIU8jo+c3ZxPlVxPMe9hoVNG5vIBzN6lwLvpkC2osmnhYs25S71k/ADlVpielEymMGO5AaL68IoO/CT3rBJZcIF0Q5lm9GteolWTTet0+Fpasb5InXKdzOHRIFGAEZgAREw==", - "exported_keys": "a2V5czo6QXdGaHU3ZkQ4bTVULzQwMDZ1ODBTVmZBUnFsSkJ0VWRXR3VnRlVFRzdwMmRvN3dwcU93TnE5aXNOL2dkN2d0WVRKeEZ3KzhoVFdnMVRDU0dPVEJabmlDVEQ2N3BJcW1EUTg5Mk8zMGVwRG1yaVpVYllpUXF6ZUJNQzRkcUpxM01TUjRaSGpBM2ZaQ0xKOFFGcjlrUWFZbHI5a3k5WDlpY01Qck9BQW1qR2cvV2EvcmRoVHdqVzF2N0FCREJJV3hVamVSTHhMZVNFY3A3OENFZ1FWZHRhVUUxMmg5ZXZBTDBzRTVVZzhZczdFaWl2eDJOdGFadThjR3dna0dpVlI4VnFFNk5mRDVVR0hLMUxmaGVRN1FrZ1pVVkprUmNQcEFsVkFNUmVzNmFScmpCMUdSdHhNQmVFUjU5Zm05cmR3SkZPNUZVWGpZUjBCMFVMUER5aW1BVkRpWFJwQ0NBd3JnaHArR1pWdXpGVEk1bDZraDgvT1FFRFhnWlE5ek80VTJObktEUFYyYWpEMkZFVU1mZXJYNVhteEJTb281TTN0bU9TZ0JVVTI2dk42aEZiZHgwSUV6aHRWa2JpTXd6eFlhOFdDVndtcHFML0NMNVQ1dmxCSWw3Z2dSalI3RFhNNFJCR2poNU1WdEtoVTd6YWx0SDUzWERKdGdlbDF5ZUpMdW1Zc0VWQS9GQlFPQyswalorQlhQZHBYUUJBS2lsajFxNi8xT3k0eEFiOVZQOEJobHk3aXBzenhHN1puK0JlV0xFQVkrMDAzN2duSEtvZWNBaDFLb3dXQnZEbVRVUEsxU016MklicEROcHhwWHlQMlZsZ0p1dUxEZFZxN3pxSFErOGlyQWxCZkJqbElVY3JXUlozMXhqWkV1QlA4cG5HNXh3OFFUenV5K3hsL0dodXJWV3lyYkVYdkFGUlkzR0E0TnM5K1VqNXRadVdJQy9jNUp5MXJpNmp3aGhjQWhsYzRDN3BZYzdZY0REUWJCbGpXeWpsWGVPbzh0bjZTa3Z3elNKa3Q3V0hZSmpNZVdVVDJUbk5BUCtKcnFqY2JvcHROREwvTWdxTFFRWm5NR0pTc3pZVGthZ1NzYyt0cE53blFzNzZiTlEyTG8wZ2FvbWNOVzc0QWhZUUFOclRlaVYwV2hveDdXazQyRlh3T0M2ODR1Z0l5SGRzVWRDOXFJb3hacDAxc1hHajFUTmlEWDRHSm9keW1Ma010OXlqOC9xeStkWUwrOG53V2d1aStya2NzNjZrOG9SUmt3cW9ReVhBYjEvNVB3d2UzQld2dzFFZTZSQThkdVlnKzJhZ0NYaGZrRDh1Ulkva0tnR3RjOEhvcmkvTnRwb1lNSmcvOExWSHl4OGtTYjFUb2hQQkFIeTF6YTRuSFBjY3JkQXJkWDdYVmkyQWZJb0U4cS9iSnRNREdxY0NPSi9GUm1SSzcwV3ZMbjlOcTNXNnFDeXVmOEhQNkRRSUdZdXhSUkFUaEs0TU50aGl5MFc1Q1V1eDdGT2M1WnVJait3S0lYSzJVVUNGRXp0VWtDZnE0ZnBCOEdUOVUzZ0Z6dndxNmdNNzU4c2puUG04VHQrL2VtTHExWUJmUCsyY1RxWDF5LzZKNjY0OVBMYmRuNzZUMDBxc2J1SHNXWTgvTG5IamlxdWhlZzhXc0tRTDc1a3Nxb1RyWDIwN1o0OUU3TllLY2dMaDhGaThuT3EvdVQ4Y0hhV0szbnUvVnFUYklWNE9TRWV6cGtoaDdDQ1NCL3dmTDRJMU0vdG1WSmNLNkJCWWFBQ3dpUHJta2d5RHUzYnVDRE1Kc3kwcTAzbU9XOG5JM0JWSWRwZEJ5TDdXTWV1dlJUNGZWWVVzZW1MQjhqbXVYVTNYdnN6VmNITW5nV2t3Qy9vRmFWeGg1dFQ1SUR0TmRYaytObmVONlZMZEN5aHVRZmVUMlFJVVk5TnlLTlRPUSt5ci9rWkJXOUxyT2ErZlRwQVR1R2lKMWV2eWY5YlVXMVNnZThyakVTSkhObXNRZllYQ05pY1psd3Ixb3Y5eWM2bmV2Uk5vbW5CNUgzMkVPam9Nb3hGNUNuUXgrU29zUENQSXNqMDdmOEVIWnBLZ0ZobjNVdVNSNmJXbXh1eEhEbTRwRVdieFoxOU4xOHVjQkQ1dUZHQndpRjBRU2ZQeDFkeTZGTEZDU2hwK0FoU2JGQ3ZBdjQ5R0J0N3B6Q3NPc2MyZE9jK3lIVmRJU21hTnA3R2dseWxybXBWeHJ6eWcrbUVJbE9NK1BNSTJmZk85MXpkbnJNbXd1YVMwV3ZVME1MZUQzSk90aTR1anF0eUtHSEMxREdlU2hrSmlYYytqVmxEei92UHcvSk1iQ3lnQXpDSjJ4N1RJNi9Yb2tYRStFaWlVMG81c3RCUUlmMW8zbSszVTZyZFlsRXprR1BFYzdQbURTTXdrQ2tvZEc0UEthT2FVRm1ZLzh6aEtOMkQ2UGNEc3NyaE4xczdtS2Q0QURaOTkvZFl0NWRsM3lnc3JNNU5WSjlYdWx6QjcvdEhaUENBWUR3ZUd3QlhoY2xFTytScjBwQzJwNk5ycFJ2QXdZQzRVMUs2eXZaa0NXYkJkTGFKeW5pUnRvV3B5b05rb0VpTnJKaGIyK2RUcDJvNnJRR2lVelNwZm1xSEFJVENvbXhxOFJNYkRMd0RYM3dEZHAwNmIwcmFoWEFlOS9YUW9hZ2RLd2lyWmJJb1hlOHpsUkxRbU5SdDUvdzlxY2U2UTBVOFBHQVVobE91MmZKNHhsSFc4dXY5bms1NjQ3S2gvRWFUZ2EzdmNsT1ppTjB6aGtkcldZTGxCeFUwM0hoOWg4TklDd0JicUdNZmlLdVM1QlpTMTdURDlVUFM2WjgzdUxidUVBenpFTXdKblhYM3hYVDhvdDB0R2cvbzBZWVZBbHl6QlJSbVhjYXJGVUJHZFNxTnU5Mm1CRDI1Vm1mS2hwb0ZhT2x6SmdsL0lEYlFGR2krWjJGVGwvSENlckV0T0RHRFpoQytjS3BxM1dzaEtFQ3lid0NTUkgzVlVpOXIvYnl2dlF3WWpNN3ZzZktoeVJOWnpiVGhSNWNUdW81aEErZkc4YmJ1aHJXNEQ5aFhYQzVMVUlRUFFPaURqRVhuc3JQVTBGZ01IZzhiMEFmQWUwNjVpMHlScVNrYlJ6cXBRSE5FSHFLRFJHbEwwU1Q4bHJLbmZ5VURrUlQvV2RnOVdEblRVRFVUQlRxS2JIT2VDQytzKzc3VUp5M2drUzZ5MWZscFJUb3IraUFHclEyTWNyeFl0dVRkVUthckZMNDRWbXFpc3h5Mmg3WmFiSGN3S3REZGtJblNMemE3ckcySFpabitjSHYxUDM2MHI0dEt2YXZLUkFsMnBnaE9vRVUvMFBJL285TTVrN3lrWWQ1VHI3UWhDNG1nS2tXUTZCQ0hHV3VYSDhuaU1tWUMydFFZYmR5S1k3bHAyWWJucExHRzlGT1BVZHNJQmxnV2xZK1VmcStJUWd2ZWhxRHUvNW94NVJnSFVYSXppdk9QQzBSS0JvV3EvazVYaDJocjZDK0VPOWkveWRGRmVWRCtJS2RITWZDR3h2bGljdjlTajFrNWljb05tTXBCSFVQWnRmVWtxNjNVeUlsZzNUM0xsalI2RUt5Tkl0OXBGTDYwUlhTekFVSlBLSys1VWN1MXB3QT0=", - "pin": "111111" - }, - { - "pubkey": "027d21ae024366d3d01e7ba96ec27e50c2ff900c42fe3edcc771fd8a5d3fb01df1", - "routeHint": "037ec785c6004d512ebaeb0020f81a2bcdb6fccc9539f7b891f704289ebc65a4e3:2199023386625", - "alias": "virtualNode0", - "ip": "http://host.docker.internal:3004", - "external_ip": "http://localhost:3004", - "authToken": "f3yEOUCABYORB/A+I7RY", - "transportToken": "MIIBCgKCAQEAxnVZ6sgu482p4rHuOXm8vXt4U96p3LOwowkMSjmPFaML5eGa13TO\nE3cvjsVMLKHahamGCNaiOuKxbmKgvO7wdxqyi+18gt1Ziu4twm94noJ4sfREVjup\ni1vJgExjBOFzFg6w5Ezhgfd1Ft+shXZwstaxHzRypMjk9gw3G41fBGuySdU5gLnz\naxLDRHvLxHiKOIJECu3WTIWqS1lzGADObPoO7JyIKBTSX3hcHr9PMYHJqCNcHa34\nEGCldEsB+qCRrKDvc13bJd5U1peadUthJ3cYdMj+n14iJNkSa8PGu29N+OloOQLo\nQRRqAhBQSJV8F3c5Dn5mlUhBVPXTDdcAmQIDAQAB", - "contact_key": "MIIBCgKCAQEA2h1Kn3+L6WZkDrGWEdN1mmJd7xBfGEssR+5jSLpBD1EhG2x3Sj80RUqU42DTORHWt5Do7JBrrPJLjZciwEekJkDo0X7iNhvLqURU+i06cblrDEJCXAlTF7c3LZvaZVgHqP2NGl5s05aAq8+pz01LpXHW5R5qqLFmI7b2KErijAksw7xG9GJ5ZPM7V7fdpQrZrLWGBUOsV4VJ9kgau84DhbwyqV+DH0B2aAJn9p38siAadpSwRLmrNS1wk47S1/iYYs0P6K+yMatajz5cMMpSWt6GlwlQebnEnjYU07Zq+lhjocwr9Bz+8UVUUmBq5tM7BS8eMhBqX5AaXlatl8FvZQIDAQAB", - "privkey": "MIIEpAIBAAKCAQEA2h1Kn3+L6WZkDrGWEdN1mmJd7xBfGEssR+5jSLpBD1EhG2x3Sj80RUqU42DTORHWt5Do7JBrrPJLjZciwEekJkDo0X7iNhvLqURU+i06cblrDEJCXAlTF7c3LZvaZVgHqP2NGl5s05aAq8+pz01LpXHW5R5qqLFmI7b2KErijAksw7xG9GJ5ZPM7V7fdpQrZrLWGBUOsV4VJ9kgau84DhbwyqV+DH0B2aAJn9p38siAadpSwRLmrNS1wk47S1/iYYs0P6K+yMatajz5cMMpSWt6GlwlQebnEnjYU07Zq+lhjocwr9Bz+8UVUUmBq5tM7BS8eMhBqX5AaXlatl8FvZQIDAQABAoIBAQDXkYOjR+f78dqKOzHaxGfDAd1c3Y1e8Uz+erlds9eBT+mstPLhSr5ajW/BmnyoNt1D59CNnd8Nuxq5AdqytxuhQx3Xj9P7LlWHIaXq7LCKnXsTTplPZVfeZJIAXbzn1K0ddBr1KMXeCS16oW9vFzHgfjapk/pOZ6ZPPhDjmb92LfgbpCVCQbtupcQeujcfeOgkhiH+n3ehQS8tWLxx7aZ/qr3gZW0IQ0kI22lERJg8rWXLofh10a9jNXH/eFEMP5jT+F53joRKvHspUCHV1tMqb7nZzbJrEO0jQO0CdNmguZSlRW86jUS23DtVwGpWEHVd5m6SJ6XBU9wJPemS7ryxAoGBAO2W6VXy5kYgjajoOOtK9f3F0x/1T5NeiTJhOpem50KkL9n/9Wpw+duD68+FwiJ/1Xgyx2LJ8lHhK9nPP2SOnck+gCTbIKal4ArLj0AT4oGAxWKrr230OaKeujXw2p7hvacQ5gcKNIXabYeHyn0jmBrp9dCqw0UHDQCKUjSHiFtzAoGBAOsEDQFj+yh3yb6e3fwhlDRVXdfzFHdR1GzEv/HMqRBZZMUBngY5gc5FSDZkkU86SNp6iOEvzXJRsduc219oYsXU8uf8exgoLT4hQxaWcd/dpNSE3HgC3vC8SUOYBpvG03iC8m0RQWc5ZfrqQK9GQ2FPdWRi7mKiciHSxtJBkAPHAoGBAJsAjZIpOdoeeszrU9cNvJanbSm4XQYD8vYPQK6XkOCFRUKwHmgm9Jsl4b4twY3IYHheiH4GyjRo9rbO4siz0nTsdaWV4CNYrGXej8J6NpfObvgEkhrl7oQNkeaHD9n/5D8OY0PMgJ+i9ToqeQxTIHTOljRgc6yhAPaNRzxF/8vJAoGAMwDzDZ00MckleIAj7wcekekA78/qXibdMinU+lYPTuQHsZWzROiQGkMA9AUJYCdnDjtPn4dvT+MY9W9qUJ9n6EVZ3iz2TfzSLMytMaa+2fXRQun+qvD8j0RdphTFQmN5G4tXr4HyLsPPNRBHr4JRNzo2YO3zjGZy3JJQ4eqmpZsCgYB07nENm29IMLUVixmjk23uTFmgs8ujXDGi+V8KShFRT2+Z96qz8/PNrl7d21apFxwE2R+VczxjNLqN5dEwAYslCtl//r70Ky4Fs8V2qTBdhYgKiTmgPFeXK1217CTxx6sUOy9UV6DlXnDGLC7Fi6q9BgC1g/YjaoSfwNGi6PCPiw==", - "exported_keys": "a2V5czo6QXdHRFYvejQrVDBEYzFjNDRqRDdkamtRa1prQTVCVUJxaC9LMlZJYmk5YlROMDBDMThDWjhtWHBZd0JwWXBvbHllRnNlVnlJOFRTWWpORGh5TU9lUmtUN3lPK3d5cDRqSzJtd2U3Rm9NeXZMSC9aWDMzUHZkaFFSNWQ3WVhUc0dtbjUxOTg3YXRxdE0zdDFBOUI5V0wzZnFYMmgyaWxCY1NNK3BSZG9MVG9ZM1p5b0U0V281S0Y4a2pxWGU3REx5UUtmVkMwSnhRaVRyR1EzUnRtSWNTakVZbEp0OWtOb1g3VVRzOG8xSnl2WFJmOE4yMFBncDVta3B6UTV6UnRJYjFmL1RoNXlnNEk1VFlWWEEzODFzVmplRHdRMnpIeGxVZkRQZXBkbW85Qnp6NGRwTFJxU0hncXhoeG1qK3JkWUlIZjMydGptRDhBeEdYSGRzeDJNK2hkOU9tdlRXZ2hYRkFPbzRQRnRVNWVnanBndU5FelcrOGV3TksvalhQaVJYSjhHc05CTTQwRjNqNkhvVjFtR0lZQ0ZhbTc0QWtLMzIxV1l4MG1wWjVJVHJRd0VqYzB0cTBOOC9PaGw5YXBoQkQ2Z2oyY3pXUDZidDJ1Y1BIMnl0Mlk4b0JmQ0R4N1RRUyt5QWJ3RktUODB3NjYrYVJJSmJVSkVacDNRWTF5ZDFZVm1FZ29PMjJpS1JZemFYZkZqSzZ6TmNxTXM3bEpvc2l5Z3Urb3FVR3E3YTFtYktiSkxuVlR3SFFOTDVFcnNHY3dhNG9va2FQTGZZK09pZnkrRm1iT1JROWdtaHp6eGVGVDdZNkgwKzU2NlpmT1ZadVpITjlXS2NUWGZlWHZsem9PSmdYYm1TRjAzaEo3QTFVK3ZZdXBqekRRNEg5VlhJVkt2MVlCa3JtUlp1TVAvaG1OdC8rTDR0ZDJrd3BmeE54TlYvU1J4RkVaVHhOb0NaMVpidUYwUGk2eTBBUXgzek5JYy9BemtZcE4rMnlnM0wvVTM5ZmVUeWZrQzZPSXppVCtsVzNIZkh1NzVhZ1VBVFZ2b2xIbFhjSXNnUUxCZmpiT3RhYTlnT1hDWG5lOXdVcEtESGx2SDAzYTZuRzFTazl4YktuOVhIU2xxRjhaV1FiTUphRElFVHY1SVkwcy9EWVMxYmJUOXU1S2U5b24vekZ6b252WE5saXpzVEVOc1E0NVcyQnNxc08vSXdDMzRGK3ZWeTEvMXZNWHVMdUhweEk5M0grS1FDclkwSmwvd2x2LzJ4T3hTWW1yeFQvV3JoenFkRldkTGdFMW5YL2gvd3pMRXM2L0kwZTFjbTdZdnl6WVdCSTVCRTZNNUd0MGxEZUNEUC9ycFJ2Tkl0ZTh1MVJCcGN3MDFMWTZ5VGRBd0pmY1hKSGV4KzVWOU1maThzbzJGL3EvdDFIZjRpQXFwRU5QTzN4d0hSNlVKdnZrT3FXbnpteVM4dzBBdVhWcThMR2VpLzFUV2lKV3JtWCs5Z0VJZXA4aTZJdkR5UHJFSDZoclpkVmVNeUVwWnZ5RUViSGtTM2huWThLL1UwUjZtMXRkeUhHaGJpR1hHVDN5Rk5FU0tKWGJtZy9malNJUW9GVS9NenZSYWlqVmFNUEJ1Uk1kcFZoSm5vdjlLM09WYnc0ZjJuOUc5YndwZUp2MjdZdlYyekxLUmRKb2xuYkVCandkb1RlSFVNd2NXODh3Zng2NFM1L1ZaSk1xN0ZGWm11Y1IyUVF3V0k0Z2VQZDJyODE0WU95WENRYTRUOGRpTGREdzlVYjlIWnQ5Y0RVdlY0bFp6QUJNSmZadjZGYkpOM0pKQVd3RHZQYjJWK2h4WHJ0N0FEUVFaeE05cXlMa3VZK1hyZHh6MXc0RWlpRFdKSTVvWXVqajk3OEErRVZWbzBGS1VvaEVCWFp6U3E5UGpHK01lZmpJM0ZxSkdEeTBFZ1ptR1JadnZIaHcydmxkcTZ4SzVqaEVyYzBJZUM3amd5WDV0RGs0NE9nbDJlTGVaREk3cWFySVRsdjBaa1hNdWVZWE1JVDFYazBkYkZxRE5YbmFxNzdxcXlwd3pZSSswTTlDdFVpczh5eTBoQXdkMlQ5VHl5bTdPcXRybHNDK0VPM3NSLzkxTHdManBzbDZXRmd5eWVRNUhsV01qUHlHU3VZamNnQ0phSE84T2tVRU1MOG1lVENJelFBc3BROXFLcVVZeHlpL1dpU1hlWFQwL3doWDVjZkpMVERxKzQzZ1RIVnJaaWp6ZVdEUjFUM1pVRGE0YnpOT3lkNHdqRHlxeitaN0hhN1BUcUhtbzFHMmd5Uy82UGNvaWxJMVdiaGR1WG1iaTFKK3JrVDFZVmpCTmRBWFIrYlNvbkdTQ2E5VjMrRkhybUhPN1MzOWFOeXBrWHZmeEdBcWhJeXBwWll1dGF2SWpPOXVtaXVTc0QzNWwzSDJ0alVhWDNpZHB1MTkwZkk2dGFpZVp3QXNxZ1RQSVE4WWpydDZuQTUwMnhOVVJiUmV6aW5kNTd6cTA4TG1hUWRqQkVscy9VQm9yVmxrK1F2THd0Q1Z2RFE4QzhXVGRlN2FTaHRXRHFKSjJVRGM2WEVPZHVqdUdNNFQ2UDZzWXpjaUhPb0ozUTFvUDhwNXJwSSt6WWNmcEUybXM1K3ZnSld4RVJFSzdqcjZzQXVmaDdjN1lKeUZDR291TWxPcUxKbE1HWlZGNzEyQnBYRzZTQ3NYa0JPR0E0enVqREpLcC9nTkMxUGE2K3lBZHNZSGFrSWJBT1F1S0pGellXVitVQXhSSkdDcXJOVU44Y25qNXFUakZXL3c5dGt2K3JqdEhvSDkweXN4MW42SlBoSnd0WkN4bGlZdnRPL0o0d3ZvM0dPN3IyODlrdUxOS24rZW1qM2YrS0ZPL2xVWHVBeERZWGtSVUgweUwrZU5QOEhDVkJnWmdvNnRlTS9vQjg3TGpmdmZKUjh1bWZCZ1dUTzk5U0VtbGxwVm5kdG9Cd3JYREh6aTlwamJPZ09CTllGVm1ONEtuS0VxNW4wTlhvUWZrWFJhaXZYaHJReU85Uno4b25DUnN5MXdpL2dJQVFvQnBuSXp1eFpCSzQrWjQzeDQvdnlZWHZ6SFB4YThJMmg5Z2ptZUcycEk4dmpwRTY1aExTeWpxWGNsdUpPMEdNKzh2VGFLZU15VFhzeXh4Q2xjS1pvcVZUZ0ZzcExVQlF6aDJPQTkxTmt5ei9nV25jOFdJYWlhWi9HNDk0cExndVFrMWVXMGgvM0RjUW9Ka1JrWTFjYlZhNmFUNXJST0NpNldxUTNHNWRBVTJpYjh5SEZhYVBzSk1pTFU5TTZJNkdRbDlPVTVISkJvVk0yMHE0UzhobjdWK0JGd3kwTmRwSE9oMkFpeFYweHBreFNRd3ZRL1ovUzlRTEdteUVMdkpUK1dGTzlOVmRXUTVwaGU1K3V6aVVYN2hIbXczbDNKVFNJSjM1VkVsTGtaVXhOMEdlMjRIYWx0LzNEOE0wZVZ6SFhDL3EwTFVhRWhLSkdQczRlNDI1SVhnNndUR2doTGpCU3pFV2JvbkVBdmYxcEVXTWFvUDI4cE9JSDEyYWwveFlnUEphZU9OTWxzYUl3M05OTkVGU2RpYzhRa05qalNsN2VpUDVYekoxNTBWT0hBeGNKakxLRXBDNGw2ZjNuVG5SVXZrV3U5QT0=", - "pin": "111111" - }, - { - "pubkey": "0281a5e8939fd42864dd8172e49040ddf633ae7e51e100e2e8031124c1fc81ceb6", - "routeHint": "037ec785c6004d512ebaeb0020f81a2bcdb6fccc9539f7b891f704289ebc65a4e3:2199023452161", - "alias": "virtualNode1", - "ip": "http://host.docker.internal:3004", - "external_ip": "http://localhost:3004", - "authToken": "D61EUMjild9adIE0X8pq", - "transportToken": "MIIBCgKCAQEAxnVZ6sgu482p4rHuOXm8vXt4U96p3LOwowkMSjmPFaML5eGa13TO\nE3cvjsVMLKHahamGCNaiOuKxbmKgvO7wdxqyi+18gt1Ziu4twm94noJ4sfREVjup\ni1vJgExjBOFzFg6w5Ezhgfd1Ft+shXZwstaxHzRypMjk9gw3G41fBGuySdU5gLnz\naxLDRHvLxHiKOIJECu3WTIWqS1lzGADObPoO7JyIKBTSX3hcHr9PMYHJqCNcHa34\nEGCldEsB+qCRrKDvc13bJd5U1peadUthJ3cYdMj+n14iJNkSa8PGu29N+OloOQLo\nQRRqAhBQSJV8F3c5Dn5mlUhBVPXTDdcAmQIDAQAB", - "contact_key": "MIIBCgKCAQEAuoZfr8R02CVQZCzkHSn2bNUWS43IjzSilU1mZ+9VPMrEU4lZ3TwKffl2Kh7Mxg+66frWgCQRaE9iY0z0TXlnaskHLI55dVR90x+IrN2kDmpOyjx1ppNuTeZ2tCt6oSsnZ4KmTxkScwZfBB+a0CLlhD4h8OgGKGDdav/HGUdksGBAD74f1uTIqZEifsoy4jlUWm/uDzNanQsxUW56WNje+3lProc6AY5iCszLslOAHX3pH8/bkPVS8d9H4szktnKT4/PwCa4eFE+qk5FLMzUulN06+U05uj0NqJmy6Yu+sWfZgM88nZFNhdBnF0C8/hizuWppTDy6hrW3nVlBqRONRwIDAQAB", - "privkey": "MIIEogIBAAKCAQEAuoZfr8R02CVQZCzkHSn2bNUWS43IjzSilU1mZ+9VPMrEU4lZ3TwKffl2Kh7Mxg+66frWgCQRaE9iY0z0TXlnaskHLI55dVR90x+IrN2kDmpOyjx1ppNuTeZ2tCt6oSsnZ4KmTxkScwZfBB+a0CLlhD4h8OgGKGDdav/HGUdksGBAD74f1uTIqZEifsoy4jlUWm/uDzNanQsxUW56WNje+3lProc6AY5iCszLslOAHX3pH8/bkPVS8d9H4szktnKT4/PwCa4eFE+qk5FLMzUulN06+U05uj0NqJmy6Yu+sWfZgM88nZFNhdBnF0C8/hizuWppTDy6hrW3nVlBqRONRwIDAQABAoIBAG8tXuVubNLU0ukS1NkJRQezrzlThmLNVcc2Pj7fKeg1V/YO3VB/1CUoRyVt/FJl19xVFfuFBBcvkg5sNQXkwh6lOjB1r7GerezkU9vttDafaN0kUl/6annmT4SukcZ06WTKPATTheqntoTHrcg3tKQxQJvOQLVanz+Cu5K2ui5h+eXDCVYhzLs3ZwJD3EEHgs3zTCpWV3EYW7Td3/5v2VJH0ljG7PEPDCgD02Z0RP7EXl2LourIUaqRgkAeWZLfzuUE5me4uY6BMMOUGRhJKPcENRieLzJ4GunuL33AxR26vAwDFAPbeyFxkxGQLItaX2Br6CBUNb5aEWRDOAMAwYkCgYEA95AtmCrBAmAVKkf8NeDhxiUj8GW48kXOkcBxKh7GuAioF6hB4TWPAsWh1m2onjeId3wzDxAQF/N1Y8pyEkhTmE+uT1Dcuc1jFPfsyFqACKNqDytI5YfDpgXWmS2nRC56sO7pe9nJs47t7IYCQEYafH1Li/XP/WonRVHm3qblEpMCgYEAwOGtfUOrVBDSWZn8hXuh1YpJ6aMKDjhzH6dC1y5tJIriVR/uw36o2emLEAtH0Qd/TYRGCKfNVwYgQBUtztMCiRIbfhNzxC+uNM64vMbuzEAmYgDj2CXerivJ90GdguqT6gZaRjpAO2knWlYVeysr71MQBG2CtlGEQebBLYl0Rv0CgYBRdvJqBnepDnEojrOiDzR8fbBL5U1s/Cezsr4KfEIsQTz/O/Eh6Pv8j4hoBYHdPqz7lLVAmaqSFx1kDzRma8KGdoIHu7ZGth2KwuL6Mz26mfvGrhm43mo1cepiUbGfMCRToOrYRJypJ7mHgbmv6OHCYYDAt80PuSTfHMp6LjVnXQKBgBdmidTLs+qEC/Eg9HkBUdYFbAgzZpHpGVZ6xWoz0LwBOYpYUHBZWoTth5iPtcvPXAt8g76jFQ98x8beiusvwHv+vWUjWQUxP7JabiFBBVG0arOzJfFgTs7UszETPdfXO9DFqoggoxBSJpsYHI0P5MmpSyUuYBBcfW49X6x1o6zFAoGAZCAw7xNQBbY8nZt2wLsyfa2+l7qwUMJOSuNMWM42Y8HGy3SJiO3Uu2XE4uZ1C7/5Wcu0Zbo9b7GDX6X8XfBrdIK2Tasv4CFfUBbTDyPxwzMZh7Hadh+u486s25HxNXXyGUUwHzUw2HJvFXHQxDiIVEeZo8gBPAUb/OU7eBpJrrE=", - "exported_keys": "a2V5czo6QXdHL3NJY1FuU3JadzByVjdvTi9CVEp2d2tiN1VkcmFDZ2VsbTEvRDBMSkJscWdtSHlSZ3lQZkt0NjA4TERzUlZUaTdydHorS01ZL3FlUGxyWktlL2dYOHQxeG5ieEJFbDkybGc3U3lBMVNHaXNON3BWOXcza3pWQVJNbkpBT245YUhNYnVybVcrUmhRblNNK2VPeUhWUGJIVUNYaTNhSmw5emdQQUlpLzBmeDZTNy9lMVRxVnRGK2xOWlRjbXo5UHlibzBreS9YNnRKNFVRMXoxVkYzNEhrMjRrb2VhYjhFNlRsUXZrL0x2bHlsNkp4RktjalJnSEgwV0o3VEdORXJHODFlc0lncDB0Zi91MDM3TnhybW5lR1hadzczalhpdlRnRWw4OHI3N0JYVHg3TGxJZFlGQk5oZWFUNVhWUmVTTE9memErK3dMRW5CbWRJRzJoQzREUG1pZnFqYWtRVzRMcnZnMmxNK3VFQ0o0enI3RUNnVkFBcE1wdjB1MzhuMVBiVDNvR1RMZzFGdjBPV3U5SE45VGhuMHFMbVd1eTNuUkoreUNTdEpWNFAza2U1Z3JWL2V4MHZRUVYwZ0RWMk5uVFFlVWdBTzBWR2dzWXJvaldFdVRaU2Qwb3ZVbnZQRUZiL3VlNHpJdzViSCtlYy95bXhFT0hXb3dKTUtjU2FhWTJXMVlDOUVYWDV2RHpPQlZ5ei9JdGQwM1c3blRnZHA3dUNBc3pHL282SUV6VDBqSXVLV3VIZzNRZi9oRVArdUVXeE5USmV3WnhFemE5SWVTZjIrbjNTOU9NbkhkWS9JSWxQQmVGT3EyMnJRQjYzWVN2RVAxdnB6VVkvMGdEZTZEekl0ai9pWEgyWGN5SGJUSHZHdk5wSW9scUxtMHlqWnVFVUZBWWxMaWxXQ0ZRTUpGYnJNYjE0QjI1aURVYWVNTWZGMzhvb2tGK1lNWHQ1djg2UGxQdWZ5TExORmtpTVgwb05adExWR2JXaWZ6Sjh5enc0UWZON293NzF3bTNyNnhzTWd2SW5PeGZPZ2cwV3dST3hFUXU5R21sdUxaSFRGdHg3Q0RGQTZpdlFRWGwzdkFGbXdsay9VRHRtS3M2RnRWMDREWmFKUHIrWXZMNFZ1S2t5R3FrWGIxL0ZIV3JHWmcwTE1FT2lNNDR4MldqUzl0UGR6cWVqaVV3MEpkMmZBZlhVMFlOQnZIb0tjakx5d1g5UC8zdGxQYWsxUzhmTURZNlJPUzhuZFJvZy9pRjluWFd3N3FXd09vcUpBc29DUEZ6ZithWjRSVFdVZ0luNTJaNkpjMEc4QmZ1dXYxaEtBRkh3aWxsMExCUnJzTDN1d3Y2YTRMTENPUitqVXAyNngzVTlrRnRNZWNKWGdlaDRoRHU4TmFXUVIydkI5cUdza0FkNG0zbXQrR0d6ckJsdjNGZy9aZTRvWms4S0ZacHUyNERYQkQvVFpzZEQwUlJleUhiK0E2Q1Q5UVY1ZDFoekR1TmxvZ1JtcEVnTjRndDlCMGxQUFhOS1pEZUJzWHhjUkdqTCtQczlFSFNtcnRnd2s5S1ZHdkFqMHA4UEVzMmxXVlZRVHdranZvQnZvM2N2STV3TDlVRG9HTDQyUXhaOXBva2RLSFlOdTdIVTFubU1pejBvV1UxSkMxdzU4cFU5UVlBYnkrR1F6U0gxenlVSktEYTladk1NWUllNUF1L1JXV0NGTXJnZzNzSFRpV0hxMDdQMXcyUWQxWkpNNk1aL1pZQW1abE5QYjZLengyWXhXaU1Oa2FvZE1VQlpnSmV2K1UwQ1ZtOTNjMEgvTlZYTDRjWllXUG1yb2FvUGM0djVTQ2huaWdFT2N3dXh4M2JWTkpnVlJ0NlR6K25yQ0tlVE9CbitnZVJiKzA1RGlvempPSTd6Zm44cXU4MXZidU8xM21LLzgycWl3U25vb01BZHpibHpMWHhpaXZRYXRWdzdHY3Z6RkpaQTQrYnR5OGZjWmFDdU8rVjBod2tYbUZVVS9SOW5KQmhmY0N4NGM3SXU3TEtBSkhrR0xIcVN0KzIxM1BmSWdkdFpwTFErZGR3RExFaUM4NVU5OEhXaFVlZTlMS2xja2o1aWhZMktlajZ3Q1FqNGNSVS9LL0srUktKNW9UT2xpQVlFWkRFdStMd1F4OUdGS2pIZ0pkN0EyQ3VLOGhCWHljRmxadktidWxzTzlIS0R4VWtUSUl1MkFIbkt6T0EyUi9lWmVLSE94Vk0zUDA5eEl6Y1ZyZlZmRHBFY0Fwak1zRGhaMFRacFQxZ0xITTJvREgyOFdtVDYyTEg0UGNQYkJ1WkpieDh2cGVBbkR4Nm1wdGxwd2wxMHBid1QySUhmMGl5cm9xMDBvb1ZRVm1rSENwSDhWcGRyY2pPZmtDMnVNWW0xVkFMNzVTQVlFT1A0LzlvWllHWE5RWEtieTdRSHVwV2VJTXlsSmhXVFk2b0RlQ0VtWmIwc0JmamxndUZLWWVUSVhrZ0FIN0g5emJ2VGxrNnQ4UXJlTG5tMlp4ZHV5NDQ3WU0zSDlJNHZMUkh5dEpwWlhtaTNKQ0JxNTBXSjBaM1Z1SUhSWXBUc2FkZi82RnNsbnp3MndPSkt0Z2d0Vk5ORlV0SXUvcm1DMGRZZHQvMHFjUTdPQUlkbURNWVZoNzRwMUNOcVFsVXhEWkMwK2hyTFVwU0RhVzFHMTBnTm5SM3VPZDQ1d3dBZVZaaWh5YTU3bUhRWmUwcjNjbnhkM1FwV21jcW55OHpwZjhNUWxIS3pIYnpWeHFpL0JvMXJiSDMvWFhOall2WFF5ZExOZ1E4V3pSR1ZCdHY4MDVuTndlb2QweVE0eHRlalNYTDdRbXhkZ2tmSUtCQkkzODRoSzgrZVN3blRhaFkwUDh5bk1TeTMvQWV5QUIwM3pFMkowSGhuVmVmTXJtMmNIdmlpa3puSEJ2Wk1URUtJVGhoQk55MDRlTmhZcnU5Z1QyTkNCOFN1QW5veldpNXc2aDVLUktQOFp0aytITm5NN1dQT1VESXByL3BPWENuUzRPNWd2dXdvOUM4eWJDS2JiUkRNUWVaYmRZM3dvMGFiTEErTEFjTnEySExlcDJhaEZmclZUdG1jaDVJNy9FM2d5Y1dpcklXWnBYcDgyWUIyNkJTR2d1N2EzT3dSaG05elUxcUc4YjdRdkVycmNQdTB4OHhuemNsc1pMdXBTaWhCOHgxODBqajFpU2RkVjh6ODNrR0Q2VDdvOC9iQ1l5R0w4Mys5QVRMa1pLVlB6ZXBQa1RxSHBOTVFjOEJONkxRb2VvN2Fyb1g4dUpWSkF0bCtRT3BDZ3lpcE83c0Q5L3JlQVIwRWdwTnIybFJFaGo0c2w1b2Y4b2pQZXoyQ1pMT2lpcU5PNFRDV25lczFteks5UUVYVUZUenpCMmZGblRzbGxSN0Jtb29OLzZjRFF1TFB2ZlNJY1FOR2xaN3V3U0VKK1FZQU9HdDhjeEFSODFNa1BoRTJSemxFY25DQndiOG51YlJBVGp0QlBRcWlXNlIrSHZ5NjVsSnBha0JvTXViMmhjT3NhSjlmTUpkbCt2ZFZoUFhmQUlWekdlcDBtckJnWDQvNlIxc2JHbVZyMXBIWitmK1grVFFOZEpPc01mdVVyVUN6Vkk5eXJnOEtqUSt0d0JaeUNxQm8weDN0QjlGcU9Lcz0=", - "pin": "111111" - } -] +[] From 10b0ee5531773e628523b3b12e556175a9a62f50 Mon Sep 17 00:00:00 2001 From: Oluwatobi Bamidele Date: Thu, 22 Feb 2024 23:01:36 +0100 Subject: [PATCH 25/25] chore: deleted my test e2e file --- .github/workflows/e2e-test.yml | 91 ---------------------------------- 1 file changed, 91 deletions(-) delete mode 100644 .github/workflows/e2e-test.yml diff --git a/.github/workflows/e2e-test.yml b/.github/workflows/e2e-test.yml deleted file mode 100644 index 3ae655621..000000000 --- a/.github/workflows/e2e-test.yml +++ /dev/null @@ -1,91 +0,0 @@ -name: Cypress E2E Tests - -on: - pull_request: - branches: - - master - -jobs: - cypress: - name: Cypress - runs-on: ubuntu-latest - - steps: - - name: Enable docker.host.internal for Ubuntu - run: | - pwd && sudo bash -c 'echo "172.17.0.1 host.docker.internal" >> /etc/hosts' - - - name: Checkout Repository - uses: actions/checkout@v2 - - - name: Setup Node - uses: actions/setup-node@v3 - with: - node-version: 20 - - - name: Clone Stack - run: | - git clone -b feat/second-brain-compose https://github.com/stakwork/sphinx-stack.git stack - - - name: Give Permissions to Sphinx Nav Fiber - run: pwd && ls && chmod 777 -R relay - - - name: Give Permissions to Sphinx Tribes Frontend Cypress - run: chmod 777 -R cypress - - - name: Give Permissions to Stack - working-directory: ./stack - run: | - chmod 777 ./bitcoind; - chmod 777 -R ./relay; - chmod 777 -R ./lnd; - chmod 777 -R ./proxy; - chmod 777 -R ./cln; - - - name: Check for NODES - uses: nick-fields/retry@v2 - with: - timeout_minutes: 10 - max_attempts: 3 - command: | - GITACTION_ENV=gitactionenv docker-compose -f ./stack/alts/navfiber.yml --project-dir ./stack up -d; - sleep 240; - docker ps - docker logs meme.sphinx - docker logs dave.sphinx - docker wait stack_relaysetup_1 - cat stack/relay/NODES.json; - - - name: Copy Node.json - uses: canastro/copy-file-action@master - with: - source: "stack/relay/NODES.json" - target: "relay/nodes.json" - - - name: Copy Node.json 2 - uses: canastro/copy-file-action@master - with: - source: "stack/relay/NODES.json" - target: "cypress/fixtures/nodes.json" - - - name: Install Frontend Dependencies - run: yarn install - - - name: Start Server - run: yarn run start-e2e & - - - name: Run Cypress Test - run: | - sleep 100 - yarn run cy-run - - - name: Upload Cypress logs - if: failure() - uses: actions/upload-artifact@v2 - with: - name: cypress-logs - path: cypress/videos - - - name: Stop Stack - working-directory: ./stack - run: docker-compose down